本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
排查 cfn-hup
未运行时的集群更新超时问题
cfn-hup
帮助程序作为一个进程守护程序,旨在检测资源元数据中出现的变更,并在检测到变更时运行用户指定的操作。这就是您通过UpdateStack
API操作对正在运行的 Amazon EC2 实例进行配置更新的方式。
目前,cfn-hup
进程守护程序由 supervisord
启动。但在启动后,cfn-hup
进程将脱离 supervisord
控制。如果 cfn-hup
进程守护程序因外部因素终止,它不会自动重启。如果cfn-hup
未运行,则在集群更新期间, CloudFormation 堆栈会按预期启动更新过程,但更新过程未在头节点上激活,堆栈最终会进入超时状态。从集群日志 /var/log/chef-client
中,您可以看到从未调用过更新食谱。
失败时检查并重启 cfn-hup
-
在头节点上,检查
cfn-hup
是否正在运行:$
ps aux | grep cfn-hup
-
在头节点上检查
cfn-hup
日志/var/log/cfn-hup.log
和/var/log/supervisord.log
。 -
如果
cfn-hup
未运行,请尝试通过运行以下命令进行重启:$
sudo /opt/parallelcluster/pyenv/versions/cookbook_virtualenv/bin/supervisorctl start cfn-hup