本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
第 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 秘钥的命令的配方,更新您的说明书。
更新实例上的说明书并运行新的配方
-
在您的本地工作站上的
opsworks_cookbook_demo
目录的recipes
子目录中,创建名为run_command.rb
的包含以下代码的文件。有关更多信息,请转到 execute。 execute "Create an SSH key" do command "ssh-keygen -f /tmp/my-key -N fLyC3jbY" end
-
在终端处或在命令提示符下,使用 tar 命令创建
opsworks_cookbook_demo.tar.gz
文件的新版本,该文件包含opsworks_cookbook_demo
目录及其更新的内容。 -
将更新后的
opsworks_cookbook_demo.tar.gz
文件上传到 S3 存储桶。 -
按照第 5 步:更新实例上的说明书并运行配方中的步骤,更新实例上的说明书并运行配方。在“运行配方”步骤中,对于 Recipes to execute (要执行的配方),键入
opsworks_cookbook_demo::run_command
。
测试配方
-
如果您尚未登录实例,请登录。
-
在命令提示符下,运行以下命令 (一次运行一个命令),以确认已创建 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
在下一步中,您将更新说明书以在实例上运行一个脚本。