AWSPremiumSupport-PostgreSQLWorkloadReview - AWS Systems Manager オートメーションランブックリファレンス

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

AWSPremiumSupport-PostgreSQLWorkloadReview

説明

AWSPremiumSupport-PostgreSQLWorkloadReview ランブックは、Amazon Relational Database Service (Amazon RDS) PostgreSQL データベースの使用統計の複数のスナップショットをキャプチャします。キャプチャされた統計は、 AWS Support プロアクティブサービスの専門家が運用レビューを実行するために必要です。統計は一連のカスタム SQL とシェルスクリプトを使用して収集されます。これらのスクリプトは、このランブックによって作成された の一時的な Amazon Elastic Compute Cloud (Amazon EC2) AWS アカウント インスタンスにダウンロードされます。ランブックでは、ユーザー名とパスワードのキーと値のペアを含む AWS Secrets Manager シークレットを使用して認証情報を提供する必要があります。ユーザー名は、標準の PostgreSQL 統計ビューと関数を照会する許可を持っている必要があります。

このランブックは、 AWS CloudFormation スタック AWS アカウント を使用して に次の AWS リソースを自動的に作成します。スタックの作成は AWS CloudFormation コンソールを使用して監視できます。

  • 仮想プライベートクラウド (VPC) と Amazon EC2 インスタンスは VPC のプライベートサブネットで起動され、オプションで NAT ゲートウェイを使用してインターネットに接続できます。

  • Secrets Manager シークレット値を取得するアクセス許可を持つ一時的な Amazon EC2 インスタンスにアタッチされる AWS Identity and Access Management (IAM) ロール。また、このロールは、選択した Amazon Simple Storage Service (Amazon S3) バケットにファイルをアップロードするアクセス許可と、オプションで AWS Support ケースにアップロードするアクセス許可も提供します。

  • DB インスタンスと一時的な Amazon EC2 インスタンス間の接続を可能にする VPC ピアリング接続。

  • 一時的な VPC にアタッチされているシステムマネージャ、シークレットマネージャ、および Amazon S3 VPC エンドポイント。

  • 一時的な Amazon EC2 インスタンスの起動と停止、データ収集スクリプトの実行、Amazon S3 バケットへのファイルのアップロードを定期的に行う登録済みのタスクを含むメンテナンスウィンドウ。登録されたタスクを実行する権限を付与する IAM ロールもメンテナンスウィンドウ用に作成されます。

ランブックが完了すると、必要な AWS リソースの作成に使用される AWS CloudFormation スタックが削除され、レポートは選択した Amazon S3 バケットにアップロードされ、オプションで AWS Support ケースにアップロードされます。

注記

デフォルトでは、一時的な Amazon EC2 インスタンスのルート Amazon EBS ボリュームは保持されます。このオプションは、EbsVolumeDeleteOnTermination パラメータを true に設定することで上書きできます。

前提条件

  • エンタープライズサポートサブスクリプション このランブックとプロアクティブサービスワークロード診断およびレビューには、エンタープライズサポートサブスクリプションが必要です。このランブックを使用する前に、テクニカルアカウントマネージャー (TAM) またはスペシャリスト TAM (STAM) に指示を求めてください。詳細については、「AWS Support プロアクティブサービス」を参照してください。

  • アカウントと AWS リージョン クォータ このランブックを使用するアカウントとリージョンで作成できる Amazon EC2 インスタンスまたは VPCsの最大数に達していないことを確認してください。制限の引き上げをリクエストするには、サービスの制限緩和フォームをご覧ください。

  • データベース設定

    1. DatabaseName パラメータで指定するデータベースには、pg_stat_statements 拡張子が設定されている必要があります。shared_preload_librariespg_stat_statements を設定していない場合は、DB パラメータグループの値を編集し、変更を適用する必要があります。shared_preload_libraries パラメータを変更すると、DB インスタンスを再起動する必要があります。詳細については、「パラメータグループの操作」を参照してください。pg_stat_statementsshared_preload_libraries に追加すると、パフォーマンスのオーバーヘッドがいくらか増加します。ただし、これは個々のステートメントのパフォーマンスを追跡する場合に役立ちます。pg_stat_statements の拡張の詳細については、PostgreSQL のドキュメントを参照してください。pg_stat_statements 拡張を設定していない場合や、統計収集に使用されているデータベースに拡張が存在しない場合、ステートメントレベルの分析は運用レビューに表示されません。

    2. track_counts および track_activities パラメータがオフになっていないことを確認してください。DB パラメータグループでこれらのパラメータがオフになっていると、意味のある統計は得られません。これらのパラメータを変更するには、DB インスタンスの再起動が必要になります。詳しくは、「Amazon RDS for PostgreSQL DB インスタンスでのパラメータの使用」を参照してください。

    3. track_io_timing パラメータをオフにすると、I/O レベルの統計は運用レビューに含まれません。track_io_timing を変更すると DB インスタンスを再起動する必要があり、DB インスタンスのワークロードによっては追加のパフォーマンスオーバーヘッドが発生します。重要なワークロードにはパフォーマンスオーバーヘッドがかかりますが、このパラメータはクエリごとの I/O 時間に関する有用な情報を提供します。

