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

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

AWS OpsWorks CM 使用 的範例 AWS CLI

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

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

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

主題

動作

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

AWS CLI

若要關聯節點

下列associate-node命令會將名為 的節點i-44de882p與名為 的 Chef Automate 伺服器建立關聯automate-06,這表示automate-06伺服器會管理節點,並透過由 associate-node 命令安裝在節點上的chef-client代理程式軟體,將配方命令傳達給節點。有效的節點名稱為EC2執行個體 IDs。:

aws opsworks-cm associate-node --server-name "automate-06" --node-name "i-43de882p" --engine-attributes "Name=CHEF_ORGANIZATION,Value='MyOrganization' Name=CHEF_NODE_PUBLIC_KEY,Value='Public_key_contents'"

命令傳回的輸出類似於以下內容。輸出:

{ "NodeAssociationStatusToken": "AHUY8wFe4pdXtZC5DiJa5SOLp5o14DH//rHRqHDWXxwVoNBxcEy4V7R0NOFymh7E/1HumOBPsemPQFE6dcGaiFk" }

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南 中的 AWS OpsWorks 為 Chef Automate 在 中自動新增節點。

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

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

AWS CLI

若要建立備份

下列create-backup命令會啟動 automate-06 us-east-1區域中名為 的 Chef Automate 伺服器手動備份。命令會將描述性訊息新增至 --description 參數中的備份。

aws opsworks-cm create-backup \ --server-name 'automate-06' \ --description "state of my infrastructure at launch"

輸出會顯示下列有關新備份的資訊。

輸出:

{ "Backups": [ { "BackupArn": "string", "BackupId": "automate-06-20160729133847520", "BackupType": "MANUAL", "CreatedAt": 2016-07-29T13:38:47.520Z, "Description": "state of my infrastructure at launch", "Engine": "Chef", "EngineModel": "Single", "EngineVersion": "12", "InstanceProfileArn": "arn:aws:iam::1019881987024:instance-profile/automate-06-1010V4UU2WRM2", "InstanceType": "m4.large", "KeyPair": "", "PreferredBackupWindow": "", "PreferredMaintenanceWindow": "", "S3LogUrl": "https://s3.amazonaws.com/<bucket-name>/automate-06-20160729133847520", "SecurityGroupIds": [ "sg-1a24c270" ], "ServerName": "automate-06", "ServiceRoleArn": "arn:aws:iam::1019881987024:role/aws-opsworks-cm-service-role.1114810729735", "Status": "OK", "StatusDescription": "", "SubnetIds": [ "subnet-49436a18" ], "ToolsVersion": "string", "UserArn": "arn:aws:iam::1019881987024:user/opsworks-user" } ], }

如需詳細資訊,請參閱 使用者指南 中的備份和還原 AWS OpsWorks Chef Automate Server 的 。 AWS OpsWorks

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

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

AWS CLI

建立伺服器

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

aws opsworks-cm create-server \ --engine "Chef" \ --engine-model "Single" \ --engine-version "12" \ --server-name "automate-06" \ --instance-profile-arn "arn:aws:iam::1019881987024:instance-profile/aws-opsworks-cm-ec2-role" \ --instance-type "t2.medium" \ --key-pair "amazon-test" \ --service-role-arn "arn:aws:iam::044726508045:role/aws-opsworks-cm-service-role"

輸出會顯示與新伺服器類似的資訊:

{ "Server": { "BackupRetentionCount": 10, "CreatedAt": 2016-07-29T13:38:47.520Z, "DisableAutomatedBackup": FALSE, "Endpoint": "https://opsworks-cm.us-east-1.amazonaws.com", "Engine": "Chef", "EngineAttributes": [ { "Name": "CHEF_DELIVERY_ADMIN_PASSWORD", "Value": "1Password1" } ], "EngineModel": "Single", "EngineVersion": "12", "InstanceProfileArn": "arn:aws:iam::1019881987024:instance-profile/aws-opsworks-cm-ec2-role", "InstanceType": "t2.medium", "KeyPair": "amazon-test", "MaintenanceStatus": "", "PreferredBackupWindow": "Sun:02:00", "PreferredMaintenanceWindow": "00:00", "SecurityGroupIds": [ "sg-1a24c270" ], "ServerArn": "arn:aws:iam::1019881987024:instance/automate-06-1010V4UU2WRM2", "ServerName": "automate-06", "ServiceRoleArn": "arn:aws:iam::1019881987024:role/aws-opsworks-cm-service-role", "Status": "CREATING", "StatusReason": "", "SubnetIds": [ "subnet-49436a18" ] } }

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

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

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

