AWS OpsWorks CM を使用した の例 AWS CLI - AWS SDK コード例

Doc AWS SDK Examples リポジトリには、他にも SDK の例があります。 AWS GitHub

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS OpsWorks CM を使用した の例 AWS CLI

次のコード例は、 AWS Command Line Interface で を使用してアクションを実行し、一般的なシナリオを実装する方法を示しています AWS OpsWorks CM。

アクションはより大きなプログラムからのコードの抜粋であり、コンテキスト内で実行する必要があります。アクションは個々のサービス機能を呼び出す方法を示していますが、関連するシナリオやサービス間の例ではアクションのコンテキストが確認できます。

「シナリオ」は、同じサービス内で複数の関数を呼び出して、特定のタスクを実行する方法を示すコード例です。

各例には、 へのリンクが含まれています。このリンクには GitHub、コンテキスト内でコードをセットアップして実行する方法の手順が記載されています。

トピック

アクション

次の例は、associate-node を使用する方法を説明しています。

AWS CLI

ノードを関連付けるには

次のassociate-nodeコマンドは、 という名前のノードを という名前の Chef Automate サーバーi-44de882pに関連付けます。つまりautomate-06automate-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 ユーザーガイド」の「 for Chef Automate でノードを自動的に追加する AWS OpsWorks 」を参照してください。

  • API の詳細については、「 コマンドリファレンスAssociateNode」の「」を参照してください。 AWS CLI

次の例は、create-backup を使用する方法を説明しています。

AWS CLI

バックアップを作成するには

次のcreate-backupコマンドは、 us-east-1リージョンautomate-06で という名前の 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 ユーザーガイドの「 for 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 ユーザーガイド」の「Getting Started with 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「 for AWS OpsWorks 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 ユーザーガイドの「 for 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 for Chef Automate リソースの使用に関する情報を返します。

aws opsworks-cm describe-account-attributes

コマンドによって返される各アカウント属性エントリの出力は、次のようになります。出力:

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

詳細情報

詳細については、 DescribeAccountAttributes 「 for AWS OpsWorks Chef Automate API リファレンス」の「」を参照してください。

  • API の詳細については、「 コマンドリファレンスDescribeAccountAttributes」の「」を参照してください。 AWS CLI

次の例は、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 ユーザーガイド AWS OpsWorks 」の「 for Chef Automate Server のバックアップと復元」を参照してください。

  • 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 「 for AWS OpsWorks Chef Automate API リファレンス」の「」を参照してください。

  • API の詳細については、「 コマンドリファレンスDescribeNodeAssociationStatus」の「」を参照してください。 AWS CLI

次の例は、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 「 for AWS OpsWorks Chef Automate API ガイド」の「」を参照してください。

  • 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 ユーザーガイド AWS OpsWorks 」の「Chef Automate サーバーの失敗の復元」を参照してください。

  • 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「 for AWS OpsWorks Chef Automate API リファレンス」の「」を参照してください。

  • API の詳細については、「 コマンドリファレンスUpdateServerEngineAttributes」の「」を参照してください。 AWS CLI

次の例は、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「 for AWS OpsWorks Chef Automate API リファレンス」の「」を参照してください。

  • API の詳細については、「 コマンドリファレンスUpdateServer」の「」を参照してください。 AWS CLI