第 13 步:更新说明书以使用数据包 - AWS OpsWorks

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

第 13 步:更新说明书以使用数据包

重要

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

通过添加一个引用 Stac AWS OpsWorks ks 存储在实例上的堆栈设置的食谱来更新你的食谱,这些设置存储在一组数据袋中。此配方会在日志中显示存储在实例上的具体堆栈设置的消息。有关更多信息,请参阅 AWS OpsWorks 堆栈数据包参考

更新实例上的说明书并运行新的配方
  1. 在您的本地工作站上的 recipes 目录的 opsworks_cookbook_demo 子目录中,创建名为 data_bags.rb 的包含以下代码的文件:

    instance = search("aws_opsworks_instance").first layer = search("aws_opsworks_layer").first stack = search("aws_opsworks_stack").first Chef::Log.info("********** This instance's instance ID is '#{instance['instance_id']}' **********") Chef::Log.info("********** This instance's public IP address is '#{instance['public_ip']}' **********") Chef::Log.info("********** This instance belongs to the layer '#{layer['name']}' **********") Chef::Log.info("********** This instance belongs to the stack '#{stack['name']}' **********") Chef::Log.info("********** This stack gets its cookbooks from '#{stack['custom_cookbooks_source']['url']}' **********")

    此配方会在日志中显示存储在实例上的具体堆栈设置的消息。

  2. 在终端处或在命令提示符下,使用 tar 命令创建 opsworks_cookbook_demo.tar.gz 文件的新版本,该文件包含 opsworks_cookbook_demo 目录及其更新的内容。

  3. 将更新后的 opsworks_cookbook_demo.tar.gz 文件上传到 S3 存储桶。

  4. 按照第 5 步:更新实例上的说明书并运行配方中的步骤,更新实例上的说明书并运行配方。在“运行配方”步骤中,对于 Recipes to execute (要执行的配方),键入 opsworks_cookbook_demo::data_bags

测试配方
  1. 通过上一步骤显示了 Running command execute_recipes 页面时,对于 cookbooks-demo1 中的 Log,选择 show。此时将显示 execute_recipes 日志页面。

  2. 向下滚动日志并查找类似于以下内容的条目:

    [2015-11-14T14:39:06+00:00] INFO: ********** This instance's instance ID is 'f80fa119-81ab-4c3c-883d-6028e52c89EX' ********** [2015-11-14T14:39:06+00:00] INFO: ********** This instance's public IP address is '192.0.2.0' ********** [2015-11-14T14:39:06+00:00] INFO: ********** This instance belongs to the layer 'MyCookbooksDemoLayer' ********** [2015-11-14T14:39:06+00:00] INFO: ********** This instance belongs to the stack 'MyCookbooksDemoStack' ********** [2015-11-14T14:39:06+00:00] INFO: ********** This stack gets its cookbooks from 'https://s3.amazonaws.com/opsworks-demo-bucket/opsworks_cookbook_demo.tar.gz' **********

    此配方会显示存储在实例上的具体堆栈设置的消息。

下一步中,您将更新说明书以多次运行配方代码。