
# 华为云CCE集群纳管GPU裸金属服务器由于CloudInit导致纳管失败的解决方案
#### 问题现象
创建出3台GPU裸金属服务器，使用A节点制作镜像，用于在CCE纳管裸金属服务器时，使用该镜像，但是纳管后发现服务器A纳管失败，剩下两台服务器纳管成功。
#### 原因分析
在CCE纳管过程中，需要通过cloudinit userdata机制拉取cce-agent，但是在服务器上查看没有拉cce-agent的动作，理论上该动作是cloudinit中的脚本在创建时自动执行的，可能是由于安装脚本没有注入userdata或者注入了但未执行。
经查看是由于userdata未执行，可能原因为服务器A制作镜像时没有清理残留目录导致，即：
镜像里面"/var/lib/cloud/instances"残留了制作镜像机器（后面称模板机）的实例ID信息，如果制作镜像不清理"/var/lib/cloud/\*"就会导致用该镜像再重装模板机时，cloud-init根据残留目录（含实例ID）判断已经执行过一次，进而不会再执行user-data里面的脚本。
而使用该镜像的服务器B和C，由于实例ID信息和镜像中残留的服务器A实例ID不同，就会执行user-data，所以CCE能纳管成功。
#### 处理方法
制作镜像前，清理"/var/lib/cloud/"目录下的所有信息，请参考[清理临时文件](https://support.huaweicloud.com/bpicg-bms/zh-cn_topic_0000001409069597.html#section1)步骤对文件进行清理，然后再制作镜像。CCE重新纳管服务器A时， 使用最新制作的镜像即可。
