我们正在运行puppet来pipe理我们的AWS实例,并正在从一个自定义的apt模块迁移到puppetlabs托pipe的apt模块。 一切似乎都很好,直到在puppet apply会议期间,傀儡进程只要我们愿意,就会在%100上。
我相信我已经把范围缩小到傀儡悬挂,而在apt模块中等待一些“响应”,但是我不能进一步弄明白。 我看到一些相关的错误和问题(如http://projects.puppetlabs.com/issues/12185#note-27 ),但我找不到一个好的答案。 任何帮助,将不胜感激。
我们在Ubuntu 10.10上运行puppet 2.7.20。 木偶apt模块版本是1.1.0。
根据要求,这是挂起之前的最后几行debugging代码:
debug: /Stage[main]/Kpython/Kpython::Pip_install[simplejson]/Exec[kpython_pip_install simplejson]: Autorequiring File[/mnt/tmp] debug: /Stage[puppet1]/Kbase::Users/Kbase::Users::Account[tfall]/File[/home/tfall/.ssh]: Autorequiring Group[users] debug: /Stage[puppet1]/Kbase::Users/Kbase::Users::Account[tfall]/File[/home/tfall/.ssh]: Autorequiring User[tfall] debug: /Stage[puppet1]/Kbase::Filesystem/File[/usr/local/krux/kbase]: Autorequiring File[/usr/local/krux] debug: /Stage[main]/Kvagrant/Kruby::Setup_gemset[kvagrant]/Kruby::Wrapper[kvagrant-irb]/Kutil::Symlink_bin[kvagrant-irb]/File[/usr/local/bin/kvagrant-irb]: Autorequiring File[/usr/local/bin] debug: /Stage[main]/Kvagrant/Kruby::Setup_gemset[kvagrant]/Kruby::Wrapper[kvagrant-irb]/Kutil::Symlink_bin[kvagrant-irb]/File[/usr/local/bin/kvagrant-irb]: Autorequiring File[/usr/local/krux/components/kruby/bin/kvagrant-irb] debug: /Stage[main]/Kpython/Kpython::Pip_install[boto]/Exec[kpython_pip_install boto]: Autorequiring File[/mnt/tmp] debug: /Stage[script1]/Kbase::Users::Finalize/Kbase::Users::Init_user[dbrans]/File[/home/dbrans/.ssh/known_hosts]: Autorequiring User[dbrans] debug: /Stage[puppet1]/Kbase::Users/Kbase::Users::Account[vsvaidya]/File[/home/vsvaidya]: Autorequiring Group[users] debug: /Stage[main]/Kvagrant/File[/usr/local/krux/components/kvagrant]: Autorequiring File[/usr/local/krux/components] debug: /Stage[main]/Kvagrant/File[/usr/local/krux/components/kvagrant]: Autorequiring Group[vagrant] debug: /Stage[main]/Kvagrant/File[/usr/local/krux/components/kvagrant]: Autorequiring User[vagrant]
这个傀儡运行级别的下一步应该是模块相关的。
这是strace的输出(ruby1.8.7和ruby1.9.1):
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
你在跑什么ruby? 这感觉就像这个问题 ,说这是FreeBSD,但事实certificate是一个ruby问题。