AWS OpsWorks 使用 的範例 AWS CLI - AWS Command Line Interface

本文件 AWS CLI 僅適用於 第 1 版。如需 第 2 版的相關文件 AWS CLI,請參閱 第 2 版使用者指南

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS OpsWorks 使用 的範例 AWS CLI

下列程式碼範例示範如何使用 AWS Command Line Interface 搭配 來執行動作和實作常見案例 AWS OpsWorks。

Actions 是大型程式的程式碼摘錄,必須在內容中執行。雖然動作會告訴您如何呼叫個別服務函數,但您可以在其相關情境中查看內容中的動作。

每個範例都包含完整原始程式碼的連結,您可以在其中找到如何在內容中設定和執行程式碼的指示。

主題

動作

下列程式碼範例示範如何使用 assign-instance

AWS CLI

將已註冊的執行個體指派給 layer

下列範例會將已註冊的執行個體指派給自訂 layer。

aws opsworks --region us-east-1 assign-instance --instance-id 4d6d1710-ded9-42a1-b08e-b043ad7af1e2 --layer-ids 26cf1d32-6876-42fa-bbf1-9cadc0bff938

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的將註冊的執行個體指派給 Layer。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 AssignInstance

下列程式碼範例示範如何使用 assign-volume

AWS CLI

將已註冊的磁碟區指派給執行個體

下列範例會將已註冊的 Amazon Elastic Block Store (Amazon EBS) 磁碟區指派給執行個體。磁碟區是以磁碟區 ID 識別,這是當您向堆疊註冊磁碟區時, AWS OpsWorks 指派的 GUID,而不是 Amazon Elastic Compute Cloud (Amazon EC2) 磁碟區 ID。執行 之前assign-volume,您必須先執行 update-volume,將掛載點指派給磁碟區。

aws opsworks --region us-east-1 assign-volume --instance-id 4d6d1710-ded9-42a1-b08e-b043ad7af1e2 --volume-id 26cf1d32-6876-42fa-bbf1-9cadc0bff938

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的將 Amazon EBS 磁碟區指派給執行個體。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 AssignVolume

下列程式碼範例示範如何使用 associate-elastic-ip

AWS CLI

將彈性 IP 地址與執行個體建立關聯

下列範例會將彈性 IP 地址與指定的執行個體建立關聯。

aws opsworks --region us-east-1 associate-elastic-ip --instance-id dfe18b02-5327-493d-91a4-c5c0c448927f --elastic-ip 54.148.130.96

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的資源管理。

下列程式碼範例示範如何使用 attach-elastic-load-balancer

AWS CLI

將負載平衡器連接到 layer

下列範例會將以其名稱識別的負載平衡器連接到指定的層。

aws opsworks --region us-east-1 attach-elastic-load-balancer --elastic-load-balancer-name Java-LB --layer-id 888c5645-09a5-4d0e-95a8-812ef1db76a4

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的 Elastic Load Balancing。

下列程式碼範例示範如何使用 create-app

AWS CLI

範例 1:建立應用程式

下列範例會從存放在 GitHub 儲存庫中的程式碼建立名為 SimplePHPApp 的 PHP 應用程式。命令使用應用程式來源定義的速記形式。

aws opsworks create-app \ --region us-east-1 \ --stack-id f6673d70-32e6-4425-8999-265dd002fec7 \ --name SimplePHPApp \ --type php \ --app-source Type=git,Url=git://github.com/amazonwebservices/opsworks-demo-php-simple-app.git,Revision=version1

輸出:

{ "AppId": "6cf5163c-a951-444f-a8f7-3716be75f2a2" }

範例 2:使用連接的資料庫建立應用程式

下列範例會從存放在公有 S3 儲存貯體中 .zip 封存檔中的程式碼建立 JSP 應用程式。它會連接 RDS 資料庫執行個體,做為應用程式的資料存放區。應用程式和資料庫來源是在執行命令的目錄中的個別 JSON 檔案中定義。

aws opsworks create-app \ --region us-east-1 \ --stack-id 8c428b08-a1a1-46ce-a5f8-feddc43771b8 \ --name SimpleJSP \ --type java \ --app-source file://appsource.json \ --data-sources file://datasource.json

應用程式來源資訊位於 中appsource.json,並包含下列項目。

{ "Type": "archive", "Url": "https://s3.amazonaws.com/opsworks-demo-assets/simplejsp.zip" }

資料庫來源資訊位於 中datasource.json,並包含下列項目。

[ { "Type": "RdsDbInstance", "Arn": "arn:aws:rds:us-west-2:123456789012:db:clitestdb", "DatabaseName": "mydb" } ]

注意:對於 RDS 資料庫執行個體,您必須先使用 register-rds-db-instance向堆疊註冊執行個體。對於 MySQL App Server 執行個體,將 Type設定為 OpsworksMysqlInstance。這些執行個體是由 AWS OpsWorks 建立,因此不需要註冊。

輸出:

{ "AppId": "26a61ead-d201-47e3-b55c-2a7c666942f8" }

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的新增應用程式。

  • 如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 CreateApp

下列程式碼範例示範如何使用 create-deployment

AWS CLI

範例 1:部署應用程式和執行堆疊命令