請求と料金 一時的な Amazon EC2 インスタンス、関連付けられた Amazon EBS ボリューム、NAT ゲートウェイ、およびこのオートメーションの実行中に転送されたデータに関連するコストが課金 AWS アカウント されます。デフォルトでは、このランブックは t3.micro Amazon Linux 2 インスタンスを作成して統計を収集します。ランブックはコストを削減するためにステップの合間にインスタンスを起動および停止します。

データセキュリティとガバナンス このランブックは、PostgreSQLの統計ビューと関数をクエリして統計を収集します。SecretId パラメータにおいて指定する認証情報では、統計ビューと関数に対する読み取り専用権限のみを許可するようにしてください。自動化の一環として、収集スクリプトは Amazon S3 バケットにアップロードされ、s3://DOC-EXAMPLE-BUCKET/automation execution id/queries/ に配置されます。

これらのスクリプトは、 AWS スペシャリストがオブジェクトレベルで主要なパフォーマンス指標を確認するために使用するデータを収集します。このスクリプトは、テーブル名、スキーマ名、インデックス名などの情報を収集します。この情報に収益指標、ユーザー名、メールアドレス、その他の個人を特定できる情報などの機密情報が含まれている場合は、このワークロードレビューを中止することをお勧めします。 AWS TAM に連絡して、ワークロードレビューの代替アプローチについて相談してください。

このオートメーションで収集された統計とメタデータを と共有するために必要な承認と許可があることを確認してください AWS。

セキュリティ上の考慮事項 UpdateRdsSecurityGroup パラメータを yes に設定すると、ランブックは DB インスタンスに関連付けられているセキュリティグループを更新して、一時的な Amazon EC2 インスタンスのプライベート IP アドレスからのインバウンドトラフィックを許可します。

UpdateRdsRouteTable パラメータを yes に設定すると、ランブックは DB インスタンスが実行されているサブネットに関連付けられたルートテーブルを更新して、VPC ピアリング接続を介して一時的な Amazon EC2 インスタンスへのトラフィックを許可します。

ユーザー作成 収集スクリプトが Amazon RDS データベースに接続できるようにするには、統計ビューを読み取る権限を持つユーザーを設定する必要があります。また、認証情報は Secrets Manager に保存する必要があります。この自動化には、新しい専用ユーザーを作成することをお勧めします。別のユーザーを作成すると、この自動化によって実行されるアクティビティを監査および追跡できます。

  1. 新しいユーザーを作成します。

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "CREATE USER <user_name> PASSWORD '<password>';"

  2. このユーザーは読み取り専用接続しか行えないようにしてください。

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "ALTER USER <user_name> SET default_transaction_read_only=true;"

  3. ユーザーレベルの制限を設定します。

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "ALTER USER <user_name> SET work_mem=4096;"

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "ALTER USER <user_name> SET statement_timeout=10000;"

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "ALTER USER <user_name> SET idle_in_transaction_session_timeout=60000;"

  4. 新しいユーザーに DB 統計にアクセスできる pg_monitor 権限を付与します。(pg_monitor ロールは pg_read_all_settingspg_read_all_stats および pg_stat_scan_table のメンバーです)。

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "GRANT pg_monitor to <user_name>;"

