我的Client.rb文件看起来像下面提到的
On Node
cat client.rb
log_level :info
log_location STDOUT
chef_server_url "https://chef.my.com:443"
validation_client_name "mychef-validator"
environment "Rd-Staging" 和环境"Rd-Staging“都提到了下面的信息。
在Chef-workstation上:
knife environment show Rd-Staging
chef_type: environment
cookbook_versions:
apache-yum: = 0.1.0
default_attributes:
description: Rd-Staging
json_class: Chef::Environment
name: Rd-Staging
override_attributes:在那之后,每当我点击chef-client form node。node没有编译任何食谱,而我正在从Chef-workstation点击相同的chef-client,在相同的节点上编译相同的食谱。
无论如何,通过client.rb分配配方/角色都是可能的。我正在努力实现每当节点出现时,它都会在特定的环境下注册,然后运行环境专用的食谱。请记住,我不能更改first-boot.json,因为当时需要为不同的项目创建多个first-boot.json。
发布于 2014-12-23 15:06:13
您不能通过client.rb配置文件分配运行列表。一般来说,你也不应该这样设置环境,它主要是为了chef-solo。运行列表和环境数据位于Chef Server上的Node对象中。您可以通过knife node edit或Chef Server web界面编辑此数据。
更普遍的是,环境不能附加运行列表数据,只有角色和节点才能获得。
https://stackoverflow.com/questions/27615185
复制相似问题