我们的资源有限,希望我们的 qa 和 staging 环境位于一台机器上。
我们将为我们的应用程序和支持服务运行单独的二进制文件和配置文件。
根据 chef 文档,一台机器可以充当两个节点。但它没有解释如何做到这一点。
非常感激!
答案1
您需要使用替代配置来执行 chef 客户端。默认配置文件和目录是 /etc/chef/client.rb。您可以将其用于其中一个节点/环境。我们假设它将是“staging”。您可能应该确保节点和环境设置为正确的值:
node_name "mynode.staging"
environment "staging"
您可以为您的 qa 配置创建其他文件,例如 /etc/chef/qa/client.rb。为了避免冲突,您需要更改指向 /etc/chef 和 /var/chef 的 Chef 的各种配置值。
查看Chef 配置设置wiki 页面上有您可以修改的配置设置的完整列表。
您应该使用与暂存环境类似的 node_name 和 environment 值。运行 chef 时,请指定备用配置文件。
chef-client -c /etc/chef/qa/client.rb