使用 OpsWorks + Chef

Posted

技术标签:

【中文标题】使用 OpsWorks + Chef【英文标题】:Using OpsWorks + Chef 【发布时间】:2016-11-25 05:30:01 【问题描述】:

我是使用 Chef 的新手(我正在使用 OpsWorks)。 我正在尝试使用 Jenkins Cookbook。 (https://github.com/chef-cookbooks/jenkins) 自动部署 Jenkins。

我使用了主配方并且已经安装了 Jenkins。 如何自动执行其他任务(例如设置 SSH 密钥)。 我是否需要克隆 Jenkins Chef 存储库并创建其他配方(使用资源/提供者)来自动化这些任务?

【问题讨论】:

【参考方案1】:

大多数社区食谱都不是为 OpsWorks 设计的。我不会说 OpsWorks 是“不受支持的”,但它与“普通厨师”是完全不同的野兽,因此您必须弄清楚如何适应事物。一般来说,OpsWorks 不再为您管理提取自定义说明书(它曾经是一项功能,但由于未知原因被删除),因此您需要处理销售说明书并将其应用到节点。

我们不建议新的 Chef 用户从 OpsWorks 开始,因为他们的文档通常乏善可陈且支持资源有限。

【讨论】:

好的!但如果我使用的是厨师。我是否需要构建其他收据(使用库/资源)来自动化 jenkins 部署?【参考方案2】:

是的,您需要创建自定义配方来配置您的 Jenkins 服务器可能需要的其他资源(例如 SSH 密钥)。 create a wrapper cookbook 并在包装器食谱的食谱中提供这些额外资源,而不是分叉 Jenkins 食谱和添加食谱。

【讨论】:

以上是关于使用 OpsWorks + Chef的主要内容,如果未能解决你的问题,请参考以下文章

使用 Chef + Berkshelf 在 OpsWorks 上运行 Python 时出错

无法在 AWS Opsworks 上使用 Chef 12 查找 Chef 社区食谱

Chef/OpsWorks:实例在新发布的 Windows 食谱版本上失败

OpsWorks / Chef PHP 部署流程

OpsWorks 部署错误 - Chef::Exceptions::ChildConvergeError

AWS Opsworks 中的 Chef 环境