首席厨师configuration

我开始在私人pipe理的客户端 – 服务器环境中采用厨师

我期望pipe理一个相当大的开放式访问实验室,用户桌面和各种types的服务器环境。 目前所有的系统都是基于nix的,但是我想创build一个允许灵活性并避免重复的结构。

其他人如何构build自己的环境? 我似乎无法解决的一个领域是重写或inheritance…例如,工作站将具有工作站angular色,其中包含的一个配方允许某个子集的用户login和使用该机器,但没有其他权限。 然后,我希望允许一小部分用户只在其中一个工作站上安装软件包。 厨师应该如何处理? 我通常只需要推送一个新的/ etc / sudoers文件,但这样做会导致厨师恢复到工作站sudoers,然后在每次运行时推送更新的版本。 我想在这种情况下我可以使用/etc/sudoers.d/,但是我觉得这个压倒一切的问题会在其他情况下出现,所以有些洞察力会很好!

我不认为我或我的团队已经充分了解了厨师是如何组合在一起的,因此我们可能错过了某些属性或元数据的工作方式,但目前我们还没有很清楚地看到。

只要有可能,使用“foo.d”解决scheme是可取的。 但是,当两个配方必须对相同的文件进行更改时,您需要select一个配方作为控制器,然后使用属性从模板生成文件。

您可以使用复杂的优先级scheme覆盖和设置配方,angular色,环境或节点configuration中的属性。 请参阅http://docs.opscode.com/chef_overview_attributes.html#attribute-precedence

对于pipe理sudoers,我会看看社区食谱http://community.opscode.com/cookbooks/sudo ,看看它是否会满足您的需求。