我正在尝试设置chef-server和chef-client,以便在Openstack上运行的虚拟机上自动部署软件包。
我按照https://docs.chef.io/install_server.html上的说明操作。该软件包的版本是chef-server 12.0.8,位于ubuntu 14.04服务器(chef-server-core_12.0.8-1_amd64.deb)上。已经进行了多次尝试,总是使用干净的机器,并且总是具有相同的结果,即使是稍微更老的厨师服务器版本(12.0.3,我相信)。用户被创建,组织被创建。我还通过提供的install.sh脚本(12.3.something)直接从厨师网站拉了厨师客户。
症状:
knife ssl check
会返回成功,但是:
knife client list
返回HTTP错误404:
错误:找不到您要查找的对象 ...
抱歉,我无法找到您要找的内容。
如果我直接从服务器运行它,或者从另一台机器运行它没关系(刀引导也失败,所以我手动安装)。服务器(FQDN:chef.cluster.internal)可从所有计算机解析,这是用于client.rb / knife.rb的server_url。自签名证书随处可用。
来自chef-server机器的Nginx访问日志:
192.168.10.85 - - [15/May/2015:12:16:56 +0000] "GET /clients HTTP/1.1" 404 "0.001" 617 "-" "Chef Knife/12.3.0 (ruby-2.1.4-p265; ohai-8.3.0; x86_64-linux; +http://opscode.com)" "-" "-" "-" "12.3.0" "algorithm=sha1;version=1.0;" "ubuntu" "2015-05-15T12:16:56Z" "2jmj7l5rSw0yVb/vlWAYkK/YBwk=" 995
192.168.10.85 - - [15/May/2015:11:38:50 +0000] "POST /nodes HTTP/1.1" 404 "0.001" 617 "-" "Chef Knife/12.3.0 (ruby-2.1.4-p265; ohai-8.3.0; x86_64-linux; +http://opscode.com)" "-" "-" "-" "12.3.0" "algorithm=sha1;version=1.0;" "ubuntu" "2015-05-15T11:38:50Z" "5FBeTmym0Tm05estESshBGJrumI=" 1047
192.168.10.86 - - [15/May/2015:11:37:36 +0000] "POST /nodes HTTP/1.1" 404 "0.001" 617 "-" "Chef Knife/12.3.0 (ruby-2.1.4-p265; ohai-8.3.0; x86_64-linux; +http://opscode.com)" "-" "-" "-" "12.3.0" "algorithm=sha1;version=1.0;" "ubuntu" "2015-05-15T11:37:36Z" "5FBeTmym0Tm05estESshBGJrumI=" 1047
192.168.10.85 - - [15/May/2015:11:38:50 +0000] "PUT /nodes/dns-server HTTP/1.1" 404 "0.001" 617 "-" "Chef Knife/12.3.0 (ruby-2.1.4-p265; ohai-8.3.0; x86_64-linux; +http://opscode.com)" "-" "-" "-" "12.3.0" "algorithm=sha1;version=1.0;" "ubuntu" "2015-05-15T11:38:50Z" "5FBeTmym0Tm05estESshBGJrumI=" 1057
......等等。因此,服务器确实收到了请求,而chef-client建议我的chef_server_url可能无效,这是不正确的。
所有其他设置都保留为默认值。奇怪的是,我有两三个月前的老厨师设置,没有问题。
我没有想法。任何帮助都将受到欢迎并受到高度赞赏。
编辑1:
我刚刚将创建的用户证书和厨师nginx证书导入到上述刀具旧版安装中,并且我已成功运行knife client list
。因此,似乎本地版本包含/ organizations / orgname / nodes进入请求。为什么空白客户端上缺少这个?
答案 0 :(得分:0)
好的,所以我可以通过在旧服务器上生成的完整chef_server_url重新配置服务器上的knife和chef-client来取得进展。