この Systems Manager 自動化によって一時的な Amazon EC2 インスタンスプロファイルに追加される権限 一時的な Amazon EC2 インスタンスに関連付けられた IAM ロールには、次の権限が追加されます。AmazonSSMManagedInstanceCore 管理ポリシーは IAM ロールにも関連付けられているため、Amazon EC2 インスタンスを Systems Manager で管理できるようになります。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:DescribeTags" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET", "Effect": "Allow" }, { "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/automation execution id/*", "Effect": "Allow" }, { "Action": [ "secretsmanager:GetSecretValue" ], "Resource": "arn:aws:secretsmanager:region:account id:secret:secret id", "Effect": "Allow" }, { "Action": [ "support:AddAttachmentsToSet", "support:AddCommunicationToCase", "support:DescribeCases" ], "Resource": "*", "Effect": "Allow" } ] }

この Systems Manager 自動化によって一時的なメンテナンスウィンドウに追加される権限 次の権限は、メンテナンスウィンドウタスクに関連付けられた IAM ロールに自動的に追加されます。メンテナンスウィンドウタスクは一時的な Amazon EC2 インスタンスを開始、停止し、このインスタンスにコマンドを送信します。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ssm:GetAutomationExecution", "ssm:ListCommands", "ssm:ListCommandInvocations", "ssm:GetCommandInvocation", "ssm:GetCalendarState", "ssm:CancelCommand", "ec2:DescribeInstanceStatus" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "ssm:SendCommand", "ec2:StartInstances", "ec2:StopInstances", "ssm:StartAutomationExecution" ], "Resource": [ "arn:aws:ec2:region:account id:instance/temporary instance id", "arn:aws:ssm:*:*:document/AWS-RunShellScript", "arn:aws:ssm:*:*:automation-definition/AWS-StopEC2Instance:$DEFAULT", "arn:aws:ssm:*:*:automation-definition/AWS-StartEC2Instance:$DEFAULT" ], "Effect": "Allow" }, { "Condition": { "StringEquals": { "iam:PassedToService": "ssm.amazonaws.com" } }, "Action": "iam:PassRole", "Resource": "*", "Effect": "Allow" } ] }

このオートメーションを実行する (コンソール)

ドキュメントタイプ

Automation

[所有者]

Amazon

[Platforms] (プラットフォーム)

データベース

