Chef infra 如何使用数据库中的数据为多服务器环境构建CHEF

Chef infra 如何使用数据库中的数据为多服务器环境构建CHEF,chef-infra,Chef Infra,我是厨师方面的新手,我刚刚熟悉了正确的厨师基础知识,我正在尝试建立一个特定的配置 范例 导言: 有一个由10台服务器(服务器1、服务器2、ecc)组成的环境。。 假设它们是应用服务器,并且安装了应用程序 导言2: server1必须是1.1.1.1 server2必须是1.1.1.2 ecc。。 server1 application.conf中必须包含值AAAA server2 application.conf必须包含一个值BBBB ecc 问题: 工作站端 我有一个食谱示例[主机名] 我只有

我是厨师方面的新手,我刚刚熟悉了正确的厨师基础知识,我正在尝试建立一个特定的配置

范例

导言:

有一个由10台服务器(服务器1、服务器2、ecc)组成的环境。。 假设它们是应用服务器,并且安装了应用程序

导言2:

server1必须是1.1.1.1 server2必须是1.1.1.2 ecc。。 server1 application.conf中必须包含值AAAA server2 application.conf必须包含一个值BBBB ecc

问题:

工作站端 我有一个食谱示例[主机名] 我只有一本食谱[申请书] 都是带着钥匙夹的。。 现在。。。 我有一个数据库postgres,mysql,sqlite,whocare 使用表服务器,其中: Servername=server1 PrivateIP=1.1.1.1 PublicIP=100.1.1.1 应用程序\u text=AAAAA ...

问题:

是否有任何自动方法可以从数据库中获取值并将其与食谱一起使用


感谢

有很多方法可以实现这一点,最终都是通过组合cookboko属性、角色属性和环境属性来为特定节点设置节点属性。我们不能给你一个“像这样做”,因为这是非常主观的,取决于你的需要。据我所知,你的问题根本不需要数据库,它可以是一本定义服务器的食谱,每本食谱都是你桌子上的一行……你能:a-从等式中完全删除数据库B-从Chef中填充数据库,而不是数据库中的厨师长?@Tensibai是的,但我的目的是只有一本食谱。@MarcoGiusti这可能是个坏主意,因为你无法通过dev->Q/a->prod tunnel控制移动部件,即需要尽快在apache上更新,但app n+1已经在测试中,你不能跳过它。应用程序的唯一一个cookbook是ok的,在环境中或每个环境的包装器cookbook中具有特定的env值,覆盖默认值。但它的观点仍然是基于我从你的问题中了解到的,以及我从经验和厨师邮件列表历史中了解到的。@Tensibai你说得对,我将重新组织结构,谢谢!