六、cmp-ctl 运维工具

1. 命令概览

cmp-ctl --help
命令 用途
cmp-ctl status 查看基础设施和所有已安装插件状态
cmp-ctl start 按依赖拓扑启动全部服务
cmp-ctl stop 按逆依赖拓扑停止全部服务
cmp-ctl restart 按拓扑重启全部服务
cmp-ctl version 查看版本、安装路径和安装类型
cmp-ctl log 查看容器日志,默认 app-base
cmp-ctl inspection 执行单节点或 HA 巡检
cmp-ctl backUp 备份 CMP 数据库
cmp-ctl uninstall 卸载 CMP 及其专用 Docker 环境
cmp-ctl plugIn 管理服务插件

2. 查看状态

cmp-ctl status

状态输出分为 Infrastructure 和 Plugin。出现 ExitedRestartingunhealthy 时,应结合日志继续排查。

3. 启动、停止和重启

cmp-ctl start
cmp-ctl stop
cmp-ctl restart

这些命令会按 manifest 拓扑处理基础设施和业务服务,不建议使用 docker start $(docker ps -aq) 代替。

HA 的 node3 会自动识别仲裁角色,只启动 Redis、Redis Sentinel 和 RabbitMQ,不会拉起其他中间件或业务服务。

4. 查看日志

默认查看 app-base:

cmp-ctl log

查看指定容器:

cmp-ctl log --module app-gateway
cmp-ctl log --module app-frontend
cmp-ctl log --module vmalert
cmp-ctl log --module alertmanager

也可以使用 Docker 原生命令:

docker logs --tail 200 <容器名>
docker logs --since 30m <容器名>

应用持久化日志通常位于:

${CMP_INSTALL_ROOT}logs/cmp/<服务名>/

5. 查看版本

cmp-ctl version

示例输出:

Version: 5.0.0
Home: /cmp/
Type: middleware

Type: middleware 表示安装器底座类型,不表示整包中没有自动部署业务插件。

运维手册 | ZStack CMP · ZCF | ZStack 资源中心