第 9 步:更新说明书以运行命令 - AWS OpsWorks

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

第 9 步:更新说明书以运行命令

重要

AWS OpsWorks Stacks 不再接受新客户。在 2024 年 5 月 26 日之前,现有客户将能够照常使用 OpsWorks 控制台、API、CLI 和 CloudFormation 资源,届时这些工具或资源将停用。为准备此过渡,我们建议您尽快将堆栈过渡到AWS Systems Manager。有关更多信息,请参阅 AWS OpsWorks Stacks 生命周期终止常见问题解答将 AWS OpsWorks Stacks 应用程序迁移到 AWS Systems Manager Application Manager

通过添加可运行用于在实例上创建 SSH 秘钥的命令的配方,更新您的说明书。

更新实例上的说明书并运行新的配方
  1. 在您的本地工作站上的 opsworks_cookbook_demo 目录的 recipes 子目录中,创建名为 run_command.rb 的包含以下代码的文件。有关更多信息,请转到 execute

    execute "Create an SSH key" do command "ssh-keygen -f /tmp/my-key -N fLyC3jbY" end
  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::run_command

测试配方
  1. 如果您尚未登录实例,请登录。

  2. 在命令提示符下,运行以下命令 (一次运行一个命令),以确认已创建 SSH 密钥:

    sudo cat /tmp/my-key sudo cat /tmp/my-key.pub

    随即显示 SSH 私有和公有密钥的内容:

    -----BEGIN RSA PRIVATE KEY----- Proc-Type: 4,ENCRYPTED DEK-Info: AES-128-CBC,DEF7A09C...541583FA A5p9dCuo...wp0YYH1c -----END RSA PRIVATE KEY----- ssh-rsa AAAAB3N...KaNogZkT root@cookbooks-demo1

下一步中,您将更新说明书以在实例上运行一个脚本。