【发布时间】:2015-10-24 06:46:17
【问题描述】:
我已阅读 Chef 文档并了解什么是食谱、食谱和 run_lists,但仍然很难决定如何将项目组织成食谱、食谱和 run_lists。
这些之间有什么概念上的区别,在什么情况下我会使用除了 1 个食谱和 1 个食谱之外的其他东西? (我在网上找到的大多数示例/教程只有 1 个食谱和 1 个食谱)
示例
我正在尝试制作一个 Chef 项目来启动并运行一个 web 应用程序。具体来说,我想:
- 安装 JDK 1.8、Tomcat 7 和 Postgres 9.3
- 使用特定数据目录启动 Postgres
- 配置 Postgres(创建数据库、创建超级用户等...)
- 将
context.xml文件放入Tomcat - 启动Tomcat
这些都应该写在一本食谱里吗?
这些步骤中的每一个都应该对应一个单独的食谱吗?
如果他们都进入 1 个配方,那么为什么 run_lists 有用?
免责声明:我主要考虑将 Chef 与 knife-solo 一起使用,所以我的困惑可能是由于描述典型部署的文档(例如,具有许多节点的主节点)而我只关心正在特定机器上运行我的食谱。
【问题讨论】:
标签: chef-infra knife-solo