パラメータ

  • AutomationAssumeRole

    型: 文字列

    説明: (オプション) Systems Manager Automation がユーザーに代わってアクションを実行できるようにする AWS Identity and Access Management (IAM) ロールの Amazon リソースネーム (ARN)。ロールを指定しない場合、Systems Manager Automation はこのランブックを開始するユーザーのアクセス許可を使用します。

  • DBInstanceIdentifier

    型: 文字列

    説明: (必須) DB インスタンスの ID。

  • DatabaseName

    型: 文字列

    説明: (必須) DB インスタンスにホストされているデータベース名。

  • SecretId

    型: 文字列

    説明: (必須) ユーザー名とパスワードのキーと値のペアを含む Secrets Manager シークレットの ARN。 AWS CloudFormation スタックは、この ARN に対する GetSecretValueオペレーションのアクセス許可を持つ IAM ポリシーを作成します。認証情報を使用して、一時的なインスタンスがデータベース統計を収集できるようにします。TAM または STAM に問い合わせて、最低限必要な権限について相談してください。

  • 了解

    型: 文字列

    説明: (必須) このランブックが DB インスタンスから統計情報を収集するための一時的なリソースをアカウントに作成することを承認する場合、yes を入力してください。このオートメーションを実行する前に TAM または STAM に連絡することをお勧めします。

  • SupportCase

    型: 文字列

    説明: (オプション) TAM または STAM によって提供される AWS Support ケース番号。指定した場合、ランブックはケースを更新し、収集したデータをアタッチします。このオプションでは、一時的な Amazon EC2 インスタンスが AWS Support API エンドポイントにアクセスするためにインターネット接続が必要です。AllowVpcInternetAccess パラメータを true に設定する必要があります。ケースの件名には AWSPremiumSupport-PostgreSQLWorkloadReview という語句が含まれている必要があります。

  • S3BucketName

    型: 文字列

    説明: (必須) 自動化によって収集されたデータをアップロードするアカウントの Amazon S3 バケット名。バケットポリシーが、バケットのコンテンツにアクセスする必要がないプリンシパルに不必要な読み取りまたは書き込みアクセス許可を付与していないことを確認します。この自動化を目的として一時的な Amazon S3 バケットを新規作成することをお勧めします。ランブックは、一時的な Amazon EC2 インスタンスにアタッチされた IAM ロールに s3:PutObject API オペレーションの許可を提供します。アップロードされたファイルは s3://bucket name/automation execution id/ にあります。

  • InstanceType

    型: 文字列

    説明: (オプション) カスタム SQL とシェルスクリプトを実行する一時的な Amazon EC2 インスタンスのタイプ。

    有効な値: t2.micro | t2.small | t2.medium | t2.large | t3.micro | t3.small | t3.medium | t3.large

    デフォルト: t3.micro

  • VpcCidr

    型: 文字列

    説明: (オプション) 新しい VPC の CIDR 表記の IP アドレス範囲 (例: 172.31.0.0/16)。DB インスタンスに接続できる既存の VPC と重複しない、または一致しない CIDR を選択してください。作成できる最小の VPC は /28 サブネットマスクを使用し、最大の VPC は /16 サブネットマスクを使用します。

    デフォルト: 172.31.0.0/16

  • StackResourcesNamePrefix

    型: 文字列

    説明: (オプション) AWS CloudFormation スタックリソース名のプレフィックスとタグ。ランブックは、リソースに適用される名前とタグの一部として、このプレフィックスを使用して AWS CloudFormation スタックリソースを作成します。タグのキーバリューペアの構造は StackResourcesNamePrefix:{{automation:EXECUTION_ID}} です。

    デフォルト: AWSPostgreSQLWorkloadReview

  • スケジュール

    型: 文字列

    説明: (オプション) メンテナンスウィンドウのスケジュール。メンテナンスウィンドウでタスクを実行する頻度を指定します。デフォルト値は True です 1 hour

    有効な値: 15 分 | 30 分 | 1 時間 | 2 時間 | 4 時間 | 6 時間 | 12 時間 | 1 日 | 2 日 | 4 日

    デフォルト: 1 時間

  • duration

    タイプ: 整数

    説明: (オプション) オートメーションを実行できる最大時間 (分) 。サポートされる最大時間は 8,640 分 (6 日間) です。デフォルト値は 4,320 分 (3 日間) です。

    有効な値: 30 ~ 8640

    デフォルト: 4320

  • UpdateRdsRouteTable

    型: 文字列

    説明: (オプション) true に設定すると、ランブックは DB インスタンスが実行されているサブネットに関連付けられたルートテーブルを更新します。IPv4 ルートが追加され、新しく作成された VPC ピアリング接続を介して一時的な Amazon EC2 インスタンスのプライベート IPV4 アドレスにトラフィックがルーティングされます。

    有効な値: true | false

    デフォルト: false

  • AllowVpcInternetAccess

    型: 文字列

    説明: (オプション) に設定するとtrue、ランブックは API AWS Support エンドポイントと通信するための一時的な Amazon EC2 インスタンスへのインターネット接続を提供する NAT ゲートウェイを作成します。ランブックが出力を Amazon S3 バケットにアップロードすることだけを望む場合、このパラメータを false のままにしておくことができます。

    有効な値: true | false

    デフォルト: false

  • UpdateRdsSecurityGroup

    型: 文字列

    説明: (オプション) true に設定すると、ランブックは DB インスタンスに関連付けられているセキュリティグループを更新し、一時インスタンスのプライベート IP アドレスからのトラフィックを許可します。

    有効な値: false/true

    デフォルト: false

  • EbsVolumeDeleteOnTermination

    型: 文字列

    説明: (オプション) に設定するとtrue、ランブックが AWS CloudFormation スタックを完了して削除した後、一時的な Amazon EC2 インスタンスのルートボリュームが削除されます。

    有効な値: false/true

    デフォルト: false

必要な IAM アクセス許可

