使用 Eloqctl 管理集群
本文档将说明如何使用 eloqctl
管理 EloqKV 集群。
请确保集群已经配置完成。关于如何部署 EloqKV 集群,请参考部署集群。
检查集群状态
集群名称在配置集群时在配置文件中设置。默认集群名称是 eloqkv-cluster
。你也可以使用以下命令查看集群名称。
eloqctl list
预期输出将是:
+----------------+---------+---------+---------+-------+
| name | product | store | version | user |
+----------------+---------+---------+---------+-------+
| eloqkv-cluster | EloqKV | rocksdb | 0.7.4 | rocky |
+----------------+---------+---------+---------+-------+
使用以下命令查询集群状态:
eloqctl status ${cluster_name}
如果你在每个节点的输出中都看到Success
,那么集群运行正常。
启动集群
使用以下命令启动集群:
eloqctl start ${cluster_name}
使用以下命令启动特定的节点:
eloqctl start --nodes node1_ip:node1_port,node2_ip:node2_port ${cluster_name}
停止集群
- 正常关闭(Graceful Shutdown):以下命令将正常地停止事务集群和日志集群,这意味着内存中的所有数据都会在进程退出前刷新到持久化存储中。这样一来,下次启动集群的速度会很快,因为不需要重放重做日志(redo logs)。
eloqctl stop ${cluster_name}
- 强制关闭(Force Shutdown):你也可以通过添加 -f 选项来立即停止集群。该命令实际上会向所有事务进程和日志进程发送 SIGKILL 信号。
eloqctl stop ${cluster_name} -f
- 停止持久化存储(Stop Persistent Storage):当你部署了解耦的持久化存储(如 Cassandra)时,执行 eloqctl stop 并不会自动停止 Cassandra 集群。你需要添加 -a 选项,告诉 eloqctl 停止除监控组件外的所有组件。
eloqctl stop ${cluster_name} -a
- 停止监控(Stop Monitor):可以通过以下命令停止 Prometheus 和 Grafana
eloqctl monitor stop ${cluster_name}
- 如果集群部署时设置了密码,以上所有命令都需要添加
--password
选项。
eloqctl stop ${cluster_name} --password xxxxx