配置刀具与开源厨师服务器时出错

时间:2012-11-08 21:41:49

标签: chef

当我尝试使用以下命令在AWS CentOS服务器中配置刀具时:

knife configure -i

这是输出:

Where should I put the config file? [/root/.chef/knife.rb] 
Please enter the chef server URL: [http://myserverurl.com:4000] 
Please enter a clientname for the new client: [jim]  
Please enter the existing admin clientname: [chef-webui] 
Please enter the location of the existing admin client's private key: [/etc/chef/webui.pem] 
Please enter the validation clientname: [chef-validator] 
Please enter the location of the validation key: [/etc/chef/validation.pem] 
Please enter the path to a chef repository (or leave blank): 
Creating initial API user...

这是错误:

ERROR: Server returned error for http://myserverurl.com:4000/clients, retrying 1/5 in 4s
ERROR: Server returned error for http://myserverurl.com:4000/clients/jim, retrying 1/5 in 3s

更新

我还试着看看/root/.chef/knife.rb,这是文件的内容:

log_level                :info
log_location             STDOUT
node_name                'jim'
client_key               '/root/.chef/jim.pem'
validation_client_name   'chef-validator'
validation_key           '/etc/chef/validation.pem'
chef_server_url          'http://myserverurl.com:4000'
cache_type               'BasicFile'
cache_options( :path => '/root/.chef/checksums' )

文件/root/.chef/jim.pem不存在,是自动生成还是我应该创建它。

3 个答案:

答案 0 :(得分:1)

登录厨师服务器Web UI并创建客户端。在窗口中,它将显示一个“一次性”私钥,您需要将其复制到相应的〜/ .chef / client.pem文件中。

看起来它正在尝试登录并为您执行此操作并失败。

答案 1 :(得分:0)

我遇到了确切的问题。但是我按照这个documentation解决了这个问题。

此外,你可能在这里犯了另一个错误,当你运行命令安装厨师时,它会要求你提供一个厨师服务器网址。我在那里犯了一个错误。

如果您使用的是Amazon EC2,则主厨服务器网址为http:// <your FQDN>:4000

请检查您是否正确执行此步骤。是的,你的FQDN不是公共dns。运行hostname命令,你会得到一些ip:12-23-344-32。这是你的FQDN

希望这有帮助。

答案 2 :(得分:0)

由于某种原因,Chef solo没有启动rabbitmq:

sudo service rabbitmq-server restart