修复Nutanix集群在硬件维护后“NGT CA Setup Check”检查项不通过的问题
问题描述
在对Nutanix集群中的主机进行硬件维护,或者集群扩容节点之后,执行NCC检查会报如下错误:
FAIL: /home/ngt/ca.tar does not have the same checksum on all CVMs.
此CA文件存储了NGT(Nutanix Guest Tools)服务与集群通信用的密钥。如果每个节点CVM上存放的密钥不一致,会导致发起虚拟机迁移时NGT服务停止工作,进而影响到虚拟机一致性快照功能。硬件信息的变化会使集群重新生成CA文件,但存在CA文件部分同步失败的情况,因此产生了MD5值不一致。
解决方法
1. 检查所有CVM节点上/home/ngt/ca.tar
文件的大小及MD5值:
$ allssh 'sudo ls -lat /home/ngt/ca.tar' $ allssh 'sudo md5sum /home/ngt/ca.tar'
2. 定位NGT服务主节点:
$ nutanix_guest_tools_cli get_master_location
3. SSH切换至主节点上。
4. 将该CVM节点上的ca.tar复制到其他节点的/tmp
目录下:
$ for i in $(svmips); do sudo scp /home/ngt/ca.tar nutanix@$i:/tmp/ ; done
5. SSH切换至MD5校验不一致的CVM节点上。将原文件删除并用新文件替换,然后调整相应目录权限:
#切换至root账户 $ sudo -i #删除原CA文件 $ rm -rf /home/ngt/ca.tar $ rm -rf /home/ngt/ca #使用新CA文件替换 $ cp /tmp/ca.tar /home/ngt/ $ cd /home/ngt $ tar xvpf ca.tar #目录权限调整 $ chmod 600 /home/ngt/ca.tar $ chown ngt:ngt /home/ngt/ca.tar $ chmod 700 /home/ngt/ca $ chown -R ngt:ngt /home/ngt/ca
6. 调整完毕后重新执行NCC检查,确认NGT CA Setup Check
检查项是否为Pass:
$ ncc health_checks system_checks ngt_ca_setup_check
— END —