リソースモニタリングは、Kubernetesで最も一般的に使用されるモニタリング方法の1つです。 CloudMonitorのKubernetesモニタリング機能を使用して、Container Service for Kubernetes (ACK) クラスターのワークロードで使用される基本リソースの使用状況とヘルスステータスを効率的に確認できます。 リソースは、CPU、メモリ、およびネットワークリソースを含む。 これにより、ACKクラスターが期待どおりに安定して実行できます。
説明
CloudMonitorは、Alibaba Cloudアカウント内のすべてのACKクラスターのメトリクスを自動的に収集します。 これにより、複数のリージョンにデプロイされているACKクラスターを集中的かつグローバルな方法で監視できます。 詳細については、「概要」をご参照ください。
クラスターの観点からのメトリック
CloudMonitorは、アラート、ノード数、ポッドとノードのメモリ使用率とCPU使用率などのメトリクスを提供します。 これにより、クラスターのパフォーマンスに関する洞察を効率的に得ることができます。
より専門的な監視とアラート
CloudMonitorのコンテナーモニタリング機能がKubernetesモニタリングに更新され、コンテナーのよりプロフェッショナルな基本モニタリング機能を提供します。 CloudMonitorは、名前空間、ノード、ワークロード、ポッドなどのネイティブKubernetesオブジェクトの主要なモニタリングメトリクスを提供します。 アラート機能が更新され、さまざまな観点からアラートルールを設定できるようになりました。
さまざまなコンテナ監視シナリオに適したメトリック
CloudMonitorは、ホストインフラストラクチャレイヤー、Platform as a Service (PaaS) のコンテナレイヤー、Kubernetesスケジューリングレイヤーなど、特定のレイヤーでさまざまなシナリオに最適なメトリクスをサポートします。 たとえば、コンテナーのKubernetesスケジューリングに影響を与えるメモリメトリクスは、コンテナーの作業メモリ専用です。 これにより、コンテナメモリ使用量とホストメモリ使用量を区別できます。
前提条件
クラスター内のmetrics-serverコンポーネントのバージョンはV0.3.8.5以降です。 metrics-serverを更新する方法の詳細については、以下のトピックを参照してください。
ACK管理クラスター: コンポーネントの管理
Kubernetes 1.12を実行するACK専用クラスター: Kubernetesバージョンを1.12に更新する前に、メトリクスサーバーコンポーネントを更新してください
メトリクスサーバーコンポーネントをV0.3.8.5以降に更新できない場合は、以前のバージョンのリソースモニタリングを使用します。 詳細については、このトピックの「旧バージョンのリソースモニタリングの使用」をご参照ください。
ACKクラスターのCloudMonitorのモニタリング機能の有効化
詳細については、「ACKクラスターのCloudMonitorのモニタリング機能の有効化」をご参照ください。
リソースモニタリングデータを表示する
にログインします。CloudMonitorコンソール.
左側のナビゲーションウィンドウで、[クラウドサービスモニタリング] を選択します。Container Service ACK.
On theContainer Serviceモニタリングページで、管理するクラスターを見つけ、その名前をクリックするか、詳細を表示で、アクション列を作成します。
説明CloudMonitorを使用して初めてクラスターをモニタリングすると、承認の実行を求めるメッセージが表示されます。 クラスターの詳細ページに移動する前に、[権限付与] をクリックして権限付与を完了する必要があります。
クラスターの詳細ページで、次のセクションのクラスターのモニタリングデータを表示します。クラスターの概要,ノード,名前空間,ワークロードとアラートルール.
詳細については、「モニタリングデータの表示」をご参照ください。
メトリックベースのアラートのシナリオ
シナリオ | 説明 | 設定方法 |
クラスターまたはクラスター内のノードのリソース使用量に対するしきい値トリガーアラートの設定 | クラスターまたはクラスター内のノードのリソース使用量がしきい値を超えると、サービスの中断を防ぐためにアラートがトリガーされます。 しきい値トリガーのアラートルールを設定して、クラスター全体またはクラスター内のすべてのノードのリソース使用量を監視することを推奨します。 | アラートルールを作成するときは、[リソース範囲] パラメーターを [クラスター] または [ノード] に設定します。 これにより、クラスターまたはクラスター内のノードで異常なメトリック値が検出された場合にアラート通知を受信できます。 [リソース範囲] パラメーターを [ノード] に設定した場合は、[ノード] ドロップダウンリストからすべてのノードを選択してください。 このようにして、Rule Descriptionパラメーターで指定されたメトリックの異常値がクラスター内の任意のノードで検出された場合、アラートがトリガーされます。 |
クラスター内のポッドのリソース使用量に対するしきい値トリガーアラートの設定 | クラスターのリソース使用量がしきい値を超える場合は、問題の原因となるポッドを見つける必要があります。 クラスター内のすべてのポッドのリソース使用量を監視するために、しきい値トリガーアラートルールを設定することを推奨します。 | アラートルールを作成するときは、[リソース範囲] パラメーターを [コンテナーグループ (ポッド)] に設定し、[名前空間] ドロップダウンリストと [コンテナーグループ (ポッド)] ドロップダウンリストから [すべて] を選択します。 このようにして、Rule Descriptionパラメーターで指定されたメトリックの異常値がクラスター内の任意のポッドで検出された場合、アラートがトリガーされます。 |
クラスターの指定された名前空間のポッドのリソース使用量に対するしきい値トリガーアラートの設定 | ほとんどの場合、クラスタは複数のアプリケーション間で共有されます。 Kubernetesでは、マルチテナント環境で名前空間を使用してアプリケーションを分離できます。 アプリケーションが存在する名前空間のリソース使用量がしきい値を超えると、アラートがトリガーされます。 クラスター内の指定された名前空間のすべてのポッドのリソース使用量を監視するように、しきい値トリガーアラートルールを設定することを推奨します。 | アラートルールを作成するときは、[リソース範囲] を [コンテナーグループ (ポッド)] に設定し、[名前空間] ドロップダウンリストからアプリケーションが存在する名前空間を選択し、[コンテナーグループ (ポッド)] ドロップダウンリストから [すべて] を選択します。 このように、Rule Descriptionパラメーターで指定されたメトリックの異常な値が、指定された名前空間内の任意のポッドで検出された場合、アラートがトリガーされます。 |
クラスターの指定された名前空間で指定されたアプリケーションを実行するポッドのリソース使用量に対するしきい値トリガーアラートの設定 | ほとんどの場合、クラスタは複数のアプリケーション間で共有されます。 Kubernetesでは、マルチテナント環境でワークロードを使用してアプリケーションを分離できます。 例えば、アプリケーションは、配置として実行されてもよい。 デプロイメントのリソース使用量がしきい値を超えると、アラートがトリガーされます。 指定されたワークロードのすべてのポッドのリソース使用量を監視するために、しきい値トリガーアラートルールを設定することを推奨します。 | アラートルールを作成するときは、[リソース範囲] パラメーターを [コンテナーグループ (ポッド)] に設定し、[名前空間] ドロップダウンリストからアプリケーションが存在する名前空間を選択し、アプリケーションのワークロードを選択します。 Deployment、StatefulSet、DaemonSet、Job、CronJobのワークロードがサポートされています。 [コンテナーグループ (ポッド)] ドロップダウンリストから [すべて] を選択します。 このように、Rule Descriptionパラメーターで指定されたメトリックの異常値が指定されたワークロードのいずれかのポッドで検出された場合、アラートがトリガーされます。 |
アラートルールの設定
手順1: アラート連絡先を作成してアラート連絡先グループに追加する
CloudMonitorコンソールにログインします。
左側のナビゲーションウィンドウで、を選択します。
アラート連絡先を作成し、アラート連絡先グループに追加します。
詳細については、「アラート送信先またはアラート送信先グループの作成」をご参照ください。
手順2: アラートルールの作成
CloudMonitorコンソールにログインします。
左側のナビゲーションウィンドウで、[Container Service Monitoring] を選択します。Container Service ACKを選択します。
On theContainer Serviceモニタリングページで、管理するクラスターを見つけて、アラートルールの表示で、アクション列を作成します。
表示されるページで、アラートルールの作成をクリックします。
[アラートルールの作成] パネルで、パラメーターを設定します。 下表にパラメーターを示します。
パラメーター
説明
リソース範囲
アラートルールが適用されるリソース。 有効な値:
クラスター: アラートルールがクラスターに適用されます。 このオプションを選択する場合は、クラスター名を選択する必要があります。
ノード: アラートルールは、クラスター内のすべてのノードまたは指定されたノードに適用されます。 このオプションを選択した場合、クラスターと1つ以上のノードを選択する必要があります。
コンテナーグループ (ポッド): アラートルールは、クラスターの指定された名前空間の下にある指定されたアプリケーション内のすべてのポッドまたは指定されたポッドに適用されます。 このオプションを選択した場合、クラスターとその名前空間を選択し、ステートレス、ステートフル、デーモンセット、タスク、またはスケジュール済みタスクタブでアプリケーションと1つ以上のポッドを選択する必要があります。
説明[コンテナーグループ] タブでは、1つ以上のポッドを選択するだけです。
ルールの説明
アラートルールをトリガーする条件。 メトリックが指定された条件を満たす場合、アラートルールがトリガーされます。
メトリック、しきい値、およびアラートレベルを設定します。 ポッドのメトリックの詳細については、「ACK (新バージョン) 」をご参照ください。
ミュート用
CloudMonitorがアラート通知を再送信するまでの間隔。 有効な値: 5分、15分、30分、60分、3時間、6時間、12時間、24時間。
メトリック値がしきい値に達すると、CloudMonitorはアラート通知を送信します。 ミュート期間内にメトリック値が再びしきい値に達した場合、CloudMonitorはアラート通知を再送信しません。 ミュート期間が終了してもアラートがクリアされない場合、CloudMonitorはアラート通知を再送信します。
有効期間
アラートルールが有効になっている期間。 CloudMonitorは、指定された期間内にのみ、アラートルールに基づいて指定されたリソースをモニタリングします。
アラートコールバック
インターネット経由でアクセスできるコールバックURL。 CloudMonitorは、指定されたURLにアラート通知をプッシュするHTTP POSTリクエストを送信します。 HTTPプロトコルのみがサポートされています。 アラートコールバックを設定する方法の詳細については、「アラートコールバック機能を使用してしきい値トリガーアラートに関する通知を送信する」をご参照ください。
説明CloudMonitorがアラート通知をプッシュするリクエストを送信するコールバックURL。 インターネット経由でアクセスできるコールバックURLを指定することをお勧めします。
アラート連絡先グループ
アラート通知の送信先のアラート連絡先グループ。
アラート通知は、選択したアラート連絡先グループに属するアラート連絡先に送信されます。 アラート連絡先グループには、1つ以上のアラート連絡先を含めることができます。
アラート送信先およびアラート送信先グループの作成方法の詳細については、「アラート送信先またはアラート送信先グループの作成」をご参照ください。
[OK] をクリックしてアラートルールを作成します。
作成したアラートルールは、[アラートルール] セクションで表示できます。 アラートルールの詳細については、「アラートルールの管理」をご参照ください。
検証
左側のナビゲーションウィンドウで、を選択します。
アラート履歴ページで、アラートトレンドと詳細なアラート履歴を表示します。
旧バージョンのリソースモニタリングを使用する
クラスターのmetrics-serverコンポーネントがV0.3.8.5以降に更新されていない場合は、次の手順を実行して、以前のバージョンのリソースモニタリングを使用できます。
ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターの名前をクリックします。 左側のウィンドウで、 を選択します。
[デプロイメント] ページで、管理するデプロイメントを見つけて、モニターアクション列で、モニタリングデータを確認します。
[デプロイメントアプリケーション] 、[コンテナグループリスト] 、および [コンテナグループホットスポット] タブでモニタリングデータを表示します。
(オプション) 左側のナビゲーションウィンドウで、 アラートルールを設定します。
グループベースのメトリックの名前はgroupで始まり、インスタンスベースのメトリックの名前はpodで始まります。
よくある質問
ACKクラスターにCloudMonitorのモニタリングデータが存在しない場合はどうすればよいですか。
この問題のトラブルシューティング方法の詳細については、ACKクラスターにデータが存在しない場合はどうすればよいですか。