Amazon EKS インスタンスのログバンドルを生成する方法を教えてください。

最終更新日: 2021 年 1 月 4 日

Amazon Elastic Kubernetes Service (Amazon EKS) インスタンスをトラブルシューティングしています。そのインスタンスに関連付けられた関係するすべての Amazon EKS ログを収集する必要があります。

簡単な説明

AWSSupport-CollecteksInstanceLogs オートメーションドキュメントを使用して、Amazon EKS ログを収集できます。

重要: 自動化が機能するには、Amazon EKS インスタンスに SSM Agent をインストールして実行する必要があります 。

解決方法

  1. AWS Systems Manager コンソールを開きます。
  2. ナビゲーションペインで [自動化] を選択します。
  3. [オートメーションの実行] を選択します。
  4. [Amazon 所有] タブの [自動化ドキュメント] 検索ボックスに「EKSInstanceLogs」と入力してから、AWSSupport-CollectEKSInstanceLogs ドキュメントを選択します。
  5. [次へ] を選択します。
  6. [自動化入力] ページの EKSInstanceId に、ターゲットの Amazon EKS インスタンス ID を入力します。
  7. LogDestinationAutomationAssumeRole パラメータを設定します。
    注意: ログバンドルは、LogDestination フィールドで指定された Amazon Simple Storage Service (Amazon S3) バケットにアップロードされます。バケットを指定しなかった場合は、インスタンスからログバンドルを取得できます。ログバンドルは、/var/log/ パスにローカルに保存されます。
  8. [Execute automation] (オートメーションの実行) を選択します。

注意: 自動化を目的とする Amazon Elastic Compute Cloud (Amazon EC2) インスタンスの AWS Identity and Access Management (IAM) ロールに、Amazon が管理する AmazonSSMManagedInstanceCore ポリシーをアタッチすることがベストプラクティスです。ユーザーが、自動化が実行されるまでに (LogDestination フィールド) に S3 バケット名を指定した場合、インスタンスプロファイルには、バケットに書き込むための適切なアクセス許可が与えられます。自動化を実行してインスタンスにコマンドを送信するには、少なくとも ssm:ExecuteAutomationssm:SendCommand アクセス許可が必要です。自動化の出力を読み取るには、ssm:GetAutomationExecution アクセス許可が必要です。