我已在 AWS EC2上的Ubuntu 14.04 上安装了主厨服务器,并附加了弹性IP 。然后我将该IP映射到我购买的DNS主机。
如果我使用https://mydnsname.com访问网站,我会获得主厨服务器页面并能够创建组织和所有内容。
我将chef-starter包下载到我的本地系统。
当我执行 $ knife ssl fetch
时,收到以下错误消息:
连接到主机mydnsname.com:443
错误:SSL证书由受信任的机构签名,但对给定的主机名无效 错误:您正在尝试连接到:' mydnsname.com'
错误:服务器的证书属于' ip-172-31-45-242.ec2.internal' *
$ knife ssl fetch
提供
警告:将获取mydnsname.com的证书并将其放在您的trusted_cert目录中(〜/ chef / chef-repo / .chef / trusted_certs)。
刀无法验证这些是正确的证书。您应该在下载后验证这些证书的真实性。在〜/ chef / chef-repo / .chef / trusted_certs / ip-172-31-45-242_ec2_internal.crt中为ip-172-31-45-242.ec2.internal添加证书
我为我的域名mydnsname.com生成了自签名证书,并将其放在/ var / opt / opscode / nginx / ca /目录*
我为我的域名mydnsname.com生成了自签名证书,并将其放在/var/opt/opscode/nginx/ca/
目录
但我仍然没有成功。
服务器上的 / etc / hosts 文件类似于
127.0.0.1 mydnsname.com chef
127.0.0.1 localhost
54.173.215.55 mydnsname.com chef
如何在我的本地计算机上使用域名和刀具在AWS EC2上配置厨师服务器?
答案 0 :(得分:1)
有一些事情要做。
第一个是用chef-server.rb
定义你在api_fqdn
中使用的名称
chef-server.rb
属性,因为它驱动nginx配置。
有关chef-server-ctl reconfigure
该文档并非详尽无遗,但您可以检查/opt/chef-server/embedded/cookbooks/chef-server/attributes/default.rb
使用的厨师 - 服务器烹饪书中所需的属性。默认值位于default['private_chef']['nginx']['server_name'] = node['fqdn']
(或可见here,只需删除chef-server.rb文件中的第一级属性,并使用下一个键作为对象。
即:
nginx['server_name'] = "mydnsname.com"
将在chef-server-ctl show-config
最后,您可以确保在使用{{1}}重新配置之前确保整个属性正常,这将打印从默认值更改的值或为服务器计算的值。