GaussDB(DWS)裸金属集群创建问题总结
问题背景
GaussDB(DWS)集群创建过程中涉及与周边很多服务对接,如BMS、VPC、IAM等,流程复杂,过程繁多,容易出错,本文介绍BMS集群在创建失败后如何快速获取创建失败的详细信息,从而快速恢复重试。
问题现象
在DWS页面创建BMS规格的集群后,页面显示创建失败,集群创建失败的详细原因在页面未显示,需要分场景详细排查定位。
场景一:管理租户密码被改
页面创建dws集群失败,创建失败进度大概为5%,页面报错信息为DWS.6000
登录rms数据库,执行select jobId from rds_instance where name like "%{clusterName}%";其中{clusterName}为集群名称,从rds_instance表中根据集群名查找jobId字段
进入dwscontroller容器中根据jobId获取集群创建失败日志信息,检查日志报错内容为createUserByManageTenant函数报错,在创建集群过程中,若当前租户没有对应资源租户,dws会在创建时创建对应的资源租户,创建时使用管理租户账号和密码,若管理租户密码被修改,会导致资源租户创建失败。
在获取到正确的管理租户密码密文后,需要修改如下几个地方:
dws管理面数据库中namespace表的trustDomainPwd字段;
dwscontroller容器中trustDomainPwd、dwsTrustDomainPwd、accessDnsUserPwd字段
dbsmonitor容器中opsvc.domain.password字段
dbsevent容器中opvc.domain.password字段
修改以上容器的参数后,在cdk master节点执行kubectl delete pod –n {dws|ecf} {podName}删除容器,等待容器重启生效。
场景二:BMS资源不足
页面创建dws集群失败,创建失败进度大概为30%,页面报错信息为BMS.****
登录ServiceOM页面,进入裸金属页面查看可用的BMS裸机是否满足需求,DWS集群最少需要3节点的BMS资源,若资源数量不足,会导致创建失败。
若通过ServiceOM页面检查BMS资源足够,则登录rms数据库,使用select jobId from rds_instance where name like "%{clusterName}%";在数据库中查询集群创建的jobId,进入dwscontroller容器中根据jobId获取集群创建失败日志详细信息,与BMS同事配合检查解决。
场景三:管理面与内大网不通
页面创建dws集群失败,创建失败进度大概为66%,页面报错信息为DWS.6000
登录rms数据库,执行sql select manageIp from rds_instance where name like "%{clusterName}%";从rds_instance表中根据集群名查找manageIp字段,进入dwscontroller容器尝试curl manageIp:12017。
若无法curl通,则登录ServiceOM根据集群名称查看虚拟机是否已经启动,若虚拟机状态正常,已经启动,对于DWS 8.0.1之前的版本,管理面和实例之间通信使用PEP,需要联系网络同事排查PEP和内大网的连通性。
场景四:集群建立互信失败
页面创建dws集群失败,创建失败进度大概为78%,页面报错信息为DWS.6000
根据job信息获取管理面集群创建报错信息,管理面job报错为 init失败,登录节点,检查/home/Ruby/log/cloud-dws-deploy.log文件中的报错信息,在日志中不断重复打印ssh的no route错误。
用高速网络通信的bms部署会因高速网络不通存在该问题,原因为在实例上的交换机vlan没放通导致,可由底层网络同事放通vlan即可
- 点赞
- 收藏
- 关注作者
评论(0)