在厨师食谱中,如何根据角色分配erb模板

时间:2012-03-26 06:23:04

标签: chef

我是厨师的新手,我对以下内容有疑问。

我有两台服务器都使用nginx。唯一的区别是配置文件不同。我正在为nginx配置文件使用erb模板。

我想我在模板目录中需要一本带有两个erb文件的食谱。

所以,假设我有两个角色server1和server2,并且两者的运行列表都是nginx。

如何在使用角色1使用server1的配置文件时进行设置?同样适用于server2。

有关此主题的任何教程?

2 个答案:

答案 0 :(得分:3)

http://community.opscode.com/cookbooks/nginx的nginx食谱,为这个问题提供了理想的解决方案。

您只有一个食谱和一个配置模板。如果您需要自定义某些内容,请创建一个角色,然后只覆盖您角色中的属性。

还有一个定义(nginx_site),因此您可以使用它将站点放在同一个nginx实例中,使您可以根据需要维护任意数量的站点,而不会对整个nginx配置造成任何问题。

答案 1 :(得分:0)

定义服务器1&的角色服务器2.在该用途中,override_attributes或default_attributes。要使用它,您必须积极主动编写食谱。有关属性优先级的信息,请参阅以下链接中的优先级部分

http://wiki.opscode.com/display/chef/Attributes