Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Chef infra 如何对具有相同配方的不同节点具有不同的属性?_Chef Infra_Chef Recipe_Chef Solo - Fatal编程技术网

Chef infra 如何对具有相同配方的不同节点具有不同的属性?

Chef infra 如何对具有相同配方的不同节点具有不同的属性?,chef-infra,chef-recipe,chef-solo,Chef Infra,Chef Recipe,Chef Solo,我正在使用Chef Zero(或Chef本地模式),无法使用服务器。我有一本烹饪书,里面有我想要运行的默认食谱。在我的场景中,除了使用不同的属性外,我希望为每个搜索/节点多次运行该配方 配方的重要部分: keepalived_vrrp_instance 'inside_network' do state node['cookbookname']['state'] interface node['network']['default_interface'] virtual_router

我正在使用Chef Zero(或Chef本地模式),无法使用服务器。我有一本烹饪书,里面有我想要运行的默认食谱。在我的场景中,除了使用不同的属性外,我希望为每个搜索/节点多次运行该配方

配方的重要部分:

keepalived_vrrp_instance 'inside_network' do
  state node['cookbookname']['state']
  interface node['network']['default_interface']
  virtual_router_id node['cookbookname']['router_id']
  priority node['cookbookname']['priority']
  virtual_ipaddress node['cookbookname']['virtual_ips']
end

您可以为每个节点名称定义属性哈希(可以在属性文件或中定义):

然后您可以在配方中使用它:

keepalived_vrrp_instance 'inside_network' do
  state node["cookbookname"][node["name"]]["state"]
  ...
end
keepalived_vrrp_instance 'inside_network' do
  state node["cookbookname"][node["name"]]["state"]
  ...
end