启动服务与集群校验
启动服务与集群校验
启动 etcd 与 Clustermgr 服务
一键安装脚本完成配置后,etcd 与 Clustermgr 服务并不会自动启动,需要手工启动。三台节点都要执行:
systemctl start etcd
systemctl start clustermgr
如需开机自启:
systemctl enable etcd
systemctl enable clustermgr
演示中先在 etcd 未启动的情况下执行了 clumgrctl list,实际报错输出如下:
[halo@node1 ~]$ clumgrctl list
2026-06-30 11:21:32.174 - ERROR - Failed to get list of machines from http://192.168.221.136:2379/v3beta: MaxRetryError("HTTPConnectionPool(host='192.168.221.136', port=2379): Max retries exceeded with url: /v3beta/members?recursive=true (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x153dc05a970>: Failed to establish a new connection: [Errno 111] Connection refused'))")
2026-06-30 11:21:32.176 - ERROR - Failed to get list of machines from http://192.168.221.138:2379/v3beta: MaxRetryError(...)
2026-06-30 11:21:32.177 - ERROR - Failed to get list of machines from http://192.168.221.137:2379/v3beta: MaxRetryError(...)
^C
Aborted!
[halo@node1 ~]$ exit
logout
注意: 若先执行
clumgrctl list查询集群而 etcd 尚未启动,会报上述Connection refused(2379 端口未监听)错误,此为正常现象,启动 etcd 后即可恢复。
随后在 root 用户下启动两个服务,实际终端输出如下:
[root@node1 product]# systemctl start etcd
[root@node1 product]# systemctl start clustermgr
[root@node1 product]# clumgrctl list
-bash: clumgrctl: command not found
[root@node1 product]#
注意: root 用户下执行
clumgrctl会报command not found,因为 clumgrctl 所在路径配置在 halo 用户 的环境变量中,需先切换用户。
校验集群状态
切换到 halo 用户下,使用 clumgrctl list 查看集群状态:
su - halo
clumgrctl list
正常输出如下,三节点集群建立成功:
[halo@node1 ~]$ clumgrctl list
+ Cluster: halo-cluster (7657820793458699518) ------+----------+----------+------+-----------+
| Member | Host | Role | State | TL | Lag in MB |
+--------+----------------------+---------+-----------+-----+-----------+
| node1 | 192.168.221.136:1921 | Leader | running | 1 | |
| node2 | 192.168.221.137:1921 | Replica | streaming | 1 | 0 |
| node3 | 192.168.221.138:1921 | Replica | streaming | 1 | 0 |
+--------+----------------------+---------+-----------+-----+-----------+
[halo@node1 ~]$
说明: 首次部署完成时,部分版本输出中还会多出
Pending restart/Pending restart reason两列(如提示cluster_name变更待重启),属正常现象;重启 clustermgr 服务后即恢复为上表样式。
集群状态字段说明:
| 字段 | 含义 |
|---|---|
| Member | 节点名(node1/node2/node3) |
| Host | 节点 IP 与数据库端口 |
| Role | 角色(Leader 主库 / Replica 备库) |
| State | 状态(running 运行中 / streaming 同步中) |
| TL | 时间线(Timeline),主备一致表示数据同步 |
| Lag in MB | 同步延迟(MB),备库为 0 表示已同步 |
至此,Halo 一主两备高可用集群部署完成,应用可通过 VIP(192.168.221.140)统一访问集群。