下列範例示範如何使用 create-deployment命令來部署應用程式和執行堆疊命令。請注意,指定命令的 JSON 物件中的引號 (") 字元前面都是逸出字元 (\)。如果沒有逸出字元,命令可能會傳回無效的 JSON 錯誤。

下列create-deployment範例會將應用程式部署到指定的堆疊。

aws opsworks create-deployment \ --stack-id cfb7e082-ad1d-4599-8e81-de1c39ab45bf \ --app-id 307be5c8-d55d-47b5-bd6e-7bd417c6c7eb --command "{\"Name\":\"deploy\"}"

輸出:

{ "DeploymentId": "5746c781-df7f-4c87-84a7-65a119880560" }

範例 2:部署 Rails 應用程式並遷移資料庫

下列create-deployment命令會將 Ruby on Rails 應用程式部署到指定的堆疊,並遷移資料庫。

aws opsworks create-deployment \ --stack-id cfb7e082-ad1d-4599-8e81-de1c39ab45bf \ --app-id 307be5c8-d55d-47b5-bd6e-7bd417c6c7eb \ --command "{\"Name\":\"deploy\", \"Args\":{\"migrate\":[\"true\"]}}"

輸出:

{ "DeploymentId": "5746c781-df7f-4c87-84a7-65a119880560" }

如需部署的詳細資訊,請參閱 AWS OpsWorks 使用者指南中的部署應用程式

範例 3:執行配方

下列create-deployment命令會在指定堆疊中的執行個體上執行自訂配方 phpapp::appsetup

aws opsworks create-deployment \ --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb \ --command "{\"Name\":\"execute_recipes\", \"Args\":{\"recipes\":[\"phpapp::appsetup\"]}}"

輸出:

{ "DeploymentId": "5cbaa7b9-4e09-4e53-aa1b-314fbd106038" }

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的執行堆疊命令

範例 4:安裝相依性

下列create-deployment命令會在指定堆疊中的執行個體上安裝相依性,例如套件或 Ruby Gem 套件。

aws opsworks create-deployment \ --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb \ --command "{\"Name\":\"install_dependencies\"}"

輸出:

{ "DeploymentId": "aef5b255-8604-4928-81b3-9b0187f962ff" }

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的執行堆疊命令

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 CreateDeployment

下列程式碼範例示範如何使用 create-instance

AWS CLI

建立執行個體

下列create-instance命令會在指定的堆疊中建立名為 myinstance1 的 m1.large Amazon Linux 執行個體。執行個體會指派給一層。

aws opsworks --region us-east-1 create-instance --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb --layer-ids 5c8c272a-f2d5-42e3-8245-5bf3927cb65b --hostname myinstance1 --instance-type m1.large --os "Amazon Linux"

若要使用自動產生的名稱,請呼叫 get-hostname-suggestion,這會根據您建立堆疊時指定的主題產生主機名稱。然後將該名稱傳遞至主機名稱引數。

輸出:

{ "InstanceId": "5f9adeaa-c94c-42c6-aeef-28a5376002cd" }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的將執行個體新增至 Layer。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 CreateInstance

下列程式碼範例示範如何使用 create-layer

AWS CLI

建立 layer

下列create-layer命令會在指定的堆疊中建立名為 MyPHPLayer 的 PHP App Server 層。

aws opsworks create-layer --region us-east-1 --stack-id f6673d70-32e6-4425-8999-265dd002fec7 --type php-app --name MyPHPLayer --shortname myphplayer

輸出:

{ "LayerId": "0b212672-6b4b-40e4-8a34-5a943cf2e07a" }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的如何建立 Layer。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 CreateLayer

下列程式碼範例示範如何使用 create-server

AWS CLI

建立伺服器

下列create-server範例會在您的預設區域中建立新的名為 automate-06的 Chef Automate 伺服器。請注意,預設值用於大多數其他設定,例如要保留的備份數量,以及維護和備份開始時間。執行create-server命令之前,請先完成 Opsworks AWS OpsWorks for Chef Automate 使用者指南中的開始使用 Chef Automate 的先決條件。 AWS

aws opsworks-cm create-server \ --engine "ChefAutomate" \ --instance-profile-arn "arn:aws:iam::012345678901:instance-profile/aws-opsworks-cm-ec2-role" \ --instance-type "t2.medium" \ --server-name "automate-06" \ --service-role-arn "arn:aws:iam::012345678901:role/aws-opsworks-cm-service-role"

輸出:

{ "Server": { "AssociatePublicIpAddress": true, "BackupRetentionCount": 10, "CreatedAt": 2019-12-29T13:38:47.520Z, "DisableAutomatedBackup": FALSE, "Endpoint": "https://opsworks-cm.us-east-1.amazonaws.com", "Engine": "ChefAutomate", "EngineAttributes": [ { "Name": "CHEF_AUTOMATE_ADMIN_PASSWORD", "Value": "1Example1" } ], "EngineModel": "Single", "EngineVersion": "2019-08", "InstanceProfileArn": "arn:aws:iam::012345678901:instance-profile/aws-opsworks-cm-ec2-role", "InstanceType": "t2.medium", "PreferredBackupWindow": "Sun:02:00", "PreferredMaintenanceWindow": "00:00", "SecurityGroupIds": [ "sg-12345678" ], "ServerArn": "arn:aws:iam::012345678901:instance/automate-06-1010V4UU2WRM2", "ServerName": "automate-06", "ServiceRoleArn": "arn:aws:iam::012345678901:role/aws-opsworks-cm-service-role", "Status": "CREATING", "SubnetIds": [ "subnet-12345678" ] } }

如需詳細資訊,請參閱 AWS OpsWorks for Chef Automate API 參考中的 CreateServer

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 CreateServer

下列程式碼範例示範如何使用 create-stack

AWS CLI

建立堆疊

下列create-stack命令會建立名為 CLI Stack 的堆疊。

aws opsworks create-stack --name "CLI Stack" --stack-region "us-east-1" --service-role-arn arn:aws:iam::123456789012:role/aws-opsworks-service-role --default-instance-profile-arn arn:aws:iam::123456789012:instance-profile/aws-opsworks-ec2-role --region us-east-1

service-role-arndefault-instance-profile-arn 是必要參數。您通常會在建立第一個堆疊時,使用 AWS OpsWorks 為您建立的堆疊。若要取得帳戶的 Amazon Resource Name (ARNs),請前往 IAM 主控台,在導覽面板Roles中選擇 ,選擇角色或設定檔,然後選擇 Summary索引標籤。

輸出:

{ "StackId": "f6673d70-32e6-4425-8999-265dd002fec7" }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的建立新堆疊。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 CreateStack

下列程式碼範例示範如何使用 create-user-profile

AWS CLI

建立使用者設定檔

您可以透過呼叫 create-user-profile 來建立使用者描述檔,將 AWS Identity and Access Manager (IAM) 使用者匯入至 AWS OpsWorks。下列範例會為由 Amazon Resource Name (ARN) 識別的 cli-user-test IAM 使用者建立使用者設定檔。此範例會為使用者指派 SSH 使用者名稱,myusername並啟用自我管理,這可讓使用者指定 SSH 公有金鑰。

aws opsworks --region us-east-1 create-user-profile --iam-user-arn arn:aws:iam::123456789102:user/cli-user-test --ssh-username myusername --allow-self-management

輸出:

{ "IamUserArn": "arn:aws:iam::123456789102:user/cli-user-test" }

秘訣:此命令會將 IAM 使用者匯入至 AWS OpsWorks,但僅限具有連接政策所授予的許可。您可以使用 set-permissions命令授予每個stack AWS OpsWorks 許可。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的將使用者匯入至 OpsWorks。 AWS OpsWorks

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 CreateUserProfile

下列程式碼範例示範如何使用 delete-app

AWS CLI

刪除應用程式

下列範例會刪除指定的應用程式,該應用程式由其應用程式 ID 識別。您可以前往 AWS OpsWorks 主控台上的應用程式詳細資訊頁面,或執行 describe-apps命令來取得應用程式 ID。

aws opsworks delete-app --region us-east-1 --app-id 577943b9-2ec1-4baf-a7bf-1d347601edc5

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的應用程式。

  • 如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DeleteApp

下列程式碼範例示範如何使用 delete-instance

AWS CLI

刪除執行個體

下列delete-instance範例會刪除指定的執行個體,以其執行個體 ID 識別。您可以在 AWS OpsWorks 主控台中開啟執行個體的詳細資訊頁面,或執行 describe-instances命令來尋找執行個體 ID。

如果執行個體在線上,您必須先呼叫 來停止執行個體stop-instance,然後必須等到執行個體停止。執行 describe-instances 以檢查執行個體狀態。

若要移除執行個體的 Amazon EBS 磁碟區或彈性 IP 地址,請分別新增 --delete-volumes--delete-elastic-ip引數。

aws opsworks delete-instance \ --region us-east-1 \ --instance-id 3a21cfac-4a1f-4ce2-a921-b2cfba6f7771

此命令不會產生輸出。

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的 DeleteOpsWorks 執行個體AWS OpsWorks

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DeleteInstance

下列程式碼範例示範如何使用 delete-layer

AWS CLI

刪除圖層

下列範例會刪除指定的 layer,以其 layer ID 識別。您可以前往 AWS OpsWorks 主控台上的 layer 詳細資訊頁面,或執行 describe-layers命令來取得 layer ID。

注意:刪除 layer 之前,您必須使用 delete-instance 刪除 layer 的所有執行個體。

aws opsworks delete-layer --region us-east-1 --layer-id a919454e-b816-4598-b29a-5796afb498ed

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的 DeleteOpsWorks 執行個體。 AWS OpsWorks

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DeleteLayer

下列程式碼範例示範如何使用 delete-stack

AWS CLI

刪除堆疊

下列範例會刪除指定的堆疊,以其堆疊 ID 識別。您可以按一下 AWS OpsWorks 主控台上的堆疊設定,或執行 describe-stacks命令,以取得堆疊 ID。

注意:刪除 layer 之前,您必須使用 delete-appdelete-instancedelete-layer 來刪除堆疊的所有應用程式、執行個體和 layer。

aws opsworks delete-stack --region us-east-1 --stack-id 154a9d89-7e9e-433b-8de8-617e53756c84

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的關閉堆疊。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DeleteStack

下列程式碼範例示範如何使用 delete-user-profile

AWS CLI

刪除使用者設定檔並從 AWS OpsWorks 移除 IAM 使用者

下列範例會刪除指定 AWS Identity and Access Management (IAM) 使用者的使用者設定檔,該使用者由 Amazon Resource Name (ARN) 識別。操作會從 AWS OpsWorks 中移除使用者,但不會刪除 IAM 使用者。您必須使用該任務的 IAM 主控台、CLI 或 API。

aws opsworks --region us-east-1 delete-user-profile --iam-user-arn arn:aws:iam::123456789102:user/cli-user-test

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的將使用者匯入至 OpsWorks。 AWS OpsWorks

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DeleteUserProfile

下列程式碼範例示範如何使用 deregister-elastic-ip

AWS CLI

從堆疊取消註冊彈性 IP 地址

下列範例會從其堆疊取消註冊由其 IP 地址識別的彈性 IP 地址。

aws opsworks deregister-elastic-ip --region us-east-1 --elastic-ip 54.148.130.96

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的取消註冊彈性 IP 地址。

下列程式碼範例示範如何使用 deregister-instance

AWS CLI

從堆疊取消註冊已註冊的執行個體

下列deregister-instance命令會從其堆疊取消註冊已註冊的執行個體。

aws opsworks --region us-east-1 deregister-instance --instance-id 4d6d1710-ded9-42a1-b08e-b043ad7af1e2

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的取消註冊已註冊的執行個體。

下列程式碼範例示範如何使用 deregister-rds-db-instance

AWS CLI

從堆疊取消註冊 Amazon RDS 資料庫執行個體

下列範例會從其堆疊取消註冊由其 ARN 識別的 RDS 資料庫執行個體。

aws opsworks deregister-rds-db-instance --region us-east-1 --rds-db-instance-arn arn:aws:rds:us-west-2:123456789012:db:clitestdb

輸出:無。

更多資訊

如需詳細資訊,請參閱 ASW OpsWorks 使用者指南中的取消註冊 Amazon RDS 執行個體。

執行個體 ID:clitestdb 主使用者名:cliuser 主 PWD:s some23!pwd 資料庫名稱:mydb aws opsworks deregister-rds-db-instance --region us-east-1 --rds-db-instance-arn arn:aws:rds:us-west-2:645732743964:db:clitestdb

下列程式碼範例示範如何使用 deregister-volume

AWS CLI

取消註冊 Amazon EBS 磁碟區

下列範例會從其堆疊取消註冊 EBS 磁碟區。磁碟區是以其磁碟區 ID 識別,這是當您向堆疊註冊磁碟區時所 AWS OpsWorks 指派的 GUID,而不是 EC2 磁碟區 ID。

aws opsworks deregister-volume --region us-east-1 --volume-id 5c48ef52-3144-4bf5-beaa-fda4deb23d4d

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的取消註冊 Amazon EBS 磁碟區。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的DeregisterVolume

下列程式碼範例示範如何使用 describe-apps

AWS CLI

描述應用程式

下列describe-apps命令說明指定堆疊中的應用程式。

aws opsworks describe-apps \ --stack-id 38ee91e2-abdc-4208-a107-0b7168b3cc7a \ --region us-east-1

輸出:

{ "Apps": [ { "StackId": "38ee91e2-abdc-4208-a107-0b7168b3cc7a", "AppSource": { "Url": "https://s3-us-west-2.amazonaws.com/opsworks-demo-assets/simplejsp.zip", "Type": "archive" }, "Name": "SimpleJSP", "EnableSsl": false, "SslConfiguration": {}, "AppId": "da1decc1-0dff-43ea-ad7c-bb667cd87c8b", "Attributes": { "RailsEnv": null, "AutoBundleOnDeploy": "true", "DocumentRoot": "ROOT" }, "Shortname": "simplejsp", "Type": "other", "CreatedAt": "2013-08-01T21:46:54+00:00" } ] }

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的應用程式。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DescribeApps

下列程式碼範例示範如何使用 describe-commands

AWS CLI

描述命令

下列describe-commands命令說明指定執行個體中的命令。

aws opsworks describe-commands \ --instance-id 8c2673b9-3fe5-420d-9cfa-78d875ee7687 \ --region us-east-1

輸出:

{ "Commands": [ { "Status": "successful", "CompletedAt": "2013-07-25T18:57:47+00:00", "InstanceId": "8c2673b9-3fe5-420d-9cfa-78d875ee7687", "DeploymentId": "6ed0df4c-9ef7-4812-8dac-d54a05be1029", "AcknowledgedAt": "2013-07-25T18:57:41+00:00", "LogUrl": "https://s3.amazonaws.com/<bucket-name>/logs/008c1a91-ec59-4d51-971d-3adff54b00cc?AWSAccessKeyId=AKIAIOSFODNN7EXAMPLE &Expires=1375394373&Signature=HkXil6UuNfxTCC37EPQAa462E1E%3D&response-cache-control=private&response-content-encoding=gzip&response-content- type=text%2Fplain", "Type": "undeploy", "CommandId": "008c1a91-ec59-4d51-971d-3adff54b00cc", "CreatedAt": "2013-07-25T18:57:34+00:00", "ExitCode": 0 }, { "Status": "successful", "CompletedAt": "2013-07-25T18:55:40+00:00", "InstanceId": "8c2673b9-3fe5-420d-9cfa-78d875ee7687", "DeploymentId": "19d3121e-d949-4ff2-9f9d-94eac087862a", "AcknowledgedAt": "2013-07-25T18:55:32+00:00", "LogUrl": "https://s3.amazonaws.com/<bucket-name>/logs/899d3d64-0384-47b6-a586-33433aad117c?AWSAccessKeyId=AKIAIOSFODNN7EXAMPLE &Expires=1375394373&Signature=xMsJvtLuUqWmsr8s%2FAjVru0BtRs%3D&response-cache-control=private&response-content-encoding=gzip&response-conten t-type=text%2Fplain", "Type": "deploy", "CommandId": "899d3d64-0384-47b6-a586-33433aad117c", "CreatedAt": "2013-07-25T18:55:29+00:00", "ExitCode": 0 } ] }

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的 OpsWorks 生命週期事件。 AWS OpsWorks

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DescribeCommands

下列程式碼範例示範如何使用 describe-deployments

AWS CLI

描述部署

下列describe-deployments命令說明指定堆疊中的部署。

aws opsworks --region us-east-1 describe-deployments --stack-id 38ee91e2-abdc-4208-a107-0b7168b3cc7a

輸出:

{ "Deployments": [ { "StackId": "38ee91e2-abdc-4208-a107-0b7168b3cc7a", "Status": "successful", "CompletedAt": "2013-07-25T18:57:49+00:00", "DeploymentId": "6ed0df4c-9ef7-4812-8dac-d54a05be1029", "Command": { "Args": {}, "Name": "undeploy" }, "CreatedAt": "2013-07-25T18:57:34+00:00", "Duration": 15, "InstanceIds": [ "8c2673b9-3fe5-420d-9cfa-78d875ee7687", "9e588a25-35b2-4804-bd43-488f85ebe5b7" ] }, { "StackId": "38ee91e2-abdc-4208-a107-0b7168b3cc7a", "Status": "successful", "CompletedAt": "2013-07-25T18:56:41+00:00", "IamUserArn": "arn:aws:iam::123456789012:user/someuser", "DeploymentId": "19d3121e-d949-4ff2-9f9d-94eac087862a", "Command": { "Args": {}, "Name": "deploy" }, "InstanceIds": [ "8c2673b9-3fe5-420d-9cfa-78d875ee7687", "9e588a25-35b2-4804-bd43-488f85ebe5b7" ], "Duration": 72, "CreatedAt": "2013-07-25T18:55:29+00:00" } ] }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的部署應用程式。

下列程式碼範例示範如何使用 describe-elastic-ips

AWS CLI

描述彈性 IP 執行個體

下列describe-elastic-ips命令說明指定執行個體中的彈性 IP 地址。

aws opsworks --region us-east-1 describe-elastic-ips --instance-id b62f3e04-e9eb-436c-a91f-d9e9a396b7b0

輸出:

{ "ElasticIps": [ { "Ip": "192.0.2.0", "Domain": "standard", "Region": "us-west-2" } ] }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的執行個體。

下列程式碼範例示範如何使用 describe-elastic-load-balancers

AWS CLI

描述堆疊的彈性負載平衡器

下列describe-elastic-load-balancers命令說明指定堆疊的負載平衡器。

aws opsworks --region us-west-2 describe-elastic-load-balancers --stack-id 6f4660e5-37a6-4e42-bfa0-1358ebd9c182

輸出:此特定堆疊有一個負載平衡器。

{ "ElasticLoadBalancers": [ { "SubnetIds": [ "subnet-60e4ea04", "subnet-66e1c110" ], "Ec2InstanceIds": [], "ElasticLoadBalancerName": "my-balancer", "Region": "us-west-2", "LayerId": "344973cb-bf2b-4cd0-8d93-51cd819bab04", "AvailabilityZones": [ "us-west-2a", "us-west-2b" ], "VpcId": "vpc-b319f9d4", "StackId": "6f4660e5-37a6-4e42-bfa0-1358ebd9c182", "DnsName": "my-balancer-2094040179.us-west-2.elb.amazonaws.com" } ] }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的應用程式。

下列程式碼範例示範如何使用 describe-instances

AWS CLI

描述執行個體

下列describe-instances命令說明指定堆疊中的執行個體:

aws opsworks --region us-east-1 describe-instances --stack-id 8c428b08-a1a1-46ce-a5f8-feddc43771b8

輸出:下列輸出範例適用於具有兩個執行個體的堆疊。第一個是已註冊的 EC2 執行個體,第二個是由 AWS OpsWorks 建立。

{ "Instances": [ { "StackId": "71c7ca72-55ae-4b6a-8ee1-a8dcded3fa0f", "PrivateDns": "ip-10-31-39-66.us-west-2.compute.internal", "LayerIds": [ "26cf1d32-6876-42fa-bbf1-9cadc0bff938" ], "EbsOptimized": false, "ReportedOs": { "Version": "14.04", "Name": "ubuntu", "Family": "debian" }, "Status": "online", "InstanceId": "4d6d1710-ded9-42a1-b08e-b043ad7af1e2", "SshKeyName": "US-West-2", "InfrastructureClass": "ec2", "RootDeviceVolumeId": "vol-d08ec6c1", "SubnetId": "subnet-b8de0ddd", "InstanceType": "t1.micro", "CreatedAt": "2015-02-24T20:52:49+00:00", "AmiId": "ami-35501205", "Hostname": "ip-192-0-2-0", "Ec2InstanceId": "i-5cd23551", "PublicDns": "ec2-192-0-2-0.us-west-2.compute.amazonaws.com", "SecurityGroupIds": [ "sg-c4d3f0a1" ], "Architecture": "x86_64", "RootDeviceType": "ebs", "InstallUpdatesOnBoot": true, "Os": "Custom", "VirtualizationType": "paravirtual", "AvailabilityZone": "us-west-2a", "PrivateIp": "10.31.39.66", "PublicIp": "192.0.2.06", "RegisteredBy": "arn:aws:iam::123456789102:user/AWS/OpsWorks/OpsWorks-EC2Register-i-5cd23551" }, { "StackId": "71c7ca72-55ae-4b6a-8ee1-a8dcded3fa0f", "PrivateDns": "ip-10-31-39-158.us-west-2.compute.internal", "SshHostRsaKeyFingerprint": "69:6b:7b:8b:72:f3:ed:23:01:00:05:bc:9f:a4:60:c1", "LayerIds": [ "26cf1d32-6876-42fa-bbf1-9cadc0bff938" ], "EbsOptimized": false, "ReportedOs": {}, "Status": "booting", "InstanceId": "9b137a0d-2f5d-4cc0-9704-13da4b31fdcb", "SshKeyName": "US-West-2", "InfrastructureClass": "ec2", "RootDeviceVolumeId": "vol-e09dd5f1", "SubnetId": "subnet-b8de0ddd", "InstanceProfileArn": "arn:aws:iam::123456789102:instance-profile/aws-opsworks-ec2-role", "InstanceType": "c3.large", "CreatedAt": "2015-02-24T21:29:33+00:00", "AmiId": "ami-9fc29baf", "SshHostDsaKeyFingerprint": "fc:87:95:c3:f5:e1:3b:9f:d2:06:6e:62:9a:35:27:e8", "Ec2InstanceId": "i-8d2dca80", "PublicDns": "ec2-192-0-2-1.us-west-2.compute.amazonaws.com", "SecurityGroupIds": [ "sg-b022add5", "sg-b122add4" ], "Architecture": "x86_64", "RootDeviceType": "ebs", "InstallUpdatesOnBoot": true, "Os": "Amazon Linux 2014.09", "VirtualizationType": "paravirtual", "AvailabilityZone": "us-west-2a", "Hostname": "custom11", "PrivateIp": "10.31.39.158", "PublicIp": "192.0.2.0" } ] }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的執行個體。

  • 如需 API 的詳細資訊,請參閱《AWS CLI 命令參考》中的 DescribeInstances

下列程式碼範例示範如何使用 describe-layers

AWS CLI

描述堆疊的圖層

下列describe-layers命令說明指定堆疊中的圖層:

aws opsworks --region us-east-1 describe-layers --stack-id 38ee91e2-abdc-4208-a107-0b7168b3cc7a

輸出:

{ "Layers": [ { "StackId": "38ee91e2-abdc-4208-a107-0b7168b3cc7a", "Type": "db-master", "DefaultSecurityGroupNames": [ "AWS-OpsWorks-DB-Master-Server" ], "Name": "MySQL", "Packages": [], "DefaultRecipes": { "Undeploy": [], "Setup": [ "opsworks_initial_setup", "ssh_host_keys", "ssh_users", "mysql::client", "dependencies", "ebs", "opsworks_ganglia::client", "mysql::server", "dependencies", "deploy::mysql" ], "Configure": [ "opsworks_ganglia::configure-client", "ssh_users", "agent_version", "deploy::mysql" ], "Shutdown": [ "opsworks_shutdown::default", "mysql::stop" ], "Deploy": [ "deploy::default", "deploy::mysql" ] }, "CustomRecipes": { "Undeploy": [], "Setup": [], "Configure": [], "Shutdown": [], "Deploy": [] }, "EnableAutoHealing": false, "LayerId": "41a20847-d594-4325-8447-171821916b73", "Attributes": { "MysqlRootPasswordUbiquitous": "true", "RubygemsVersion": null, "RailsStack": null, "HaproxyHealthCheckMethod": null, "RubyVersion": null, "BundlerVersion": null, "HaproxyStatsPassword": null, "PassengerVersion": null, "MemcachedMemory": null, "EnableHaproxyStats": null, "ManageBundler": null, "NodejsVersion": null, "HaproxyHealthCheckUrl": null, "MysqlRootPassword": "*****FILTERED*****", "GangliaPassword": null, "GangliaUser": null, "HaproxyStatsUrl": null, "GangliaUrl": null, "HaproxyStatsUser": null }, "Shortname": "db-master", "AutoAssignElasticIps": false, "CustomSecurityGroupIds": [], "CreatedAt": "2013-07-25T18:11:19+00:00", "VolumeConfigurations": [ { "MountPoint": "/vol/mysql", "Size": 10, "NumberOfDisks": 1 } ] }, { "StackId": "38ee91e2-abdc-4208-a107-0b7168b3cc7a", "Type": "custom", "DefaultSecurityGroupNames": [ "AWS-OpsWorks-Custom-Server" ], "Name": "TomCustom", "Packages": [], "DefaultRecipes": { "Undeploy": [], "Setup": [ "opsworks_initial_setup", "ssh_host_keys", "ssh_users", "mysql::client", "dependencies", "ebs", "opsworks_ganglia::client" ], "Configure": [ "opsworks_ganglia::configure-client", "ssh_users", "agent_version" ], "Shutdown": [ "opsworks_shutdown::default" ], "Deploy": [ "deploy::default" ] }, "CustomRecipes": { "Undeploy": [], "Setup": [ "tomcat::setup" ], "Configure": [ "tomcat::configure" ], "Shutdown": [], "Deploy": [ "tomcat::deploy" ] }, "EnableAutoHealing": true, "LayerId": "e6cbcd29-d223-40fc-8243-2eb213377440", "Attributes": { "MysqlRootPasswordUbiquitous": null, "RubygemsVersion": null, "RailsStack": null, "HaproxyHealthCheckMethod": null, "RubyVersion": null, "BundlerVersion": null, "HaproxyStatsPassword": null, "PassengerVersion": null, "MemcachedMemory": null, "EnableHaproxyStats": null, "ManageBundler": null, "NodejsVersion": null, "HaproxyHealthCheckUrl": null, "MysqlRootPassword": null, "GangliaPassword": null, "GangliaUser": null, "HaproxyStatsUrl": null, "GangliaUrl": null, "HaproxyStatsUser": null }, "Shortname": "tomcustom", "AutoAssignElasticIps": false, "CustomSecurityGroupIds": [], "CreatedAt": "2013-07-25T18:12:53+00:00", "VolumeConfigurations": [] } ] }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的圖層。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DescribeLayers

下列程式碼範例示範如何使用 describe-load-based-auto-scaling

AWS CLI

描述 layer 的負載型擴展組態

下列範例說明指定 layer 的負載型擴展組態。圖層會以圖層 ID 識別,您可以在圖層的詳細資訊頁面上找到,或執行 describe-layers

aws opsworks describe-load-based-auto-scaling --region us-east-1 --layer-ids 6bec29c9-c866-41a0-aba5-fa3e374ce2a1

輸出:範例 layer 具有單一負載型執行個體。

{ "LoadBasedAutoScalingConfigurations": [ { "DownScaling": { "IgnoreMetricsTime": 10, "ThresholdsWaitTime": 10, "InstanceCount": 1, "CpuThreshold": 30.0 }, "Enable": true, "UpScaling": { "IgnoreMetricsTime": 5, "ThresholdsWaitTime": 5, "InstanceCount": 1, "CpuThreshold": 80.0 }, "LayerId": "6bec29c9-c866-41a0-aba5-fa3e374ce2a1" } ] }

更多資訊

如需詳細資訊,請參閱《 AWS OpsWorks 使用者指南》中的自動負載型擴展的運作方式。

下列程式碼範例示範如何使用 describe-my-user-profile

AWS CLI

取得使用者的設定檔

下列範例示範如何取得執行 命令之 AWS Identity and Access Management (IAM) 使用者的設定檔。

aws opsworks --region us-east-1 describe-my-user-profile

輸出:為了簡潔起見,大部分使用者的 SSH 公有金鑰會被省略符號 (...) 取代。

{ "UserProfile": { "IamUserArn": "arn:aws:iam::123456789012:user/myusername", "SshPublicKey": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQ...3LQ4aX9jpxQw== rsa-key-20141104", "Name": "myusername", "SshUsername": "myusername" } }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的將使用者匯入至 OpsWorks。 AWS OpsWorks

下列程式碼範例示範如何使用 describe-permissions

AWS CLI

取得使用者的每個stack AWS OpsWorks 許可層級

下列範例示範如何在指定的堆疊上取得 AWS Identity and Access Management (IAM) 使用者的許可層級。

aws opsworks --region us-east-1 describe-permissions --iam-user-arn arn:aws:iam::123456789012:user/cli-user-test --stack-id d72553d4-8727-448c-9b00-f024f0ba1b06

輸出:

{ "Permissions": [ { "StackId": "d72553d4-8727-448c-9b00-f024f0ba1b06", "IamUserArn": "arn:aws:iam::123456789012:user/cli-user-test", "Level": "manage", "AllowSudo": true, "AllowSsh": true } ] }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的授予每個堆疊許可層級。

下列程式碼範例示範如何使用 describe-raid-arrays

AWS CLI

描述 RAID 陣列

下列範例說明連接至指定堆疊中執行個體的 RAID 陣列。

aws opsworks --region us-east-1 describe-raid-arrays --stack-id d72553d4-8727-448c-9b00-f024f0ba1b06

輸出:以下是具有一個 RAID 陣列之堆疊的輸出。

{ "RaidArrays": [ { "StackId": "d72553d4-8727-448c-9b00-f024f0ba1b06", "AvailabilityZone": "us-west-2a", "Name": "Created for php-app1", "NumberOfDisks": 2, "InstanceId": "9f14adbc-ced5-43b6-bf01-e7d0db6cf2f7", "RaidLevel": 0, "VolumeType": "standard", "RaidArrayId": "f2d4e470-5972-4676-b1b8-bae41ec3e51c", "Device": "/dev/md0", "MountPoint": "/mnt/workspace", "CreatedAt": "2015-02-26T23:53:09+00:00", "Size": 100 } ] }

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的 EBS 磁碟區。

下列程式碼範例示範如何使用 describe-rds-db-instances

AWS CLI

描述堆疊的已註冊 Amazon RDS 執行個體

下列範例說明使用指定堆疊註冊的 Amazon RDS 執行個體。

aws opsworks --region us-east-1 describe-rds-db-instances --stack-id d72553d4-8727-448c-9b00-f024f0ba1b06

輸出:以下是具有一個已註冊 RDS 執行個體之堆疊的輸出。

{ "RdsDbInstances": [ { "Engine": "mysql", "StackId": "d72553d4-8727-448c-9b00-f024f0ba1b06", "MissingOnRds": false, "Region": "us-west-2", "RdsDbInstanceArn": "arn:aws:rds:us-west-2:123456789012:db:clitestdb", "DbPassword": "*****FILTERED*****", "Address": "clitestdb.cdlqlk5uwd0k.us-west-2.rds.amazonaws.com", "DbUser": "cliuser", "DbInstanceIdentifier": "clitestdb" } ] }

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的資源管理。

下列程式碼範例示範如何使用 describe-stack-provisioning-parameters

AWS CLI

傳回堆疊的佈建參數

下列describe-stack-provisioning-parameters範例會傳回指定堆疊的佈建參數。佈建參數包括設定,例如 OpsWorks 用來管理堆疊中執行個體上的代理程式的代理程式安裝位置和公有金鑰。

aws opsworks describe-stack-provisioning-parameters \ --stack-id 62744d97-6faf-4ecb-969b-a086fEXAMPLE

輸出:

{ "AgentInstallerUrl": "https://opsworks-instance-agent-us-west-2.s3.amazonaws.com/ID_number/opsworks-agent-installer.tgz", "Parameters": { "agent_installer_base_url": "https://opsworks-instance-agent-us-west-2.s3.amazonaws.com", "agent_installer_tgz": "opsworks-agent-installer.tgz", "assets_download_bucket": "opsworks-instance-assets-us-west-2.s3.amazonaws.com", "charlie_public_key": "-----BEGIN PUBLIC KEY-----PUBLIC_KEY_EXAMPLE\n-----END PUBLIC KEY-----", "instance_service_endpoint": "opsworks-instance-service.us-west-2.amazonaws.com", "instance_service_port": "443", "instance_service_region": "us-west-2", "instance_service_ssl_verify_peer": "true", "instance_service_use_ssl": "true", "ops_works_endpoint": "opsworks.us-west-2.amazonaws.com", "ops_works_port": "443", "ops_works_region": "us-west-2", "ops_works_ssl_verify_peer": "true", "ops_works_use_ssl": "true", "verbose": "false", "wait_between_runs": "30" } }

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的執行堆疊命令

下列程式碼範例示範如何使用 describe-stack-summary

AWS CLI

描述堆疊的組態

下列describe-stack-summary命令會傳回指定堆疊組態的摘要。

aws opsworks --region us-east-1 describe-stack-summary --stack-id 8c428b08-a1a1-46ce-a5f8-feddc43771b8

輸出:

{ "StackSummary": { "StackId": "8c428b08-a1a1-46ce-a5f8-feddc43771b8", "InstancesCount": { "Booting": 1 }, "Name": "CLITest", "AppsCount": 1, "LayersCount": 1, "Arn": "arn:aws:opsworks:us-west-2:123456789012:stack/8c428b08-a1a1-46ce-a5f8-feddc43771b8/" } }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的堆疊。

下列程式碼範例示範如何使用 describe-stacks

AWS CLI

描述堆疊

下列describe-stacks命令說明 帳戶的堆疊。

aws opsworks --region us-east-1 describe-stacks

輸出:

{ "Stacks": [ { "ServiceRoleArn": "arn:aws:iam::444455556666:role/aws-opsworks-service-role", "StackId": "aeb7523e-7c8b-49d4-b866-03aae9d4fbcb", "DefaultRootDeviceType": "instance-store", "Name": "TomStack-sd", "ConfigurationManager": { "Version": "11.4", "Name": "Chef" }, "UseCustomCookbooks": true, "CustomJson": "{\n \"tomcat\": {\n \"base_version\": 7,\n \"java_opts\": \"-Djava.awt.headless=true -Xmx256m\"\n },\n \"datasources\": {\n \"ROOT\": \"jdbc/mydb\"\n }\n}", "Region": "us-east-1", "DefaultInstanceProfileArn": "arn:aws:iam::444455556666:instance-profile/aws-opsworks-ec2-role", "CustomCookbooksSource": { "Url": "git://github.com/example-repo/tomcustom.git", "Type": "git" }, "DefaultAvailabilityZone": "us-east-1a", "HostnameTheme": "Layer_Dependent", "Attributes": { "Color": "rgb(45, 114, 184)" }, "DefaultOs": "Amazon Linux", "CreatedAt": "2013-08-01T22:53:42+00:00" }, { "ServiceRoleArn": "arn:aws:iam::444455556666:role/aws-opsworks-service-role", "StackId": "40738975-da59-4c5b-9789-3e422f2cf099", "DefaultRootDeviceType": "instance-store", "Name": "MyStack", "ConfigurationManager": { "Version": "11.4", "Name": "Chef" }, "UseCustomCookbooks": false, "Region": "us-east-1", "DefaultInstanceProfileArn": "arn:aws:iam::444455556666:instance-profile/aws-opsworks-ec2-role", "CustomCookbooksSource": {}, "DefaultAvailabilityZone": "us-east-1a", "HostnameTheme": "Layer_Dependent", "Attributes": { "Color": "rgb(45, 114, 184)" }, "DefaultOs": "Amazon Linux", "CreatedAt": "2013-10-25T19:24:30+00:00" } ] }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的堆疊。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DescribeStacks

下列程式碼範例示範如何使用 describe-timebased-auto-scaling

AWS CLI

描述執行個體的時間型擴展組態

下列範例說明指定執行個體的時間型擴展組態。執行個體會依其執行個體 ID 識別,您可以在執行個體的詳細資訊頁面上找到,或執行 describe-instances

aws opsworks describe-time-based-auto-scaling --region us-east-1 --instance-ids 701f2ffe-5d8e-4187-b140-77b75f55de8d

輸出:範例具有單一時間型執行個體。

{ "TimeBasedAutoScalingConfigurations": [ { "InstanceId": "701f2ffe-5d8e-4187-b140-77b75f55de8d", "AutoScalingSchedule": { "Monday": { "11": "on", "10": "on", "13": "on", "12": "on" }, "Tuesday": { "11": "on", "10": "on", "13": "on", "12": "on" } } } ] }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的自動時間式擴展的運作方式。

下列程式碼範例示範如何使用 describe-user-profiles

AWS CLI

描述使用者設定檔

下列describe-user-profiles命令說明帳戶的使用者設定檔。

aws opsworks --region us-east-1 describe-user-profiles

輸出:

{ "UserProfiles": [ { "IamUserArn": "arn:aws:iam::123456789012:user/someuser", "SshPublicKey": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAkOuP7i80q3Cko...", "AllowSelfManagement": true, "Name": "someuser", "SshUsername": "someuser" }, { "IamUserArn": "arn:aws:iam::123456789012:user/cli-user-test", "AllowSelfManagement": true, "Name": "cli-user-test", "SshUsername": "myusername" } ] }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的 ManagingOpsWorks 使用者。 AWS OpsWorks

下列程式碼範例示範如何使用 describe-volumes

AWS CLI

描述堆疊的磁碟區

下列範例說明堆疊的 EBS 磁碟區。

aws opsworks --region us-east-1 describe-volumes --stack-id 8c428b08-a1a1-46ce-a5f8-feddc43771b8

輸出:

{ "Volumes": [ { "Status": "in-use", "AvailabilityZone": "us-west-2a", "Name": "CLITest", "InstanceId": "dfe18b02-5327-493d-91a4-c5c0c448927f", "VolumeType": "standard", "VolumeId": "56b66fbd-e1a1-4aff-9227-70f77118d4c5", "Device": "/dev/sdi", "Ec2VolumeId": "vol-295c1638", "MountPoint": "/mnt/myvolume", "Size": 1 } ] }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的資源管理。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DescribeVolumes

下列程式碼範例示範如何使用 detach-elastic-load-balancer

AWS CLI

將負載平衡器從其層分離

下列範例會將負載平衡器從其 layer 分離,以其名稱識別。

aws opsworks --region us-east-1 detach-elastic-load-balancer --elastic-load-balancer-name Java-LB --layer-id 888c5645-09a5-4d0e-95a8-812ef1db76a4

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的 Elastic Load Balancing。

下列程式碼範例示範如何使用 disassociate-elastic-ip

AWS CLI

取消彈性 IP 地址與執行個體的關聯

下列範例會取消彈性 IP 地址與指定執行個體的關聯。

aws opsworks --region us-east-1 disassociate-elastic-ip --elastic-ip 54.148.130.96

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的資源管理。

下列程式碼範例示範如何使用 get-hostname-suggestion

AWS CLI

取得 layer 的下一個主機名稱

下列範例取得指定 layer 的下一個產生的主機名稱。此範例使用的 layer 是具有一個執行個體的 Java Application Server layer。堆疊的主機名稱主題是預設值 Layer_Dependent。

aws opsworks --region us-east-1 get-hostname-suggestion --layer-id 888c5645-09a5-4d0e-95a8-812ef1db76a4

輸出:

{ "Hostname": "java-app2", "LayerId": "888c5645-09a5-4d0e-95a8-812ef1db76a4" }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的建立新堆疊。

下列程式碼範例示範如何使用 reboot-instance

AWS CLI

重新啟動執行個體

下列範例會重新啟動執行個體。

aws opsworks --region us-east-1 reboot-instance --instance-id dfe18b02-5327-493d-91a4-c5c0c448927f

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的重新啟動執行個體。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 RebootInstance

下列程式碼範例示範如何使用 register-elastic-ip

AWS CLI

向堆疊註冊彈性 IP 地址

下列範例會使用指定的堆疊,註冊由其 IP 地址識別的彈性 IP 地址。

注意:彈性 IP 地址必須與堆疊位於相同的區域。

aws opsworks register-elastic-ip --region us-east-1 --stack-id d72553d4-8727-448c-9b00-f024f0ba1b06 --elastic-ip 54.148.130.96

輸出

{ "ElasticIp": "54.148.130.96" }

更多資訊

如需詳細資訊,請參閱 OpsWorks 使用者指南中的使用 Stack 註冊彈性 IP 地址。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 RegisterElasticIp

下列程式碼範例示範如何使用 register-rds-db-instance

AWS CLI

向堆疊註冊 Amazon RDS 執行個體

下列範例會使用指定的堆疊,註冊由其 Amazon Resource Name (ARN) 識別的 Amazon RDS 資料庫執行個體。它也會指定執行個體的主使用者名稱和密碼。請注意, AWS OpsWorks 不會驗證其中一個值。如果其中一個不正確,您的應用程式將無法連線至資料庫。

aws opsworks register-rds-db-instance --region us-east-1 --stack-id d72553d4-8727-448c-9b00-f024f0ba1b06 --rds-db-instance-arn arn:aws:rds:us-west-2:123456789012:db:clitestdb --db-user cliuser --db-password some23!pwd

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的使用 Stack 註冊 Amazon RDS 執行個體。

下列程式碼範例示範如何使用 register-volume

AWS CLI

向堆疊註冊 Amazon EBS 磁碟區

下列範例會使用指定的堆疊,註冊由其磁碟區 ID 識別的 Amazon EBS 磁碟區。

aws opsworks register-volume --region us-east-1 --stack-id d72553d4-8727-448c-9b00-f024f0ba1b06 --ec-2-volume-id vol-295c1638

輸出:

{ "VolumeId": "ee08039c-7cb7-469f-be10-40fb7f0c05e8" }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的使用堆疊註冊 Amazon EBS 磁碟區。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 RegisterVolume

下列程式碼範例示範如何使用 register

AWS CLI

向堆疊註冊執行個體

下列範例顯示使用 AWS Opsworks 外部建立的堆疊註冊執行個體的各種方式。您可以從要註冊register的執行個體執行,或從單獨的工作站執行。如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的註冊 Amazon EC2 和現場部署執行個體。

注意:為了簡潔起見,範例會省略region引數。

註冊 Amazon EC2 執行個體

若要表示您正在註冊 EC2 執行個體,請將--infrastructure-class引數設定為 ec2

下列範例會將 EC2 執行個體註冊至來自不同工作站的指定堆疊。執行個體會以其 EC2 ID 識別i-12345678。此範例使用工作站的預設 SSH 使用者名稱,並嘗試使用不需要密碼的身分驗證技術登入執行個體,例如預設私有 SSH 金鑰。如果失敗, 會register查詢密碼。

aws opsworks register --infrastructure-class=ec2 --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb i-12345678

下列範例會將 EC2 執行個體註冊至個別工作站的指定堆疊。它使用 --ssh-username--ssh-private-key引數來明確指定命令用來登入執行個體的 SSH 使用者名稱和私有金鑰檔案。 ec2-user是 Amazon Linux 執行個體的標準使用者名稱。針對 Ubuntu 執行個體ubuntu使用 。

aws opsworks register --infrastructure-class=ec2 --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb --ssh-username ec2-user --ssh-private-key ssh_private_key i-12345678

下列範例會註冊執行 register命令的 EC2 執行個體。使用 SSH 登入執行個體,並使用 --local 引數執行register,而非執行個體 ID 或主機名稱。

aws opsworks register --infrastructure-class ec2 --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb --local

註冊內部部署執行個體

若要表示您正在註冊現場部署執行個體,請將--infrastructure-class引數設定為 on-premises

下列範例會將現有的現場部署執行個體註冊到來自不同工作站的指定堆疊。執行個體的識別方式是其 IP 地址 192.0.2.3。此範例使用工作站的預設 SSH 使用者名稱,並嘗試使用不需要密碼的身分驗證技術登入執行個體,例如預設私有 SSH 金鑰。如果失敗, 會register查詢密碼。

aws opsworks register --infrastructure-class on-premises --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb 192.0.2.3

下列範例會將內部部署執行個體註冊為來自不同工作站的指定堆疊。執行個體的識別方式是其主機名稱 host1--override-... 引數 direct AWS OpsWorks 會分別顯示webserver1為主機名稱192.0.2.310.0.0.2執行個體的公有和私有 IP 地址。

aws opsworks register --infrastructure-class on-premises --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb --override-hostname webserver1 --override-public-ip 192.0.2.3 --override-private-ip 10.0.0.2 host1

下列範例會將內部部署執行個體註冊為來自不同工作站的指定堆疊。執行個體的識別方式是 IP 地址。 會使用指定的 SSH 使用者名稱和私有金鑰檔案register登入執行個體。

aws opsworks register --infrastructure-class on-premises --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb --ssh-username admin --ssh-private-key ssh_private_key 192.0.2.3

下列範例會將現有的現場部署執行個體註冊到來自不同工作站的指定堆疊。命令會使用指定 SSH 密碼和執行個體 IP 地址的自訂 SSH 命令字串登入執行個體。

aws opsworks register --infrastructure-class on-premises --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb --override-ssh "sshpass -p 'mypassword' ssh your-user@192.0.2.3"

下列範例會註冊執行 register命令的現場部署執行個體。使用 SSH 登入執行個體,並使用 --local 引數執行register,而非執行個體 ID 或主機名稱。

aws opsworks register --infrastructure-class on-premises --stack-id 935450cc-61e0-4b03-a3e0-160ac817d2bb --local

輸出:下列是註冊 EC2 執行個體的典型輸出。

Warning: Permanently added '52.11.41.206' (ECDSA) to the list of known hosts. % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 6403k 100 6403k 0 0 2121k 0 0:00:03 0:00:03 --:--:-- 2121k [Tue, 24 Feb 2015 20:48:37 +0000] opsworks-init: Initializing AWS OpsWorks environment [Tue, 24 Feb 2015 20:48:37 +0000] opsworks-init: Running on Ubuntu [Tue, 24 Feb 2015 20:48:37 +0000] opsworks-init: Checking if OS is supported [Tue, 24 Feb 2015 20:48:37 +0000] opsworks-init: Running on supported OS [Tue, 24 Feb 2015 20:48:37 +0000] opsworks-init: Setup motd [Tue, 24 Feb 2015 20:48:37 +0000] opsworks-init: Executing: ln -sf --backup /etc/motd.opsworks-static /etc/motd [Tue, 24 Feb 2015 20:48:37 +0000] opsworks-init: Enabling multiverse repositories [Tue, 24 Feb 2015 20:48:37 +0000] opsworks-init: Customizing APT environment [Tue, 24 Feb 2015 20:48:37 +0000] opsworks-init: Installing system packages [Tue, 24 Feb 2015 20:48:37 +0000] opsworks-init: Executing: dpkg --configure -a [Tue, 24 Feb 2015 20:48:37 +0000] opsworks-init: Executing with retry: apt-get update [Tue, 24 Feb 2015 20:49:13 +0000] opsworks-init: Executing: apt-get install -y ruby ruby-dev libicu-dev libssl-dev libxslt-dev libxml2-dev libyaml-dev monit [Tue, 24 Feb 2015 20:50:13 +0000] opsworks-init: Using assets bucket from environment: 'opsworks-instance-assets-us-east-1.s3.amazonaws.com'. [Tue, 24 Feb 2015 20:50:13 +0000] opsworks-init: Installing Ruby for the agent [Tue, 24 Feb 2015 20:50:13 +0000] opsworks-init: Executing: /tmp/opsworks-agent-installer.YgGq8wF3UUre6yDy/opsworks-agent-installer/opsworks-agent/bin/installer_wrapper.sh -r -R opsworks-instance-assets-us-east-1.s3.amazonaws.com [Tue, 24 Feb 2015 20:50:44 +0000] opsworks-init: Starting the installer Instance successfully registered. Instance ID: 4d6d1710-ded9-42a1-b08e-b043ad7af1e2 Connection to 52.11.41.206 closed.

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks AWS OpsWorks Stack 註冊執行個體。

  • 如需 API 詳細資訊,請參閱在AWS CLI 命令參考註冊

下列程式碼範例示範如何使用 set-load-based-auto-scaling

AWS CLI

設定 layer 的負載型擴展組態

下列範例會啟用指定 layer 的負載型擴展,並設定該 layer 的組態。您必須使用 create-instance 將負載型執行個體新增至 layer。

aws opsworks --region us-east-1 set-load-based-auto-scaling --layer-id 523569ae-2faf-47ac-b39e-f4c4b381f36d --enable --up-scaling file://upscale.json --down-scaling file://downscale.json

此範例會將升級閾值設定放入名為 的工作目錄中的個別檔案中upscale.json,其中包含下列項目。

{ "InstanceCount": 2, "ThresholdsWaitTime": 3, "IgnoreMetricsTime": 3, "CpuThreshold": 85, "MemoryThreshold": 85, "LoadThreshold": 85 }

此範例會將縮減閾值設定放入名為 的工作目錄中的個別檔案中downscale.json,其中包含下列項目。

{ "InstanceCount": 2, "ThresholdsWaitTime": 3, "IgnoreMetricsTime": 3, "CpuThreshold": 35, "MemoryThreshold": 30, "LoadThreshold": 30 }

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的使用自動負載型擴展。

下列程式碼範例示範如何使用 set-permission

AWS CLI

授予每個stack AWS OpsWorks 許可層級

當您透過呼叫 將 AWS Identity and Access Management (IAM) 使用者匯入到 AWS OpsWorks 時create-user-profile,使用者只有連接 IAM 政策授予的那些許可。您可以修改使用者的政策來授予 AWS OpsWorks 許可。不過,匯入使用者通常比較容易,然後使用 set-permission命令,針對使用者需要存取的每個堆疊授予使用者標準許可層級。

下列範例會授予 Amazon Resource Name (ARN) 所識別之使用者的指定堆疊許可。此範例會授予使用者管理許可層級,在堆疊的執行個體上具有 sudo 和 SSH 權限。

aws opsworks set-permission --region us-east-1 --stack-id 71c7ca72-55ae-4b6a-8ee1-a8dcded3fa0f --level manage --iam-user-arn arn:aws:iam::123456789102:user/cli-user-test --allow-ssh --allow-sudo

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks AWS OpsWorks 使用者每個堆疊許可。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 SetPermission

下列程式碼範例示範如何使用 set-time-based-auto-scaling

AWS CLI

設定 layer 的時間型擴展組態

下列範例會設定指定執行個體的時間型組態。您必須先使用 將執行個體create-instance新增至 layer。

aws opsworks --region us-east-1 set-time-based-auto-scaling --instance-id 69b6237c-08c0-4edb-a6af-78f3d01cedf2 --auto-scaling-schedule file://schedule.json

此範例會將排程放入名為 的工作目錄中的個別檔案中schedule.json。在此範例中,執行個體在週一和週二的中午 UTC (國際標準時間) 左右會開啟數小時。

{ "Monday": { "10": "on", "11": "on", "12": "on", "13": "on" }, "Tuesday": { "10": "on", "11": "on", "12": "on", "13": "on" } }

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的使用自動時間擴展。

下列程式碼範例示範如何使用 start-instance

AWS CLI

啟動執行個體

下列start-instance命令會啟動指定的 24 小時全年無休執行個體。

aws opsworks start-instance --instance-id f705ee48-9000-4890-8bd3-20eb05825aaf

輸出:無。使用 describe-instances 檢查執行個體的狀態。

秘訣 您可以呼叫 start-stack,以一個命令啟動堆疊中的每個離線執行個體。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的手動啟動、停止和重新啟動 24 小時全年無休的執行個體。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 StartInstance

下列程式碼範例示範如何使用 start-stack

AWS CLI

啟動堆疊的執行個體

下列範例會啟動堆疊的所有 24 小時全年無休執行個體。若要啟動特定執行個體,請使用 start-instance

aws opsworks --region us-east-1 start-stack --stack-id 8c428b08-a1a1-46ce-a5f8-feddc43771b8

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的啟動執行個體。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 StartStack

下列程式碼範例示範如何使用 stop-instance

AWS CLI

停止執行個體

下列範例會停止指定的執行個體,以其執行個體 ID 識別。您可以前往 AWS OpsWorks 主控台上的執行個體詳細資訊頁面,或執行 describe-instances命令,以取得執行個體 ID。

aws opsworks stop-instance --region us-east-1 --instance-id 3a21cfac-4a1f-4ce2-a921-b2cfba6f7771

您可以呼叫 來重新啟動停止的執行個體,start-instance也可以呼叫 來刪除執行個體delete-instance

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的停止執行個體。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 StopInstance

下列程式碼範例示範如何使用 stop-stack

AWS CLI

停止堆疊的執行個體

下列範例會停止堆疊的所有 24 小時全年無休執行個體。若要停止特定執行個體,請使用 stop-instance

aws opsworks --region us-east-1 stop-stack --stack-id 8c428b08-a1a1-46ce-a5f8-feddc43771b8

輸出:無輸出。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的停止執行個體。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 StopStack

下列程式碼範例示範如何使用 unassign-instance

AWS CLI

從其層取消指派已註冊的執行個體

下列unassign-instance命令會從其連接的圖層取消指派執行個體。

aws opsworks --region us-east-1 unassign-instance --instance-id 4d6d1710-ded9-42a1-b08e-b043ad7af1e2

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的取消指派已註冊的執行個體。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UnassignInstance

下列程式碼範例示範如何使用 unassign-volume

AWS CLI

從其執行個體取消指派磁碟區

下列範例會從其執行個體取消指派已註冊的 Amazon Elastic Block Store (Amazon EBS) 磁碟區。磁碟區是以磁碟區 ID 識別,這是當您向堆疊註冊磁碟區時, AWS OpsWorks 指派的 GUID,而不是 Amazon Elastic Compute Cloud (Amazon EC2) 磁碟區 ID。

aws opsworks --region us-east-1 unassign-volume --volume-id 8430177d-52b7-4948-9c62-e195af4703df

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的取消指派 Amazon EBS 磁碟區。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UnassignVolume

下列程式碼範例示範如何使用 update-app

AWS CLI

更新應用程式

下列範例會更新指定的應用程式以變更其名稱。

aws opsworks --region us-east-1 update-app --app-id 26a61ead-d201-47e3-b55c-2a7c666942f8 --name NewAppName

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的編輯應用程式。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateApp

下列程式碼範例示範如何使用 update-elastic-ip

AWS CLI

更新彈性 IP 地址名稱

下列範例會更新指定彈性 IP 地址的名稱。

aws opsworks --region us-east-1 update-elastic-ip --elastic-ip 54.148.130.96 --name NewIPName

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的資源管理。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateElasticIp

下列程式碼範例示範如何使用 update-instance

AWS CLI

更新執行個體

下列範例會更新指定執行個體的類型。

aws opsworks --region us-east-1 update-instance --instance-id dfe18b02-5327-493d-91a4-c5c0c448927f --instance-type c3.xlarge

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的編輯執行個體組態。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateInstance

下列程式碼範例示範如何使用 update-layer

AWS CLI

更新 layer

下列範例會更新指定的 layer 以使用 Amazon EBS 最佳化執行個體。

aws opsworks --region us-east-1 update-layer --layer-id 888c5645-09a5-4d0e-95a8-812ef1db76a4 --use-ebs-optimized-instances

輸出:無。

更多資訊

如需詳細資訊,請參閱 OpsWorks AWS 使用者指南中的編輯 OpsWorks Layer 的組態。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateLayer

下列程式碼範例示範如何使用 update-my-user-profile

AWS CLI

更新使用者的設定檔

下列範例會將development使用者的設定檔更新為使用指定的 SSH 公有金鑰。使用者的 AWS 登入資料由 credentials 檔案 (~\.aws\credentials) 中的development設定檔表示,而金鑰位於工作目錄中的 .pem 檔案。

aws opsworks --region us-east-1 --profile development update-my-user-profile --ssh-public-key file://development_key.pem

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的編輯OpsWorks 使用者設定。 AWS OpsWorks

下列程式碼範例示範如何使用 update-rds-db-instance

AWS CLI

更新已註冊的 Amazon RDS 資料庫執行個體

下列範例會更新 Amazon RDS 執行個體的主要密碼值。請注意,此命令不會變更 RDS 執行個體的主密碼,只會變更您提供給 to AWS OpsWorks 的密碼。如果此密碼與 RDS 執行個體的密碼不相符,您的應用程式將無法連線至資料庫。

aws opsworks --region us-east-1 update-rds-db-instance --db-password 123456789

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的使用 Stack 註冊 Amazon RDS 執行個體。

下列程式碼範例示範如何使用 update-volume

AWS CLI

更新已註冊的磁碟區

下列範例會更新已註冊的 Amazon Elastic Block Store (Amazon EBS) 磁碟區的掛載點。磁碟區是以磁碟區 ID 識別,這是當您向堆疊註冊磁碟區時, AWS OpsWorks 指派給磁碟區的 GUID,而不是 Amazon Elastic Compute Cloud (Amazon EC2) 磁碟區 ID:

aws opsworks --region us-east-1 update-volume --volume-id 8430177d-52b7-4948-9c62-e195af4703df --mount-point /mnt/myvol

輸出:無。

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南中的將 Amazon EBS 磁碟區指派給執行個體。

  • 如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateVolume