<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>配置同步 :: NJET文档</title>
    <link>https://docs.njet.org.cn/docs/v4.0.1/reference/cluster/config_sync/index.html</link>
    <description></description>
    <generator>Hugo</generator>
    <language>zh</language>
    <lastBuildDate>Fri, 15 Aug 2025 10:43:26 +0800</lastBuildDate>
    <atom:link href="https://docs.njet.org.cn/docs/v4.0.1/reference/cluster/config_sync/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>配置信息同步</title>
      <link>https://docs.njet.org.cn/docs/v4.0.1/reference/cluster/config_sync/config_sync/index.html</link>
      <pubDate>Fri, 15 Aug 2025 10:43:20 +0800</pubDate>
      <guid>https://docs.njet.org.cn/docs/v4.0.1/reference/cluster/config_sync/config_sync/index.html</guid>
      <description>1.功能描述 主备节点能够实现动态配置的同步。主节点通过动态配置接口（声明式api或者命令式api）动态更新配置，然后backup节点能够及时同步这些配置。主节点宕机，backup节点动态更新配置，再主节点重新起来后，也能够及时同步更新的配置。最终保证主备节点都能够保证彼此配置的最新同步。&#xA;2.依赖模块 njet.conf :&#xA;helper broker modules/njt_helper_broker_module.so conf/mqtt.conf; 3.配置样例 broker进程配置如下（master 和backup 节点相同配置）：&#xA;#配置主节点监听端口和ip listener 1883 192.168.40.158 #配置本地socket地址，用于本地worker进程通信 listener 0 /home/njet/test_hamma/data/mosquitto.sock #全局log配置 log_dest file logs/mosquitto.log log_type debug log_type information log_type error log_type warning log_type notice #全局其他配置 allow_anonymous true #允许匿名访问，后面的unix socket listen需要 persistence true autosave_on_changes true autosave_interval 1 persistence_location /home/njet/test_hamma/data/ #持久化数据路径 #配置bridge（固定的名字bridge-backup），inactive一定设置，初始启动的时候实际不进行连接 connection bridge-backup inactive address 192.168.40.158:1883 #配置bridge ip，此处配置为本节点ip即可，初始化配置使用 topic /dyn/# both 0 topic /ins/# both 0 njet.conf (master 和backup 节点相同配置）：&#xA;helper broker modules/njt_helper_broker_module.so conf/mqtt.conf; helper ctrl modules/njt_helper_ctrl_module.so conf/njet_ctrl.conf; load_module modules/njt_agent_dynlog_module.so; load_module modules/njt_http_dyn_bwlist_module.so; load_module modules/njt_dyn_ssl_module.so; load_module modules/njt_http_vtsc_module.so; load_module modules/njt_http_location_module.so; cluster_name njet; node_name node158; worker_processes auto; error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; access_log off; server { listen 8100; location / { root html; } } } stream { server { listen 238.255.253.251:5557 udp; gossip zone=test:1m heartbeat_timeout=100ms nodeclean_timeout=1s local_ip=192.168.40.158 ctrl_port=8088 bridge_port=1883; } } 4.调用样例 4.1 声明式api-主节点更新消息，backup节点同步消息 主节点修改配置信息：</description>
    </item>
    <item>
      <title>文件同步</title>
      <link>https://docs.njet.org.cn/docs/v4.0.1/reference/cluster/config_sync/file_sync/index.html</link>
      <pubDate>Fri, 15 Aug 2025 10:43:26 +0800</pubDate>
      <guid>https://docs.njet.org.cn/docs/v4.0.1/reference/cluster/config_sync/file_sync/index.html</guid>
      <description>1.功能描述 能够配置监控多个目录下文件变化；slave节点同步master节点的文件；新节点上线或者感知到master变化，slave节点要主动向master节点进行一次全量同步(rsyn实际传输也只是变化的部分);master节点启动inotify监控，感知到文件变化，将变化消息通过mqtt topic通知到slave节点;slave节点收到文件变化消息，发起向master节点的一次同步连接&#xA;2.依赖模块 njet.conf:&#xA;helper broker modules/njt_helper_broker_module.so conf/mqtt.conf; helper rsync modules/njt_helper_rsync_module.so conf/rsync.conf; njet_ctrl.conf:&#xA;load_module modules/njt_http_ctrl_request_forward_module.so; 3.指令说明 rsync.conf 样例 :&#xA;{ &#34;log_file&#34;: &#34;logs/rsync.log&#34;, #指定日志输出文件 #可配置rsync 日志级别 &#34;log_level&#34;: &#34;info&#34;, #日志级别（如 debug、info、warn、error），控制日志详细程度 默认为 info #监控目录列表（不支持文件），必须为绝对路径 &#34;watch_dirs&#34;: [ { &#34;ignore_files&#34;: [ &#34;1.txt&#34;, #排除所有1.txt文件 &#34;tmp1/tmp11&#34;, #排除tmp1/tmp11目录 &#34;tmp1/*.doc&#34;, #排除tmp1/下所有.doc结尾的文件 &#34;tmp1/abc.*&#34; #排除tmp1/下所有abc.开始的文件 ], &#34;identifier&#34;: &#34;dir_name1&#34;, #监控目录标识，用于标识不同集群节点目录对应关系 &#34;prefix&#34;: &#34;/a/b&#34;, #必须是dir路径开始的前缀路径 &#34;dir&#34;: &#34;/a/b/c&#34; #必须是绝对路径 }, { &#34;identifier&#34;: &#34;dir_name2&#34;, #监控目录标识，用于标识不同集群节点目录对应关系 &#34;prefix&#34;: &#34;/e&#34;, #必须是dir路径开始的前缀路径 &#34;dir&#34;: &#34;/e/f/g&#34; #必须是绝对路径 } ] } 字段层级 字段名 是否必须 作用/为什么要配 如果不配会怎样 全局 log_file 是 指定 rsync 日志写到哪里 启动报错：找不到日志路径 全局 log_level 否 控制日志详细程度（debug/info/warn/error） 缺省 info，可运行但无法按需调级别 顶层 watch_dirs 是 声明需要监控/同步的目录列表 没任务可做 单条目录 dir 是 被监控的绝对路径 找不到目录，直接失败 单条目录 prefix 是 去掉公共前缀，生成 rsync 的相对路径 路径层级错乱，远端收到错误路径 单条目录 identifier 是 集群内统一标识，用于多节点目录映射 节点间无法匹配同一逻辑目录，同步失败或重复 单条目录 ignore_files 否 排除文件/目录的 glob 规则（–exclude） 不排除任何文件，全部同步 支持文件忽略配置（不参与同步）</description>
    </item>
  </channel>
</rss>