AWS CLI

若要刪除備份

下列delete-backup命令會刪除由備份 ID 識別的 Chef Automate 伺服器的手動或自動備份。當您接近可儲存的備份數量上限,或想要將 Amazon S3 儲存成本降至最低時,此命令很有用。:

aws opsworks-cm delete-backup --backup-id "automate-06-2016-11-19T23:42:40.240Z"

輸出會顯示備份刪除是否成功。

更多資訊

如需詳細資訊,請參閱 使用者指南 中的備份和還原 AWS OpsWorks Chef Automate Server 的 。 AWS OpsWorks

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

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

AWS CLI

若要刪除伺服器

下列delete-server命令會刪除由伺服器名稱識別的 Chef Automate 伺服器。刪除伺服器後,請求不再傳回該伺服器DescribeServer。:

aws opsworks-cm delete-server --server-name "automate-06"

輸出會顯示伺服器刪除是否成功。

更多資訊

如需詳細資訊,請參閱 使用者指南 中的 AWS OpsWorks 為 Chef Automate Server 刪除 。 AWS OpsWorks

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

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

AWS CLI

描述帳戶屬性

下列describe-account-attributes命令會傳回您帳戶 AWS OpsWorks 對 Chef Automate 資源使用 的相關資訊。:

aws opsworks-cm describe-account-attributes

命令傳回的每個帳戶屬性項目的輸出類似於以下內容。輸出:

{ "Attributes": [ { "Maximum": 5, "Name": "ServerLimit", "Used": 2 } ] }

更多資訊

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

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

AWS CLI

描述備份

下列describe-backups命令會傳回與預設區域中的帳戶相關聯的所有備份資訊。

aws opsworks-cm describe-backups

命令傳回的每個備份項目的輸出類似於以下內容。

輸出:

{ "Backups": [ { "BackupArn": "string", "BackupId": "automate-06-20160729133847520", "BackupType": "MANUAL", "CreatedAt": 2016-07-29T13:38:47.520Z, "Description": "state of my infrastructure at launch", "Engine": "Chef", "EngineModel": "Single", "EngineVersion": "12", "InstanceProfileArn": "arn:aws:iam::1019881987024:instance-profile/automate-06-1010V4UU2WRM2", "InstanceType": "m4.large", "KeyPair": "", "PreferredBackupWindow": "", "PreferredMaintenanceWindow": "", "S3LogUrl": "https://s3.amazonaws.com/<bucket-name>/automate-06-20160729133847520", "SecurityGroupIds": [ "sg-1a24c270" ], "ServerName": "automate-06", "ServiceRoleArn": "arn:aws:iam::1019881987024:role/aws-opsworks-cm-service-role.1114810729735", "Status": "Successful", "StatusDescription": "", "SubnetIds": [ "subnet-49436a18" ], "ToolsVersion": "string", "UserArn": "arn:aws:iam::1019881987024:user/opsworks-user" } ], }

如需詳細資訊,請參閱 使用者指南 中的備份和還原 AWS OpsWorks Chef Automate Server 的 。 AWS OpsWorks

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

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

AWS CLI

描述事件

下列describe-events範例會傳回與指定 Chef Automate 伺服器相關聯的所有事件的相關資訊。

aws opsworks-cm describe-events \ --server-name 'automate-06'

命令傳回的每個事件項目的輸出類似於下列範例:

{ "ServerEvents": [ { "CreatedAt": 2016-07-29T13:38:47.520Z, "LogUrl": "https://s3.amazonaws.com/<bucket-name>/automate-06-20160729133847520", "Message": "Updates successfully installed.", "ServerName": "automate-06" } ] }

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南 中的一般疑難排解秘訣

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

下列程式碼範例示範如何使用 describe-node-association-status

AWS CLI

描述節點關聯狀態

下列describe-node-association-status命令會傳回請求的狀態,以將節點與名為 的 Chef Automate 伺服器建立關聯automate-06

aws opsworks-cm describe-node-association-status --server-name "automate-06" --node-association-status-token "AflJKl+/GoKLZJBdDQEx0O65CDi57blQe9nKM8joSok0pQ9xr8DqApBN9/1O6sLdSvlfDEKkEx+eoCHvjoWHaOs="

