注册
三实例确认监视器小测试
技术分享/ 文章详情 /

三实例确认监视器小测试

dm_sunn 2026/05/09 81 0 0

–环境介绍:

192.168.1.111
192.168.1.222
192.168.1.123

确认监视器在以上三节点部署,111/222 部署达梦主备集群。

–1节点监视器配置
vi /home/dmdba/dmmonitor1.ini

MON_DW_CONFIRM=1
MON_LOG_PATH=/home/dmdba/monlog #监视器日志文件存放路径 
MON_LOG_INTERVAL = 60 ##每隔60s定时记录系统信息到日志文件
MON_LOG_FILE_SIZE = 32 ##每个日志文件最大32M
MON_LOG_SPACE_LIMIT =2048 ##不限定日志文件总占用空间
MON_INST_NUM=3 ##监视器实例数量

MON_HB_INTERVAL=60 ##通信心跳校验间隔
MON_BRO_INTERVAL=100 ##raft协议中实例通信心跳间隔
MON_VOTE_INTERVAL=100 ##raft协议中基础投票间隔 

MON_ID=1 ###监视器在监视器系统中的id
MON_NAME = MON1  #监视器名 
MON_MID=202605 ###监视器唯一标识

[GRP1] ###组信息
MON_INST_OGUID = 45335   ##组GRP1的唯一OGUID值
##以下配置为监视器到组GRP1的守护进程的连接信息,以“IP:PORT”的形式配置
##IP对应dmmal.ini中的MAL_HOST,PORT对应dmmal.ini中的MAL_DW_PORT
MON_DW_IP                = 192.168.1.111:52141  
MON_DW_IP                = 192.168.1.222:52142


[MON1]
MON_HOST=192.168.1.111 #MON1监视器所在IP 
MON_PORT=8339 ##监视器端口号
MON_INST_ID=1 ##监视器实例在监视器系统中的ID
MON_VOTE_PRIORITY=3 #监视器实例成为LEADER的优先级,数值越大,越优先

[MON2]
MON_HOST=192.168.1.222
MON_PORT=8339
MON_INST_ID=2
MON_VOTE_PRIORITY=2 #监视器实例成为LEADER的优先级 

[MON3]
MON_HOST=192.168.1.123
MON_PORT=8339
MON_INST_ID=3
MON_VOTE_PRIORITY=1 #监视器实例成为LEADER的优先级 

–对于2、3号节点,只需要将此配置文件分别拷贝,并分别修改 MON_ID 和 MON_NAME 字段,就能使用此配置文件进行启动。

–在使用配置文件启动多实例监视器实例之前,需要在3个节点先初始化联机日志文件。命令格式如下:

dmmonitor RAFT_FILE_PATH=/home/dmdba/monlog RAFT_FILE_SIZE=512 MON_MAGIC=20260508 MON_NAME=MON1 ##MON2、MON3

参数说明:
RAFT_FILE_PATH:监视器联机日志路径,需要与 dmmonitor.ini 中 MON_LOG_PATH
保持一致;
RAFT_FILE_SIZE:监视器联机日志文件大小,取值范围512~10240,单位MB;
MON_MAGIC:监视器联机日志文件魔数,参数范围0~4294967294;
MON_NAME:监视器实例名,需要与dmmonitor.ini中MON_NAME保持一致。

–小提示
多实例监视器暂不支持动态修改配置。多实例监视器节点成功启动之后,若需要调整配
置信息,则需要将当前多实例监视器集群中的所有监视器节点都退出,分别修改配置文件之
后再启动。若在此期间修改了配置文件中的组信息部分,则需要将老的联机日志文件删除,
并重新初始化联机日志文件,否则可能会导致监视器启动失败,或者多实例监视器集群无法
正常工作。

–命令

show state

2026-05-05 18:15:01 
#--------------------------------------------------------------------------------#
GET MONITOR STATE FROM MONITOR SYSTEM, THE FIRST LINE IS SELF INFO.
MON_BRO_INTERVAL: 100 ms, MON_VOTE_INTERVAL: 1000 ms

HP_FLAG FALSE

MON               MON_STATE      ID             MON_ROLE       MON_IP         MON_PORT       
MON1              ACTIVE         1              LEADER         192.168.1.111  8339           
MON2              ACTIVE         2              NOT LEADER     192.168.1.222  8339           
MON3              ACTIVE         3              NOT LEADER     192.168.1.123  8339           
#--------------------------------------------------------------------------------#


–只有在 LEADER 上才能执行命令
help
当前监视器不是leader,仅可以执行exit/exit all指令

–测试结论场景(供参考)
1、当 leader 节点故障后,优先级较高的节点成为 leader
2、当只剩一个节点存活时,将无法选举出 leader

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服