如何在 MacOS 中安装 chef 12 以部署到 AWS Opsworks?

Posted

技术标签:

【中文标题】如何在 MacOS 中安装 chef 12 以部署到 AWS Opsworks?【英文标题】:How to install chef 12 in MacOS for deployments to AWS Opsworks? 【发布时间】:2020-10-23 18:39:09 【问题描述】:

我想知道如何安装 chef 12,以便使用 Chef 12 堆栈将 Ruby on Rails 应用程序部署到 AWS OpsWorks。

食谱

https://github.com/nebulab/aws-solidus-demo-opsworks_cookbook.git

$ berks 安装 $ berks package cookbooks.tar.gz

** AWS Opsworks 部署错误**

[2020-07-03T04:21:10+00:00] ERROR: Cookbook 'deploy_resource' version '1.0.3' depends on chef version [">= 13.0"], but the running chef version is 12.18.31
[2020-07-03T04:21:10+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)

**我的 MacOS 本地环境中的 Chef 版本 **

$ chef --version
Chef Workstation version: 20.7.81
Chef Infra Client version: 16.2.73
Chef InSpec version: 4.21.1
Chef CLI version: 3.0.11
Test Kitchen version: 2.5.2
Cookstyle version: 6.9.0

$ chef-client -version                    
Chef: 12.18.31

提前致谢

【问题讨论】:

【参考方案1】:
    deploy 资源已从 Chef 14 核心中移除并提取到名为 deploy_resource 的食谱中。 该食谱的最新版本需要 Chef 13+(阅读错误)。 Chef 12 仍然在 deploy 资源中附带构建。

恕我直言:要么升级厨师,要么将食谱降级到旧版本。

请记住,Chef 12 很久以前就停产了。我不确定 OpsWorks 如何处理这个问题,但我建议升级到最新的 Chef 16(或 cinc.sh,社区版本)

【讨论】:

谢谢,由于 Chef 12 已停产,我将放弃这项任务,或许等到 AWS OpsWorks 为最新版本的 Chef 提供支持。 我很确定 OpsWorks 支持 Chef 13/14。 docs.aws.amazon.com/opsworks/latest/userguide/… "与 AWS OpsWorks for Chef Automate 服务器关联的节点上受支持的 Chef-client 的最低版本是 13.x。我们建议至少运行 14.10.9 或最新、稳定的 chef-client 版本。" AWS OpsWorks Stacks 目前支持 Chef 版本 12、11.10、11.4 和 0.9 决定使用 11.10,直到有更好的升级可用。谢谢 docs.aws.amazon.com/opsworks/latest/userguide/… @ipegasus 您正在链接到专门为厨师 11 制作的旧页面。请参阅 docs.aws.amazon.com/opsworks/latest/userguide/…

以上是关于如何在 MacOS 中安装 chef 12 以部署到 AWS Opsworks?的主要内容,如果未能解决你的问题,请参考以下文章

在控制台 macOS 中安装 .p12 或 .cer

如何使用自制软件在 macOS 中安装以前版本的 Python 3?

在 VMware 12 中安装 MacOS Sierra 10.12.6

无法在 macOS Monterey 版本 12.0 Beta 中安装 Cocoapods - Xcode 13.0(13A233)

Flutter入门:在macOS中安装Flutter

在 MacOS 中安装 gcutil 时收到错误