6

我在 Amazon OpsWorks 中部署了一个堆栈,并广泛使用自定义说明书来部署我的应用程序。我的堆栈中有许多基于负载的实例(它们仅在需要时启动)。

每当我对自定义说明书进行更改时,我都必须手动更新任何正在运行的实例上的说明书(通过导航到部署 > 运行命令)。问题是任何未启动的实例都不会更新,并且它们不会在下次启动时自动更新。

我发现我可以删除然后重新创建所有基于负载的实例,强制它们在下次需要时完全重新设置,但必须有更好的方法来部署更新的自定义说明书。

如何强制我的基于负载的离线实例在下次启动时更新他们的说明书(即使每次启动都可以)?

4

3 回答 3

2

来自 Amazon Opsworks 论坛上的此 AWS 员工回复:

没有办法将更新推送到停止的实例。我们正在考虑启用此功能的方法。目前,如果您创建一个新的基于时间或负载的实例,它将获取您的更新。

因此,目前看来,做您想做的事情的唯一方法是删除并重新创建每个基于负载的实例。这应该确保他们第一次启动时,会收到您的自定义食谱的新版本。

于 2014-01-27T15:58:00.283 回答
1

您可以从 Stack、Run Command 窗口运行 Update Custom Cookbooks 命令。

正如它所说:http ://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook-installingcustom-enable-update.html

在此处输入图像描述

于 2015-11-04T01:21:42.150 回答
0

根据 opsworks 文档:

http://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook-installingcustom-enable-update-.html

手动更新自定义说明书

使用修改后的说明书更新您的存储库。AWS OpsWorks 使用您在最初安装说明书时提供的缓存 URL,因此说明书根文件名、存储库位置和访问权限不应更改。

对于 Amazon S3 或 HTTP 存储库,将原始 .zip 文件替换为具有相同名称的新 .zip 文件。

对于 Git 或 Subversion 存储库,编辑您的堆栈设置以将 Branch/Revision 字段更改为新版本。

在堆栈页面上,单击运行命令并选择更新自定义说明书命令。

于 2013-09-11T20:20:05.970 回答