命令傳回的每個帳戶屬性項目的輸出類似於以下內容。輸出:

{ "NodeAssociationStatus": "IN_PROGRESS" }

更多資訊

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

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

AWS CLI

描述伺服器

下列describe-servers命令會傳回與您的帳戶相關聯的所有伺服器,以及您預設區域中的資訊。:

aws opsworks-cm describe-servers

命令傳回的每個伺服器項目的輸出類似於以下內容。輸出:

{ "Servers": [ { "BackupRetentionCount": 8, "CreatedAt": 2016-07-29T13:38:47.520Z, "DisableAutomatedBackup": FALSE, "Endpoint": "https://opsworks-cm.us-east-1.amazonaws.com", "Engine": "Chef", "EngineAttributes": [ { "Name": "CHEF_DELIVERY_ADMIN_PASSWORD", "Value": "1Password1" } ], "EngineModel": "Single", "EngineVersion": "12", "InstanceProfileArn": "arn:aws:iam::1019881987024:instance-profile/automate-06-1010V4UU2WRM2", "InstanceType": "m4.large", "KeyPair": "", "MaintenanceStatus": "SUCCESS", "PreferredBackupWindow": "03:00", "PreferredMaintenanceWindow": "Mon:09:00", "SecurityGroupIds": [ "sg-1a24c270" ], "ServerArn": "arn:aws:iam::1019881987024:instance/automate-06-1010V4UU2WRM2", "ServerName": "automate-06", "ServiceRoleArn": "arn:aws:iam::1019881987024:role/aws-opsworks-cm-service-role.1114810729735", "Status": "HEALTHY", "StatusReason": "", "SubnetIds": [ "subnet-49436a18" ] } ] }

更多資訊

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

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

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

AWS CLI

若要取消節點的關聯

下列disassociate-node命令會取消與名為 的節點的關聯i-44de882p,由名為 的 Chef Automate 伺服器從管理中移除節點automate-06。有效的節點名稱為EC2執行個體 IDs。:

aws opsworks-cm disassociate-node --server-name "automate-06" --node-name "i-43de882p" --engine-attributes "Name=CHEF_ORGANIZATION,Value='MyOrganization' Name=CHEF_NODE_PUBLIC_KEY,Value='Public_key_contents'"

命令傳回的輸出類似於以下內容。輸出:

{ "NodeAssociationStatusToken": "AHUY8wFe4pdXtZC5DiJa5SOLp5o14DH//rHRqHDWXxwVoNBxcEy4V7R0NOFymh7E/1HumOBPsemPQFE6dcGaiFk" }

更多資訊

如需詳細資訊,請參閱 使用者指南 中的 AWS OpsWorks 為 Chef Automate Server 刪除 。 AWS OpsWorks

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

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

AWS CLI

若要還原伺服器

下列restore-server命令會從 ID 為 的備份執行名為 automate-06 的 Chef Automate 伺服器就地還原automate-06-2016-11-22T16:13:27.998Z。還原伺服器會還原 Chef Automate 伺服器在執行指定備份時管理的節點連線。

aws opsworks-cm restore-server --backup-id "automate-06-2016-11-22T16:13:27.998Z" --server-name "automate-06"

輸出僅是命令 ID。輸出:

(None)

更多資訊

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南 中的還原 Chef Automate Server AWS OpsWorks 失敗。

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

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

AWS CLI

開始維護

下列start-maintenance範例會在預設區域中指定的 Chef Automate 或 Puppet Enterprise 伺服器上手動開始維護。如果較早的自動維護嘗試失敗,且解決了維護失敗的根本原因,此命令很有用。

aws opsworks-cm start-maintenance \ --server-name 'automate-06'

輸出:

