gpt4 book ai didi

chef-infra - OpsWorks : How to set Chef environment?

转载 作者:行者123 更新时间:2023-12-01 01:04:37 24 4
gpt4 key购买 nike

使用 AWS OpsWorks ,您将如何设置环境(登台、生产等),这将应用于 node.chef_environment 属性,然后cookbooks 就能读取这个属性? (我想这可以使用自定义 JSON 来完成,对吗?)

我遇到了这个 link但是还是不知道怎么办。

Vagrant ,我可以像这样在 Vagrantfile 中设置它:

config.vm.provision :chef_solo do |chef|
...
chef.environment = "local"
...
end

谢谢你。

更新:

我最终通过写 my_environment_cookbook 解决了这个问题它的默认配方中只有此代码:
if node[:chef_environment] != nil
node.chef_environment = node[:chef_environment]
end

在 OpsWorks 堆栈的自定义 JSON 中,我有这样的内容:
{
"chef_environment": "staging"
}

然后我加入了 my_environment_cookbook在运行列表中,在我想要获取的食谱之前 node.chef_environment属性。

最佳答案

Amazon Opsworks 目前不支持 native Chef 环境。您可以在配方中手动设置节点的环境:

node.chef_environment = "environment_name"

由于 Opsworks 不会在 Chef Client 运行之间保留数据,因此每次运行说明书时都需要包含此配方。

您可以提取 "environment_name" 的值来自您想要的任何数据源:硬代码、数据包、节点属性等。

关于chef-infra - OpsWorks : How to set Chef environment?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19905431/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com