成功后自举与厨师节点我得到这些错误[http://pastebin.com/BEgNh2mm][chef-client/server错误.
发生的初始错误如下
(来自服务器日志的片段):
merb:chef-server(api):worker(端口4000)〜开始请求处理:2008年8月8日星期三19:04:32 +0200 2012 merb:chef-server(api):worker(端口4000)〜参数:{"name "=>"devhouse","controller"=>"clients","action"=>"create","admin"=> false} merb:chef-server(api):worker(端口4000)〜 Connection reset by peer - (Errno::ECONNRESET)
(来自客户端STDOUT的片段)
[2012-08-08T19:47:57 + 02:00]信息:*厨师10.12.0* [2012-08-08T19:47:57 + 02:00]信息:客户端密钥/etc/chef/client.pem不存在 - 注册[2012-08-08T19:47:58 + 02:00] INFO:HTTP请求返回409冲突:客户端已存在[2012-08-08T19:47:58 + 02:00] INFO:HTTP请求返回403禁止:您不被允许采取此行动.[2012-08-08T19:47:58 + 02:00]致命:Stacktrace转储到/var/chef/cache/chef-stacktrace.out [2012-08-08T19:47:58 + 02:00]致命:净:: HTTPServerException:403"Forbidden"
从上面的错误我唯一可以推断的是客户端无法与服务器通信,但是,令人难以置信的是,客户端能够以某种方式向服务器注册导致执行knife client list显示客户端列表中的哪个字段但是客户端的更新尝试失败了403 "Forbidden"
Chef常见错误似乎没有任何此类行为的记录.
isa*_*awk 10
问题分为两部分:
连接由同行重置 - (Errno :: ECONNRESET)
HTTP请求返回409冲突:客户端已存在且FATAL:Net :: HTTPServerException:403"Forbidden"
第一个问题,我能够缩小到厨师无法与rabbitmq沟通,似乎在线上的所有设置都被删除了.
第二个问题,在我的调查过程中(我相信这可能在某处记录)很明显,在客户端生成client.pem文件之前,厨师通过rabbitmq在couchdb中存储pem信息.由于问题1导致该流程未完成,因此创建了客户端,但缺少身份验证信息.
解