SSM Automation Runbook “AWSSupport-TroubleshootManagedInstance” をやってみた

2024.06.26

はじめに

テクニカルサポートの 片方 です。

AWS ではマネージドノードになっていない原因を調査する方法として、SSM Automation Runbook "AWSSupport-TroubleshootManagedInstance" を提供しています。 この Runbook を使用すると以下の観点で調査を行い、設定不足や誤りがないかを自動で調査してくれます。

  • セキュリティグループルール
  • VPC エンドポイント
  • ネットワークアクセスコントロールリスト (ACL) ルール
  • ルートテーブルなどインスタンスの VPC 設定
  • 必要なアクセス許可を含む AWS Identity and Access Management (IAM) インスタンスプロファイルがインスタンスにアタッチされているか

やってみた

1. SSM マネジメントコンソール画面へアクセス
2. 下部の左ペイン [共有リソース] セクションの ドキュメントをクリック

3. Amazon が所有を選択 ⇒ 検索窓に "AWSSupport-TroubleshootManagedInstance" を記載

4. ドキュメントを選択

5. 右上 [オートメーションを実行する] を選択

6. Simple execution を選択

7. Input parameters の InstanceId において、Show all instances を選択

8. 調査対象の EC2 インスタンスを選択

※ 当該設定をしている IAM ユーザーにドキュメン記載の権限許可が存在しない場合は、当該権限を有するロール作成をしてロールください。その後、AutomationAssumeRole に当該ロールを設定してください。

試したところドキュメント記載の権限ではなぜかエラーが発生するため、以下を参考にロール作成してください。

信頼関係
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "ssm.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
サンプルポリシー
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:GetServiceSetting",
                "ec2:DescribeVpcs",
                "ssm:DescribeAutomationExecutions",
                "ssm:DescribeAutomationStepExecutions",
                "ssm:DescribeInstanceInformation",
                "ssm:DescribeInstanceProperties",
                "ssm:StartAutomationExecution",
                "ssm:GetAutomationExecution",
                "ssm:GetDocument",
                "ssm:ListDocuments",
                "iam:ListRoles",
                "iam:GetInstanceProfile",
                "iam:ListAttachedRolePolicies",
                "ec2:DescribeInstances",
                "ec2:DescribeNetworkAcls",
                "ec2:DescribeRouteTables",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeVpcEndpoints"
            ],
            "Resource": "*"
        }
    ]
}

9. 右下の [Execute] をクリック

これで以上です。調査完了まで待ちましょう。
既にマネージドノードの場合

[WARNING] として、VPC エンドポイント、インターネットへのアクセス経路がない場合

参考資料

アノテーション株式会社について

アノテーション株式会社は、クラスメソッド社のグループ企業として「オペレーション・エクセレンス」を担える企業を目指してチャレンジを続けています。「らしく働く、らしく生きる」のスローガンを掲げ、様々な背景をもつ多様なメンバーが自由度の高い働き方を通してお客様へサービスを提供し続けてきました。現在当社では一緒に会社を盛り上げていただけるメンバーを募集中です。少しでもご興味あれば、アノテーション株式会社WEBサイトをご覧ください。