AutomationAssumeRole パラメータでは、ランブックを正常に使用するために、次のアクションが必要です。

  • cloudformation:CreateStack

  • cloudformation:DeleteStack

  • cloudformation:DescribeStackEvents

  • cloudformation:DescribeStackResource

  • cloudformation:DescribeStacks

  • cloudformation:UpdateStack

  • ec2:AcceptVpcPeeringConnection

  • ec2:AllocateAddress

  • ec2:AssociateRouteTable

  • ec2:AssociateVpcCidrBlock

  • ec2:AttachInternetGateway

  • ec2:AuthorizeSecurityGroupEgress

  • ec2:AuthorizeSecurityGroupIngress

  • ec2:CreateEgressOnlyInternetGateway

  • ec2:CreateInternetGateway

  • ec2:CreateNatGateway

  • ec2:CreateRoute

  • ec2:CreateRouteTable

  • ec2:CreateSecurityGroup

  • ec2:CreateSubnet

  • ec2:CreateTags

  • ec2:CreateVpc

  • ec2:CreateVpcEndpoint

  • ec2:CreateVpcPeeringConnection

  • ec2:DeleteEgressOnlyInternetGateway

  • ec2:DeleteInternetGateway

  • ec2:DeleteNatGateway

  • ec2:DeleteRoute

  • ec2:DeleteRouteTable

  • ec2:DeleteSecurityGroup

  • ec2:DeleteSubnet

  • ec2:DeleteTags

  • ec2:DeleteVpc

  • ec2:DeleteVpcEndpoints

  • ec2:DescribeAddresses

  • ec2:DescribeEgressOnlyInternetGateways

  • ec2:DescribeImages

  • ec2:DescribeInstances

  • ec2:DescribeInstanceStatus

  • ec2:DescribeInternetGateways

  • ec2:DescribeNatGateways

  • ec2:DescribeRouteTables

  • ec2:DescribeSecurityGroups

  • ec2:DescribeSubnets

  • ec2:DescribeVpcEndpoints

  • ec2:DescribeVpcPeeringConnections

  • ec2:DescribeVpcs

  • ec2:DetachInternetGateway

  • ec2:DisassociateRouteTable

  • ec2:DisassociateVpcCidrBlock

  • ec2:ModifySubnetAttribute

  • ec2:ModifyVpcAttribute

  • ec2:RebootInstances

  • ec2:ReleaseAddress

  • ec2:RevokeSecurityGroupEgress

  • ec2:RevokeSecurityGroupIngress

  • ec2:StartInstances

  • ec2:StopInstances

  • ec2:RunInstances

  • ec2:TerminateInstances

  • iam:AddRoleToInstanceProfile

  • iam:AttachRolePolicy

  • iam:CreateInstanceProfile

  • iam:CreateRole

  • iam:DeleteInstanceProfile

  • iam:DeleteRole

  • iam:DeleteRolePolicy

  • iam:DetachRolePolicy

  • iam:GetInstanceProfile

  • iam:GetRole

  • iam:GetRolePolicy

  • iam:PassRole

  • iam:PutRolePolicy

  • iam:RemoveRoleFromInstanceProfile

  • iam:TagPolicy

  • iam:TagRole

  • rds:DescribeDBInstances

  • s3:GetAccountPublicAccessBlock

  • s3:GetBucketAcl

  • s3:GetBucketPolicyStatus

  • s3:GetBucketPublicAccessBlock

  • s3:ListBucket

  • ssm:AddTagsToResource

  • ssm:CancelMaintenanceWindowExecution

  • ssm:CreateDocument

  • ssm:CreateMaintenanceWindow

  • ssm:DeleteDocument

  • ssm:DeleteMaintenanceWindow

  • ssm:DeregisterTaskFromMaintenanceWindow

  • ssm:DescribeAutomationExecutions

  • ssm:DescribeDocument

  • ssm:DescribeInstanceInformation

  • ssm:DescribeMaintenanceWindowExecutions

  • ssm:GetCalendarState

  • ssm:GetDocument

  • ssm:GetMaintenanceWindowExecution

  • ssm:GetParameters

  • ssm:ListCommandInvocations

  • ssm:ListCommands

  • ssm:ListTagsForResource

  • ssm:RegisterTaskWithMaintenanceWindow

  • ssm:RemoveTagsFromResource

  • ssm:SendCommand

  • support:AddAttachmentsToSet

  • support:AddCommunicationToCase

  • support:DescribeCases

