在不同的端口上的厨师服务

Chr*_*len 7 chef-infra

我在防火墙后面的服务器上安装了一个厨师服务器11,即我必须为此服务器设置一些natting才能使用,因此服务器可以从外部在端口449上访问(而不是默认的443 https端口) ).现在我在我的工作站安装了厨师,并设置了刀.我将我的chef_server_url设置为https://blahblah.com:449(这是一个虚假的域名).现在我可以用刀连接到服务器,因为如果我运行类似'刀客户端列表'的东西,它确实给出了列表.但是,如果我想上传一本食谱,它不会这样做,看起来好像它试图连接到普通端口443上的chef_server_url:

h046n100:chef-repo chris$ knife cookbook upload hostname
Uploading hostname       [0.1.0]
ERROR: Network Error: Error connecting to https://blahblah.com/sandboxes/00000000000020ec9bdebdbdaff8b9ed - Operation timed out - connect(2)
Check your knife configuration and network settings
Run Code Online (Sandbox Code Playgroud)

任何想法,为什么它这样做,以及是否/如何可以告诉厨师使用端口449?

提前谢谢了!

小智 7

您必须创建或编辑/etc/chef-server/chef-server.rb并添加以下行:

nginx['ssl_port'] = 449
Run Code Online (Sandbox Code Playgroud)

然后运行:

sudo chef-server-ctl reconfigure
sudo chef-server-ctl restart
Run Code Online (Sandbox Code Playgroud)

请参阅文档.

  • 作为chef-server 12的FYI,配置文件现在是/etc/opscode/chef-server.rb.我在大约30分钟内搜索了它,但是在第一次发现你的答案.所以我虽然应该离开这里:)干杯 (2认同)

sla*_*fer 0

您可以尝试运行以下命令吗:

knife cookbook upload hostname --server-url https://blahblah.com:449
Run Code Online (Sandbox Code Playgroud)

如果这有效,那么您需要使用以下行更新您的 Knife.rb:

chef_server_url "https://blahblah.com:449"
Run Code Online (Sandbox Code Playgroud)