<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Copilot介绍 :: NJET文档</title>
    <link>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/index.html</link>
    <description>NJet 中的 Copilot 是一套模块化辅助系统，通过独立进程协同工作，为 NJet 提供企业级高可用、动态配置管理、实时监控等能力。通过配置helper指令，实现装载不同的helper实现。从而实现不同的功能。目前的NJet的事件总线、控制平面集成接口都是通过其设置&#xA;配置说明：&#xA;copilot框架依赖helper指令:&#xA;指令说明：&#xA;Syntax helper tag so_file conf_file; Default — Context main 参数说明：&#xA;参数名称 是否必须 参数说明 tag 是 指定一个名字标签 so_file 是 so文件 conf_file 是 配置文件 ctrl（控制中枢） 动态配置管理 集群节点状态监控 服务启停控制 broker（消息代理） 进程间通信(IPC)枢纽 支持 MQTT/AMQP 等协议 请求/事件路由分发 ha（高可用模块） 主备节点心跳检测 自动故障切换(failover) 会话一致性同步 rsync（文件同步） slave节点同步master节点的文件 新节点上线或者感知到master变化，slave节点要主动向master节点进行一次全量同步 master节点启动inotify监控，感知到文件变化，将变化消息通过mqtt topic通知到slave节点 4.slave节点收到文件变化消息，发起向master节点的一次同步连接 goaccess（实时监控） 日志流式分析 生成实时流量仪表盘 异常行为告警 snmp（网管支持） 提供标准 SNMP 接口 使用各种机制（包括电子邮件、警报和陷阱）从远程位置配置和监控他们的网络</description>
    <generator>Hugo</generator>
    <language>zh</language>
    <lastBuildDate>Wed, 13 Aug 2025 15:18:31 +0800</lastBuildDate>
    <atom:link href="https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Ctrl</title>
      <link>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/ctrl/index.html</link>
      <pubDate>Wed, 13 Aug 2025 15:16:24 +0800</pubDate>
      <guid>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/ctrl/index.html</guid>
      <description>该模块是一个基础模块，给 http-sendmsg 和 http_health_check 等模块提供运行环境。&#xA;配置说明：&#xA;为了运行该模块，需要在主配置文件中进行配置：&#xA;helper ctrl objs/njt_helper_ctrl_module.so njet_ctrl.conf; 该模块自身的配置，即上面主配置文件中helper指令中指定的配置文件的内容。&#xA;配置的指令分为两类：&#xA;1）Njet中标准的指令；&#xA;需要注意：用 error_log 和 access_log 指令指定的log文件要不同于主配置文件中的log文件。 2）通过 load_module 指令加载的动态模块中扩展出来的指令&#xA;配置示例如下：&#xA;load_module /home/njet/modules/njt_http_sendmsg_module.so; load_module /home/njet/modules/njt_http_health_check_helper.so; user njet njet; error_log logs/error_ctrl.log info; events { worker_connections 1024; } http { dyn_sendmsg_conf conf/iot_msg.conf; access_log logs/access_ctrl.log combined; server { listen 8081; location /api { dyn_module_api; } location /doc { doc_api; } } }</description>
    </item>
    <item>
      <title>Broker</title>
      <link>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/broker/index.html</link>
      <pubDate>Wed, 13 Aug 2025 15:16:57 +0800</pubDate>
      <guid>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/broker/index.html</guid>
      <description>该模块提供消息服务端功能&#xA;配置说明：&#xA;要开启该功能需在njet.conf 的 main block 中修改如下指令：&#xA;helper broker /home/njet/modules/njt_helper_broker_module.so conf/mqtt.conf; 配置文件是可选配置，可以不指定，不指定文件或没有对配置项进行配置时，相关配置项将使用默认配置&#xA;注意:（rpm 和deb 包安装时，njet.conf 配置中默认是不带conf/mqtt.conf的）&#xA;mqtt.conf&#xA;配置项 必须修改 配置说明 log_dest 否 日志输出方法，一般配置为文件输出，配置值为file 文件名（绝对路径）默认： $PREFIX/logs/mosquitto.log log_type 否 日志级别： debug, error, warning, notice, information，mqtt库中的日志输出方式和java 中的不一样，配置了某个日志级别，只有该日志级别的消息才会输出到日志中， 因此需要为需要的日志级别单独配置一行。默认： error listener 否 监听端口及地址 , 默认： 0 $PREFIX/data/mosquitto.sock allow_anonymous 否 是否允许匿名连接，目前配置为true, 如果配置了客户端证书验证， 该配置项应设置为false persistence 否 是否开启消息持久化 （true, false), 默认： true autosave_on_changes 否 是否有消息时进行自动保存 默认： true autosave_interval 否 当自动保存开启时，当新消息个数大于这个配置值时，将触发保存操作 默认： 1800 persistence_location 否 持久化文件保存路径，将在该路径下创建 mosquitto.db , 默认： $PREFIX/data cafile 否 CA 证书名， 例如： /usr/local/njet/conf/cert/mqtt_ca.crt certfile 否 服务端使用的证书文件，例如：/usr/local/njet/conf/cert/mqtt_server.crt keyfile 否 服务端使用的证书key文件，例如：/usr/local/njet/conf/cert/mqtt_server.key require_certificate 否 配置客户端证书验证时，该配置项设置为 true use_identity_as_username 否 配置客户端证书验证时，该配置项设置为 true retain_expiry_interval 否 进程中retain 消息清理的时间间隔，该配置项设置为 1 (分钟） 样例：</description>
    </item>
    <item>
      <title>Ha</title>
      <link>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/ha/index.html</link>
      <pubDate>Wed, 13 Aug 2025 15:17:20 +0800</pubDate>
      <guid>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/ha/index.html</guid>
      <description>该模块通过vrrp协议提供多个njet实例的高可用功能。&#xA;VRRP 的相关介绍可以参见网页：&#xA;https://baike.baidu.com/item/%E8%99%9A%E6%8B%9F%E8%B7%AF%E7%94%B1%E5%99%A8%E5%86%97%E4%BD%99%E5%8D%8F%E8%AE%AE/2991482&#xA;配置说明：&#xA;要开启该功能需要在njet.conf 的 main block 中添加如下指令： njet配置文件增加：&#xA;helper ha /usr/lib/njet/modules/njt_helper_ha_module.so vrrp.conf; 基于从流水线上下载的压缩包：该模块需要依赖外部的so动态库，将 libha_emb.* 拷贝到 /usr/local/lib 目录下，执行下面命令,确认/usr/local/lib 目录已经配置到/etc/ld.so.conf(注意： 如果从源码编译 ，make install 阶段是会将 这个 libha_emb.* 自动拷贝到 /ullsr/local/lib ，无需执行下面命令 ) cp -a work/usr/local/lib/libha_emb.* /usr/local/lib 由于设置网卡vip , 需要一定的权限，njet 在非root 用户启动情况下，需要预先设置对应的权限 sudo setcap cap_net_bind_service,cap_net_admin,cap_net_raw+eip njet 生效配置 sudo ldconfig 增加vrrp.conf 配置文件说明：&#xA;配置项 必须修改 配置说明 vrrp_instance 是 设置的VRRP的实例名，string类型 state 是 设置当前节点的初始化状态，状态为MASTER或者BACKUP。 interface 是 可以绑定vip的接口名称，比如eth0,bond0,br0。 virtual_router_id 是 设置虚拟路由器惟一标识，范围：0-255，同属一个集群的多个njet节点该id相同, 不同的njet集群该值必须不同，务必要确认在同一网络中此值必须唯一。 priority 是 设置当前njet节点的优先级，范围：1-254，值越大优先级越高 virtual_ipaddress 是 设置虚拟IP对应的子网掩码。 配置样例：</description>
    </item>
    <item>
      <title>Rsync</title>
      <link>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/rsync/index.html</link>
      <pubDate>Wed, 13 Aug 2025 15:17:42 +0800</pubDate>
      <guid>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/rsync/index.html</guid>
      <description>该模块基于主从架构实现分布式文件同步：&#xA;多目录监控 - 通过 inotify实时监测 Master 节点多个目录的文件变化 智能同步触发 新节点上线：Slave 主动发起全量同步（rsync 仅传输差异） 变更感知：Master 通过 MQTT Topic 推送文件变化事件 按需增量同步 - Slave 收到消息后立即向 Master 发起同步请求，高效传输差异内容 配置说明：&#xA;要开启该功能需要在njet.conf 的 main block 中添加如下指令： helper rsync modules/njt_helper_rsync_module.so conf/rsync.conf; 文件同步的详细配置方法，请参考文档： 文件同步</description>
    </item>
    <item>
      <title>Goaccess</title>
      <link>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/intro-goaccess/index.html</link>
      <pubDate>Wed, 13 Aug 2025 15:18:14 +0800</pubDate>
      <guid>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/intro-goaccess/index.html</guid>
      <description>GoAccess 是 ​​终端优先、多格式输出、实时可视化​​ 的开源日志分析利器，为服务器监控提供轻量级闭环解决方案。 NJet 利用 Copilot 框架把 GoAccess 封装成Helper进程：日志实时流入、分析随实例热启热停，零配置即可在 Web 面板和 Prometheus 端点上直接查看流量全景。 配置说明：&#xA;本功能依赖njet.conf配置文件中的njt_http_access_log_zone_module.so和njt_helper_access_data_module.so：&#xA;helper access_data modules/njt_helper_access_data_module.so conf/goaccess.conf; load_module modules/njt_http_access_log_zone_module.so; 以及njet_ctrl.conf配置文件中的njt_http_sendmsg_module.so模块。&#xA;load_module modules/njt_http_sendmsg_module.so; goaccess的详细配置方法，请参考文档： 日志处理</description>
    </item>
    <item>
      <title>Snmp</title>
      <link>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/snmp/index.html</link>
      <pubDate>Wed, 13 Aug 2025 15:18:31 +0800</pubDate>
      <guid>https://docs.njet.org.cn/docs/v4.0.1/guide/copilot_introduction/snmp/index.html</guid>
      <description>SNMP=“Simple Network Management Protocol”=“简单网络管理协议”，应用层协议，传输层一般采用UDP. SNMP 协议使网络管理员能够使用各种机制（包括电子邮件、警报和陷阱）从远程位置配置和监控他们的网络。&#xA;配置说明：&#xA;conf/njet.conf 需要加载 snmp copilot&#xA;helper snmp modules/njt_helper_snmp_module.so modules/snmp.lua; snmp的详细配置方法，请参考文档： snmp</description>
    </item>
  </channel>
</rss>