すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:ノードの診断ログの収集

最終更新日:Dec 09, 2024

Container Service for Kubernetes (ACK) コンソールで複数のノードを同時に診断し、診断ログを収集できます。 このトピックでは、ノードの診断ログを収集する方法について説明します。

前提条件

  • ACKクラスターが作成されます。 詳細については、「クラスターの作成」をご参照ください。

  • Object Storage Service (OSS) が有効化され、OSSバケット内の診断ログが収集されます。 詳細については、「OSSの有効化」をご参照ください。

手順

次のいずれかの方法を使用して、クラスターノードから診断ログにアクセスできます。

  • ログをOSSバケットにアップロードし、OSSコンソールで診断ファイルを表示します。

  • 診断ログをOSSにアップロードしないでください。 代わりに、ECSコンソールにログインし、コマンドを実行してログを表示します。

次のセクションでは、両方のメソッドの手順について説明します。

  1. ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. [クラスター] ページで、管理するクラスターを見つけ、クラスターの名前をクリックするか、[操作] 列の [詳細] をクリックします。 クラスターの詳細ページが表示されます。

  3. オプション: 次の手順を実行して、OSSへのログ収集をクラスターに許可します。

    ノードからOSSバケットに診断ログをアップロードする前に、OSSの指定されたディレクトリに対する書き込み権限をノードに付与する必要があります。

    1. カスタムポリシーを作成し、次の内容をポリシーに追加します。 詳細については、「 [製品の変更] ACK管理クラスターのワーカーRAMロールの権限が取り消されます」トピックのステップ1: カスタムポリシーの作成セクションをご参照ください。

      {
          "Action": [
              "oss:GetBucket",
              "oss:PutObject",
              "oss:GetObject"
          ],
          "Resource": [
              "acs:oss:*:*:<OSS bucket name>/<Directory used to store diagnostic logs>/*"
          ],
          "Effect": "Allow"
      },
      {
          "Action": [
              "oss:GetBucketInfo"
          ],
          "Resource": [
              "acs:oss:*:*:<OSS bucket name>"
          ],
          "Effect": "Allow"
      }
    2. リソースアクセス管理 (RAM) ポリシーを、クラスターで使用されるワーカーRAMロールにアタッチします。 詳細については、「 [製品の変更] ACK管理クラスターのワーカーRAMロールの権限が取り消されます」トピックのステップ2: カスタムポリシーをワーカーRAMロールにアタッチするセクションをご参照ください。

  4. 詳細ページの左側のナビゲーションウィンドウで、[ノード] > [ノード] を選択します。

  5. On theノードページで、管理するノードを見つけて選択します。もっと > ノード診断で、アクション列を作成します。

  6. では、ノード診断ダイアログボックスで、プロンプトに従って診断ログをOSSにアップロードするかどうかを選択します。

    ログがOSSにアップロードされているかどうかに関係なく、診断ログを表示できます。

    診断ログをOSSにアップロードする

    診断ログをOSSバケットにアップロードできます。 次の手順を実行する前に、OSSにログを収集するためにクラスターのワーカーRAMロールを許可する必要があります。 詳細については、このトピックの「手順3」をご参照ください。

    1. [OSSにアップロード] を選択し、OSSバケットの名前とディレクトリを入力します。

      たとえば、診断ログをmyBucket/acs/diagnoseディレクトリにアップロードする場合は、myBucket/acs/diagnoseと入力します。

    2. [診断ログの共有] を選択またはクリアします。

      診断ログの共有を選択した場合、診断ログをダウンロードするための一時的なリンクが生成されます。 ACKサポートチームとリンクを共有して、テクニカルサポートをリクエストすることもできます。

    3. [OK] をクリックします。

      上記の手順が完了したら、コンソールでCloud AssistantのタスクIDを取得できます。 次に、タスクIDを使用して、Elastic Compute Service (ECS) Cloud Assistantコンソールで診断スクリプトの実行のログを検索して表示できます。

    4. [ノード診断] ダイアログボックスで、[クラウドアシスタントに移動して診断スクリプト実行ログを表示] をクリックします。

    5. ECSコンソールに移動します。 左側のナビゲーションウィンドウで、[メンテナンスとモニタリング] > [クラウドアシスタント] を選択します。 [ECSクラウドアシスタント] ページで、[コマンド実行結果] タブをクリックして診断ログを表示します。

    6. タスクIDに基づいてタスクを見つけ、[操作] 列の [表示] をクリックします。

      OSSコンソールに移動して、指定されたディレクトリに収集されたクラスター診断診断ログを表示することもできます。

    診断ログをOSSにアップロードしない

    OSSへのアップロードをクリアした場合、OSSの指定されたディレクトリに対する書き込み権限をノードに付与する必要はありません。 ECSコンソールにログインできます。 左側のナビゲーションウィンドウで、[メンテナンスとモニタリング] > [クラウドアシスタント] を選択します。 ECSクラウドアシスタントページで、[コマンド実行結果] タブをクリックして、関連する診断ログを表示します。