Chef infra 使用不同用户名和密码的厨师食谱

Chef infra 使用不同用户名和密码的厨师食谱,chef-infra,chef-recipe,Chef Infra,Chef Recipe,如果我有两个相同的服务器,服务器A和服务器B,它们都是测试环境。如何使用相同的厨师配方,但在每台服务器上使用不同的用户详细信息 例如: Server A Recipe WebSite to setup IIS, but uses: UsernameA PasswordA ... for the application pool 及 在我的环境中,我实际上有10个测试环境,我需要使用相同的配方配置所有测试环境,所有测试环境都具有唯一的用户名和密码。将数据导入Chef运行的两种主要方法是节点属性

如果我有两个相同的服务器,服务器A和服务器B,它们都是测试环境。如何使用相同的厨师配方,但在每台服务器上使用不同的用户详细信息

例如:

Server A
Recipe WebSite to setup IIS, but uses:
UsernameA
PasswordA  ... for the application pool


在我的环境中,我实际上有10个测试环境,我需要使用相同的配方配置所有测试环境,所有测试环境都具有唯一的用户名和密码。

将数据导入Chef运行的两种主要方法是节点属性和数据包项。在这种情况下,您可能需要后者,因为您要进行完整的雪花设置(即每个服务器都是唯一的)。我可能会使用节点的FQDN或节点名为每个服务器创建一个数据包项。然后,您可以从配方代码中访问它,如下所示:

item = data_bag_item('passwords', node['fqdn'])
template '/my/iis.config' do
  # Other stuff here ...
  variables username: item['username'], password: item['password']
end

您可以在任何厨师教程中找到有关数据包和
模板
资源的更多信息。

请不要在多个站点上交叉发布,邮件列表是解决此问题的更好地方。本简历旨在使用属性或数据包,因此与StackOverflow的主题无关,因为正在寻找教程。
item = data_bag_item('passwords', node['fqdn'])
template '/my/iis.config' do
  # Other stuff here ...
  variables username: item['username'], password: item['password']
end