我会很好的帮助。 我完全不理解,我应该如何使用Git版本控制系统在本地pipe理Node数据?
Exceprt从厨师文档: http ://wiki.opscode.com/display/chef/Nodes
knife node create foobar { "normal": { }, "name": "foobar", "override": { }, "default": { }, "json_class": "Chef::Node", "automatic": { }, "run_list": [ "recipe[zsh]", "role[webserver]" ], "chef_type": "node" }
我明白了,我可以在编辑器上通过刀在服务器上pipe理这些数据。 似乎有一个命令行选项本地厨师客户端(最有可能的JJSON_ATTRIBS)。 =>但是chef-client在本地运行,我需要将数据上传到服务器,然后这些节点属性需要被推送到客户端。 这是在更大的环境中唯一可行的解决scheme
但是如何用刀上传这个数据呢? 这似乎没有select? (只有刀编辑的选项似乎是存在的?)
感谢弗朗索瓦
厨师,节点是权威。 最好的做法是使用刀引导得到一个系统设置运行厨师,并与厨师服务器集成。
大多数节点属性数据由节点dynamic生成,当厨师客户端运行时 ,它使用ohai来发现关于它自己的信息。 其他数据可以来自食谱和angular色。 你的食谱和angular色应该存储在你的版本控制库中,通常称为Chef Repository 。
在本地存储节点的主要原因是捕获它们的运行列表。 我们build议您在存储库中有一个runbook文档(如README :),它描述了您拥有的服务器types以及它们的angular色。
我目前正在考虑如何跟踪存储库中对节点run_list的更改。 我唯一想到的就是为每个节点创build一个与节点同名的节点。 例如:
每当我们需要改变run_list,我们改变angular色,run_list保持不变。