{ "Server": { "AssociatePublicIpAddress": true, "BackupRetentionCount": 10, "ServerName": "automate-06", "CreatedAt": 1569229584.842, "CloudFormationStackArn": "arn:aws:cloudformation:us-west-2:123456789012:stack/aws-opsworks-cm-instance-automate-06-1606611794746/EXAMPLE0-31de-11eb-bdb0-0a5b0a1353b8", "DisableAutomatedBackup": false, "Endpoint": "automate-06-EXAMPLEvr8gjfk5f.us-west-2.opsworks-cm.io", "Engine": "ChefAutomate", "EngineModel": "Single", "EngineAttributes": [], "EngineVersion": "2020-07", "InstanceProfileArn": "arn:aws:iam::123456789012:instance-profile/aws-opsworks-cm-ec2-role", "InstanceType": "m5.large", "PreferredMaintenanceWindow": "Sun:01:00", "PreferredBackupWindow": "Sun:15:00", "SecurityGroupIds": [ "sg-EXAMPLE" ], "ServiceRoleArn": "arn:aws:iam::123456789012:role/service-role/aws-opsworks-cm-service-role", "Status": "UNDER_MAINTENANCE", "SubnetIds": [ "subnet-EXAMPLE" ], "ServerArn": "arn:aws:opsworks-cm:us-west-2:123456789012:server/automate-06/0148382d-66b0-4196-8274-d1a2b6dff8d1" } }

如需詳細資訊,請參閱 AWS OpsWorks 使用者指南 中的系統維護 (Puppet Enterprise 伺服器)系統維護 (Chef Automate 伺服器)

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

下列程式碼範例示範如何使用 update-server-engine-attributes

AWS CLI

更新伺服器引擎屬性

下列update-server-engine-attributes命令會更新名為 的 Chef Automate 伺服器CHEF_PIVOTAL_KEY引擎屬性的值automate-06。目前無法變更其他引擎屬性的值。

aws opsworks-cm update-server-engine-attributes \ --attribute-name CHEF_PIVOTAL_KEY \ --attribute-value "new key value" \ --server-name "automate-06"

輸出會顯示與下列有關已更新伺服器的資訊。

{ "Server": { "BackupRetentionCount": 2, "CreatedAt": 2016-07-29T13:38:47.520Z, "DisableAutomatedBackup": FALSE, "Endpoint": "https://opsworks-cm.us-east-1.amazonaws.com", "Engine": "Chef", "EngineAttributes": [ { "Name": "CHEF_PIVOTAL_KEY", "Value": "new key value" } ], "EngineModel": "Single", "EngineVersion": "12", "InstanceProfileArn": "arn:aws:iam::1019881987024:instance-profile/automate-06-1010V4UU2WRM2", "InstanceType": "m4.large", "KeyPair": "", "MaintenanceStatus": "SUCCESS", "PreferredBackupWindow": "Mon:09:15", "PreferredMaintenanceWindow": "03:00", "SecurityGroupIds": [ "sg-1a24c270" ], "ServerArn": "arn:aws:iam::1019881987024:instance/automate-06-1010V4UU2WRM2", "ServerName": "automate-06", "ServiceRoleArn": "arn:aws:iam::1019881987024:role/aws-opsworks-cm-service-role.1114810729735", "Status": "HEALTHY", "StatusReason": "", "SubnetIds": [ "subnet-49436a18" ] } }

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

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

AWS CLI

更新伺服器

下列update-server命令會更新預設區域中指定 Chef Automate 伺服器的維護開始時間。新增 --preferred-maintenance-window 參數,將伺服器維護的開始日期和時間變更為週一上午 9:15。UTC.:

aws opsworks-cm update-server \ --server-name "automate-06" \ --preferred-maintenance-window "Mon:09:15"

輸出會顯示與下列有關已更新伺服器的資訊。

{ "Server": { "BackupRetentionCount": 8, "CreatedAt": 2016-07-29T13:38:47.520Z, "DisableAutomatedBackup": TRUE, "Endpoint": "https://opsworks-cm.us-east-1.amazonaws.com", "Engine": "Chef", "EngineAttributes": [ { "Name": "CHEF_DELIVERY_ADMIN_PASSWORD", "Value": "1Password1" } ], "EngineModel": "Single", "EngineVersion": "12", "InstanceProfileArn": "arn:aws:iam::1019881987024:instance-profile/automate-06-1010V4UU2WRM2", "InstanceType": "m4.large", "KeyPair": "", "MaintenanceStatus": "OK", "PreferredBackupWindow": "Mon:09:15", "PreferredMaintenanceWindow": "03:00", "SecurityGroupIds": [ "sg-1a24c270" ], "ServerArn": "arn:aws:iam::1019881987024:instance/automate-06-1010V4UU2WRM2", "ServerName": "automate-06", "ServiceRoleArn": "arn:aws:iam::1019881987024:role/aws-opsworks-cm-service-role.1114810729735", "Status": "HEALTHY", "StatusReason": "", "SubnetIds": [ "subnet-49436a18" ] } }

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

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