

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

# `AWSSupport-CollectEKSInstanceLogs`
<a name="automation-awssupport-collecteksinstancelogs"></a>

 **説明** 

 `AWSSupport-CollectEKSInstanceLogs` ランブックは、一般的な問題のトラブルシューティングに役立つように、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスからオペレーティングシステムと Amazon Elastic Kubernetes Service (Amazon EKS) に関連するログファイルを収集します。自動化によって関連するログファイルが収集される間、一時ディレクトリの作成、ログファイルの一時ディレクトリへのコピー、ログファイルのアーカイブへの圧縮など、ファイルシステム構造が変更されます。このアクティビティにより、Amazon EC2 インスタンスで `CPUUtilization` が増加する可能性があります。`CPUUtilization` の詳細については、Amazon CloudWatch ユーザーガイドの[「インスタンスメトリクス」](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/viewing_metrics_with_cloudwatch.html#ec2-cloudwatch-metrics)を参照してください。

 `LogDestination` パラメータの値を指定すると、指定した Amazon Simple Storage Service (Amazon S3) バケットのポリシーステータスが自動化によって評価されます。Amazon EC2 インスタンスから収集されたログのセキュリティを支援するために、ポリシーステータス `isPublic` が`true` に設定されている場合、またはアクセスコントロールリスト (ACL) が `All Users` Amazon S3 事前定義済みグループに `READ|WRITE` アクセス許可を付与している場合、ログはアップロードされません。Amazon S3 の定義済みグループの詳細については、Amazon Simple Storage Service ユーザーガイドの[「Amazon S3 の定義済みグループ」](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#specifying-grantee-predefined-groups)を参照してください。

**注記**  
この自動化には、Amazon EC2 インスタンスにアタッチされたルート Amazon Elastic Block Store (Amazon EBS) ボリュームで使用可能なディスク容量の少なくとも 10% が必要です。ルートボリュームに十分な空きディスク容量がない場合、自動化は停止します。

 [このオートメーションを実行する (コンソール)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-CollectEKSInstanceLogs) 

**ドキュメントタイプ**

オートメーション

**[所有者]**

Amazon

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

Linux

**パラメータ**
+ AutomationAssumeRole

  タイプ: 文字列

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

  タイプ: 文字列

  説明: (必須) ログを収集する Amazon EKS Amazon EC2 インスタンスの ID。
+ LogDestination

  タイプ: 文字列

  説明: (オプション) アーカイブされたログをアップロードするアカウントの Amazon Simple Storage Service (Amazon S3) バケット。

**必要な IAM アクセス許可**

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

 **Amazon EC2 インスタンスプロファイルに必要な IAM アクセス許可** 

で使用されるインスタンスプロファイルには、**AmazonSSMManagedInstanceCore** Amazon 管理ポリシーがアタッチされている`EKSInstanceId`必要があります。

 また、収集したログをアップロードできるように、`LogDestination`Amazon S3 バケットにアクセスできる必要があります。以下は、そのインスタンスプロファイルにアタッチできる IAM ポリシーの例です。

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObject",
        "s3:GetBucketPolicyStatus",
        "s3:GetBucketAcl"
      ],
      "Resource": [
        "arn:aws:s3:::LogDestination/*",
        "arn:aws:s3:::LogDestination"
      ]
    }
  ]
}
```

が AWS KMS 暗号化`LogDestination`を使用する場合、IAM ポリシーに追加のステートメントを追加し、暗号化で使用される AWS KMS キーへのアクセスを許可する必要があります。

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObject",
        "s3:GetBucketPolicyStatus",
        "s3:GetBucketAcl"
      ],
      "Resource": [
        "arn:aws:s3:::LogDestination/*",
        "arn:aws:s3:::LogDestination"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "kms:Decrypt",
        "kms:GenerateDataKey"
      ],
      "Resource": "arn:aws:kms:REGION:ACCOUNT:key/KMS-KEY-ID"
    }
  ]
}
```

 **ドキュメントステップ** 
+  `aws:assertAwsResourceProperty` - `EKSInstanceId` パラメータで指定された値のオペレーティングシステムが Linux であることを確認します。
+  `aws:runCommand` - オペレーティングシステムおよび Amazon EKS に関連するログファイルを収集し、`/var/log` ディレクトリ内のアーカイブに圧縮します。
+  `aws:branch` - `LogDestination` パラメータに値が指定されたかどうかを確認します。
+  `aws:runCommand` - `LogDestination`パラメータで指定した Amazon S3 バケットにログアーカイブをアップロードします。