CAM 2.1.0.2全新安装后cam-bpd-ui Pod启动失败求助
解决ICP上CAM 2.1.0.2安装后cam-bpd-ui Pod启动失败及MySQL复制表警告问题
我之前处理过不少CAM在ICP环境的部署故障,结合你给出的症状,这两个问题其实是关联的:MySQL缺失gtid_slave_pos表导致CAM依赖的数据库服务异常,进而让cam-bpd-ui服务无法完成初始化,最终触发就绪探针的404错误。下面是具体的解决步骤:
第一步:修复MySQL的gtid_slave_pos表缺失问题
- 先找到CAM使用的MySQL Pod名称:
kubectl -n services get pods | grep mysql - 进入MySQL Pod的终端:
kubectl -n services exec -it <你的-mysql-pod名称> -- bash - 登录MySQL命令行(需要输入数据库root密码,可通过CAM的secret获取:
kubectl -n services get secret cam-db-secret -o jsonpath='{.data.password}' | base64 -d):mysql -u root -p - 创建缺失的
gtid_slave_pos表,执行以下SQL语句:CREATE TABLE IF NOT EXISTS mysql.gtid_slave_pos ( uuid CHAR(36) NOT NULL, last_committed_transaction BIGINT NOT NULL, PRIMARY KEY (uuid) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; - 退出MySQL和Pod终端,然后重启MySQL Pod让配置生效:
(ICP会自动重建这个Pod,等待它进入Running状态)kubectl -n services delete pod <你的-mysql-pod名称>
第二步:重建cam-bpd-ui Pod并验证状态
- 确认MySQL Pod恢复正常后,查看cam-bpd-ui的日志,确认数据库连接问题是否解决:
kubectl -n services logs <你的-cam-bpd-ui-pod名称> - 删除当前异常的cam-bpd-ui Pod,让ICP重新部署一个新的实例:
kubectl -n services delete pod <你的-cam-bpd-ui-pod名称> - 等待几分钟后,检查Pod状态:
当Pod状态显示kubectl -n services get pods | grep cam-bpd-uiRunning且就绪探针(READY列显示1/1)通过,就说明服务启动正常了。
第三步:验证Process Designer UI可用性
访问ICP上配置的Process Designer UI地址,尝试登录,确认页面能正常加载且无登录错误。
额外排查点(如果上述步骤无效)
- 检查cam-bpd-ui的Deployment配置,确认数据库连接参数是否正确:
查看环境变量中的数据库地址、用户名、密码是否与CAM的数据库配置一致。kubectl -n services describe deployment cam-bpd-ui - 确认ICP的网络策略允许cam-bpd-ui访问MySQL服务:
确保没有阻止cam-bpd-ui与MySQL Pod通信的策略。kubectl -n services get networkpolicies
内容的提问来源于stack exchange,提问作者Gian Filippo Maniscalco
相关产品推荐
相关产品推荐

