选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

步骤 3:创建和部署自定义说明书 - AWS OpsWorks

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

步骤 3:创建和部署自定义说明书

重要

该 AWS OpsWorks Stacks 服务于 2024 年 5 月 26 日终止,新客户和现有客户均已禁用。我们强烈建议客户尽快将其工作负载迁移到其他解决方案。如果您对迁移有疑问,请通过 re AWS : Post 或通过 Pre mium Su AWS pp ort 与 AWS 支持 团队联系。

堆栈尚未就绪:

  • 您的应用程序需要一些信息来访问 MySQL 数据库服务器和 Amazon S3 存储桶,例如数据库主机名和 Amazon S3 存储桶名称。

  • 您需要在 MySQL 数据库服务器中设置数据库,并创建表来保存照片的元数据。

你可以手动处理这些任务,但更好的方法是实现 Chef 配方,让 AWS OpsWorks Stacks 在相应的实例上自动运行配方。Chef 配方是专门的 Ruby 应用程序, AWS OpsWorks Stacks 使用它在实例上执行任务,例如安装软件包或创建配置文件。它们打包在说明书 中,说明书可以包含多个配方和相关的文件,例如配置文件的模板。食谱放在存储库中,例如 GitHub,并且必须具有标准的目录结构。如果您还没有自定义说明书存储库,请参阅说明书存储库,以了解如何进行设置的信息。

在此示例中,食谱已为您实现并存储在公共存储 GitHub 库中。说明书包含两个配方 appsetup.rbdbsetup.rb,以及一个模板文件 db-connect.php.erb

appsetup.rb 配方将创建配置文件,其中包含应用程序访问数据库和 Amazon S3 存储桶所需信息。它基本上是 将应用程序连接到数据库 中所述的 appsetup.rb 配方经过略微修改的版本。主要差别在于传递到模板的变量,这代表了访问信息。

前四个属性定义数据库连接设置,由 AWS OpsWorks 堆栈在创建 MySQL 实例时自动定义。

这些变量与原始配方中的变量之间有两个主要差别:

  • 与原始配方一样,table 变量表示由 dbsetup.rb 创建的数据库表的名称,并设置为在说明书的属性文件中定义的属性的值。

    但是,该属性有不同的名称:[:photoapp][:dbtable]

  • s3bucket 变量特定于此示例,设置为表示 Amazon S3 存储桶名称的属性 [:photobucket] 的值。

    [:photobucket] 使用自定义 JSON 定义,如下文所述。有关属性的更多信息,请参阅Attributes

有关属性的更多信息,请参阅Attributes

dbsetup.rb 配方设置数据库表用于保存各个照片的元数据。它基本上是 dbsetup.rb 中所述的 设置数据库 配方经过略微修改的版本;有关详细说明,请参阅该主题。

此示例与原始配方之间的唯一差别是数据库架构,它有三列,包含 ID、URL 和各照片的标题,存储在 Amazon S3 存储桶中。

食谱已经实现了,所以你所需要做的就是将 photoapp 食谱部署到每个实例的食谱缓存中。 AWS OpsWorks 然后,当相应的生命周期事件发生时,Stacks 会运行缓存的配方,如下所述。

部署 photoapp 说明书
  1. 在 “堆栈 AWS OpsWorks 堆栈” 页面上,选择 “堆栈设置”,然后选择 “编辑”

  2. Configuration Management 部分中:

    • Use custom Chef cookbooks 设置为 Yes

    • Repository type 设置为 Git。

    • Repository URL (存储库 URL) 设置为 git://github.com/amazonwebservices/opsworks-example-cookbooks.git

  3. Stack (堆栈) 页面上,依次选择 Run Command (运行命令)Update Custom Cookbooks (更新自定义说明书) 堆栈命令以及 Update Custom Cookbooks (更新自定义说明书),以将新说明书安装到实例说明书缓存中。

    Run Command interface showing Update Custom Cookbooks option and instance selection.
隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。