我正在做的工作:
- Debian Wheezy 7.6
- 厨师:11.14.6
到目前为止,我一直使用 node.name 来设置实例的主机名。示例:
{
"name": "web-01",
"chef_environment": "_default",
"normal": {
"tags": [
]
},
"run_list": [
"recipe[[email protected]]"
]
}
但是最近,从“name”键设置 node.name 停止工作。node.name 仍然是我的云提供商提供的主机名。在运行 chef-client、chef-solo 甚至 chef-shell 时都会发生这种情况。它似乎在我的 client.rb 中设置正确,但仍然没有 node.name 没有更新。我尝试使用该-N
标志运行,但仍然没有成功。
还有人遇到过这个问题吗?如何设置 node.name?或者说如何设置 node.name?
答案1
我发现,chef-client 中的属性设置与 chef-solo 不同。chef solo 喜欢 node[:name],而 chef-client 使用 node.name。如果有人知道原因,我将不胜感激。
if Chef::Config[:solo]
node[:name]
else
node.name
end