ドキュメントステップ

  1. aws:assertAwsResourceProperty - DB インスタンスの状態が available であることを確認します。

  2. aws:executeAwsApi - DB インスタンスの詳細を収集します。

  3. aws:executeScript - S3BucketName で指定されている Amazon S3 バケットが、匿名またはパブリックの読み取りまたは書き込みアクセス権限を許可しているかどうかを確認します。

  4. aws:executeScript - で一時 AWS リソースを作成するために使用される Automation ランブックアタッチメントから AWS CloudFormation テンプレートコンテンツを取得します AWS アカウント。

  5. aws:createStack - AWS CloudFormation スタックリソースを作成します。

  6. aws:waitForAwsResourceProperty - AWS CloudFormation テンプレートによって作成された Amazon EC2 インスタンスが実行されるまで待ちます。

  7. aws:executeAwsApi - 一時的な Amazon EC2 インスタンスと、 AWS CloudFormationによって作成された VPC ピアリング接続の ID を取得します。

  8. aws:executeAwsApi - 一時的な Amazon EC2 インスタンスの IP アドレスを取得して DB インスタンスとの接続を設定します。

  9. aws:executeAwsApi - 一時的な Amazon EC2 インスタンスにアタッチされた Amazon EBS ボリュームにタグを付けます。

  10. aws:waitForAwsResourceProperty - 一時的な Amazon EC2 インスタンスがステータスチェックに合格するまで待ちます。

  11. aws:waitForAwsResourceProperty - 一時的な Amazon EC2 インスタンスが Systems Manager によって管理されるまで待ちます。このステップがタイムアウトになったり失敗したりすると、ランブックはインスタンスを再起動します。

    1. aws:executeAwsApi - 前のステップが失敗したりタイムアウトになった場合、一時的な Amazon EC2 インスタンスを再起動します。

    2. aws:waitForAwsResourceProperty - 一時的な Amazon EC2 インスタンスが再起動後に Systems Manager によって管理されるまで待ちます。

  12. aws:runCommand - メタデータコレクターのアプリケーション要件を一時的な Amazon EC2 インスタンスにインストールします。

  13. aws:runCommand - 一時的な Amazon EC2 インスタンスに設定ファイルを作成することで、DB インスタンスへのアクセスを設定します。

  14. aws:executeAwsApi - Run Command を使用してメタデータコレクターアプリケーションを定期的に実行するためのメンテナンスウィンドウを作成します。メンテナンスウィンドウは、コマンドの合間にインスタンスを起動および停止します。

  15. aws:waitForAwsResourceProperty - AWS CloudFormation テンプレートによって作成されたメンテナンスウィンドウの準備ができるまで待ちます。

  16. aws:executeAwsApi - によって作成されたメンテナンスウィンドウと変更カレンダーIDs を取得します AWS CloudFormation。

  17. aws:sleep - メンテナンスウィンドウの終了日まで待機します。

  18. aws:executeAwsApi - メンテナンスウィンドウをオフにします。

  19. aws:executeScript - メンテナンスウィンドウ中に実行されたタスクの結果を取得します。

  20. aws:waitForAwsResourceProperty - メンテナンスウィンドウが最後のタスクを終了した後に続行するまで待機します。

  21. aws:branch - SupportCase パラメータに値を指定したかどうかに応じてワークフローを分岐します。

    1. aws:changeInstanceState - 一時的な Amazon EC2 インスタンスを起動し、ステータスチェックに合格するのを待ってからレポートをアップロードします。

    2. aws:waitForAwsResourceProperty - 一時的な Amazon EC2 インスタンスが Systems Manager によって管理されるまで待ちます。このステップがタイムアウトになったり失敗したりすると、ランブックはインスタンスを再起動します。

      1. aws:executeAwsApi - 前のステップが失敗したりタイムアウトになった場合、一時的な Amazon EC2 インスタンスを再起動します。

      2. aws:waitForAwsResourceProperty - 一時的な Amazon EC2 インスタンスが再起動後に Systems Manager によって管理されるまで待ちます。

    3. aws:runCommand - SupportCase パラメータに値を指定した場合、メタデータレポートを AWS Support ケースにアタッチします。このスクリプトは、レポートを 5 MB のファイルに圧縮して分割します。スクリプトが AWS Support ケースにアタッチするファイルの最大数は 12 です。

  22. aws:changeInstanceState - AWS CloudFormation スタックの削除に失敗した場合に備えて、一時的な Amazon EC2 インスタンスを停止します。

  23. aws:executeAwsApi - ランブックが AWS CloudFormation スタックの作成または更新に失敗した場合の AWS CloudFormation スタックイベントを記述します。

  24. aws:waitForAwsResourceProperty - AWS CloudFormation スタックがターミナルステータスになるまで待ってから削除します。

  25. aws:executeAwsApi - メンテナンスウィンドウを除く AWS CloudFormation スタックを削除します。EbsVolumeDeleteOnTermination パラメータ値が false に設定された場合、一時的な Amazon EC2 インスタンスに関連付けられているルート Amazon EBS ボリュームは保持されます。