我在虚拟机上创build了一个厨师服务器(192.168.0.21)。 服务器在https上运行良好(这是opscode站点的最后一个版本)。
knife user list (和其他列表命令)运行良好,返回正确的结果(所有的用户/节点/客户端,新用户显示就好了)。
当我试图上传一个食谱到服务器,我得到这个错误:
networking错误:getaddrinfo:名称或服务未知检查您的刀具configuration和networking设置
或者这个更长的错误:
错误:networking错误:getaddrinfo:名称或服务未知检查您的刀具configuration和networking设置/opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:763:
initialize': getaddrinfo: Name or service not known (SocketError) from /opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:763:in打开'从/opt/chef/embedded/lib/ruby/1.9.1/net /http.rb:763:inblock in connect' from /opt/chef/embedded/lib/ruby/1.9.1/timeout.rb:69:intimeout from /opt/chef/embedded/lib/ruby/1.9 .1 / timeout.rb:100:在/ opt / chef / embedded / lib / ruby中timeout' from /opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:763:in连接timeout' from /opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:763:in/1.9.1/net/http.rb:756do_start' from /opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:745:in开始/从/ opt / chef /embeddeddo_start' from /opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:745:in/lib/ruby/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/request.rb:172:intransmit' from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/request.rb:64:in执行'from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/rest-client-1.6 0.7 / LIB / restclie nt / request.rb:33:inexecute' from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/resource.rb:76:in把/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.8.0/lib/chef/cookbook_uploader.rb:153:inblock in uploader_function_for' from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.8.0/lib/chef/cookbook_uploader.rb:25:incall from /opt/chef/embedded/lib/ruby/gems/1.9.1/ gem / chef-11.8.0 / lib / chef / cookbook_uploader.rb:25:block (3 levels) in setup_worker_threads' from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.8.0/lib/chef/cookbook_uploader.rb:24:inloop“from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.8.0/lib/chef/cookbook_uploader.rb: 24:在'setup_worker_threads'中的块(2级)
knife.rb文件:
log_level :info log_location STDOUT node_name 'dony' client_key '/home/dony/.chef/dony.pem' validation_client_name 'chef-validator' validation_key '/home/dony/Documents/cd/cv.pem' chef_server_url 'https://192.168.0.21' syntax_check_cache_path '/home/dony/.chef/syntax_check_cache' cookbook_path [ "/home/dony/Documents/chef" ]
由于其他命令到服务器正在工作,我不能把我的手指在这个问题上。
看来这是服务器故障。 服务器端FQDN应设置在服务器端。
/etc/hostname ,例如yourhost.dyndns.org hostname -F /etc/hostname 就这样
你可能会遇到一个奇怪的错误在厨师或它的底层库,rest客户端。
在厨师11.10.alpha,这可能已经被replace/固定 。
您也可以尝试在knife.rb指定实际的端口,如下所示:
chef_server_url 'https://192.168.0.21:443'
这可能会帮助当前的库正确解释位置。