vmware vCenter合用certificate-manager更新证书失败,错误lstool get failed,临时解决办法
该集群证书故障后,ssl证书和集群中其它证书不匹配,使用certificate-manager更新所有证书出错:lstool get failed,检查各服务日志,发现vpxd需要sps服务启动才能替换证书,而sps服务需要连接上vpxd才能启动,vpxd又因为ssl证书问题无法启动,进了死循环。
解决办法:打破僵局,手动植入证书
1.只启动基础服务:执行以下命令,停止所有服务,然后只启动管理身份和证书的底层服务。这是最关键的一步,让系统进入一个“维护模式”
service-control --stop --all
service-control --start vmafdd vmcad
vmafdd (VMware 认证框架守护进程):管理证书存储和身份认证。
vmcad (VMware 证书颁发机构守护进程):VMCA 的服务。
2.手动创建并植入“正确”的证书:
# 复制默认配置
cp /usr/lib/vmware-vmca/share/config/certool.cfg /root/machine.cfg
vi /root/machine.cfg
# 确保你的 FQDN 和 localhost 都在这里
Hostname = vsphere.hithinksoft.com <|im_sep|> localhost <|im_sep|> 127.0.0.1
# 如果有 IP 地址需求,也可以在 IPAddress 字段添加
IPAddress = 192.168.10.20 <|im_sep|> 127.0.0.1
Country = US
Name = YourCAMame
Organization = YourOrg
OrgUnit = YourOrgUnit
State = California
Locality = Palo Alto
生成新的机器 SSL 证书和私钥:
cd /root
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=machine.priv --pubkey=machine.pub
/usr/lib/vmware-vmca/bin/certool --gencert --cert=machine.crt --privkey=machine.priv --config=machine.cfg
替换 VECS 中的旧证书:
先确认旧的 __MACHINE_CERT 的别名,然后删除并创建新的。
# 删除旧的机器SSL证书条目
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT
# 创建新的条目,指向我们刚生成的文件
/usr/lib/vmware-vmafd/bin/vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert /root/machine.crt --key /root/machine.priv
3.重启所有服务:
现在基础已经打好,可以尝试启动所有服务了。
service-control --stop --all && service-control --start --all

浙公网安备 33010602011771号