Container Service for Kubernetes (ACK) は、さまざまなシナリオでトリガーされるアラートを一元管理できるアラート管理機能を提供します。 アラートルールを設定して、サービス例外が発生した場合、または次のメトリックのいずれかがしきい値を超えた場合に通知を受け取ることができます。 クラスターの作成時にアラートを有効にできます。 ACKを使用すると、クラスターにCustomResourceDefinitions (CRD) をデプロイして、アラートルールを設定および管理できます。 このトピックでは、アラート管理の使用シナリオを紹介し、アラートルールを設定する方法と、ACKクラスターのアラート管理を有効にする方法について説明します。
背景情報
アラート管理機能を使用すると、次のタイプのアラートを管理できます。
クラスター例外のイベントによってトリガーされるアラート。 イベントデータは、ACKのイベントセンターから同期される。 詳細については、「イベントモニタリングの概要」をご参照ください。
基本クラスターリソースの主要メトリックがしきい値を超えたときにトリガーされるアラート。 メトリクスはCloudMonitorから同期されます。 詳細については、「基本的なリソースモニタリング」をご参照ください。
シナリオ
ACKを使用すると、アラートルールを一元的に設定し、さまざまなシナリオでアラートを管理できます。 アラート管理機能は、次のシナリオでよく使用されます。
クラスターO&M
アラートルールを設定して、クラスター管理、ストレージ、ネットワーク、エラスティックスケーリングの例外をできるだけ早く検出できます。 たとえば、次のプラグインは、システムがクラスターを作成するときに自動的にインストールされます。
リソース例外のアラートルールセットを使用して、基本クラスターリソースの主要なメトリックがしきい値を超えた場合に通知を受け取ります。 CPU使用率、メモリ使用率、ネットワーク遅延などの主要なメトリックが指定されたしきい値を超えると、アラートがトリガーされます。 アラート通知を受け取った場合は、クラスターの安定性を確保するための対策を講じることができます。
クラスター例外のアラートルールセットを使用して、ノードまたはコンテナー例外を通知します。 アラートは、Dockerプロセスの例外、ノードプロセスの例外、ポッドの再起動の失敗などのイベントでトリガーされます。
ストレージ例外のアラートルールセットを使用して、ストレージの変更と例外を通知します。
ネットワーク例外のアラートルールセットを使用して、ネットワークの変更と例外を通知します。
[O&M例外のアラートルールセット] を使用して、クラスター制御に関連する変更と例外を通知します。
アプリケーション開発
アラートルールを設定して、できるだけ早い機会にクラスター内の実行中のアプリケーションの例外と異常なメトリックを通知することができます。 たとえば、レプリケートされたポッドの例外に関する通知や、デプロイのCPUとメモリの使用率がしきい値を超えた場合に通知を受け取るようにアラートルールを設定できます。 デフォルトのアラートルールテンプレートを使用して、クラスター内のレプリケートされたポッドの例外に関する通知を受信するアラートをすばやく設定できます。 たとえば、ポッド例外のアラートルールセットを設定および有効にして、アプリケーションのポッドで例外を通知することができます。
アプリケーション管理
アプリケーションのライフサイクル全体で発生する問題を通知するには、アプリケーションの正常性、容量計画、クラスターの安定性、例外、およびエラーに注意することをお勧めします。 重要なイベントに設定されたアラートルールセットを設定および有効にして、クラスター内の警告とエラーを通知することができます。 リソース例外のアラートルールセットを設定および有効にして、クラスターでの異常なリソース使用量を通知し、容量計画を最適化できます。
マルチクラスター管理
複数のクラスターを管理する場合、クラスター間でアラートルールを設定して同期することは複雑なタスクになる場合があります。 ACKを使用すると、クラスターにCRDをデプロイしてアラートルールを管理できます。 同じCRDを設定して、複数のクラスター間でアラートルールを同期できます。
コンポーネントのインストールと更新
アラートを有効にする前に、ACKコンソールはコンポーネントをアクティブ化、インストール、または更新する必要があるかどうかを自動的にチェックします。
ACKコンソールにログインします。
ACKコンソールの左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターを見つけ、クラスターの名前をクリックするか、[操作] 列の [詳細] をクリックします。 クラスターの詳細ページが表示されます。
左側のナビゲーションウィンドウで、 .
アラートページで、コンソールは次の条件が満たされているかどうかを自動的に確認します。
すべての条件が満たされていない場合は、画面の指示に従って必要なコンポーネントをインストールまたは更新します。
Simple Log Serviceが有効化されています。 Simple Log Serviceが有効化されていない場合は、Simple log Serviceコンソールにログインし、画面の指示に従ってサービスを有効化します。
説明Simple Log Serviceの課金ルールの詳細については、「課金機能の課金項目」をご参照ください。
Event Centerがインストールされています。 詳細については、「イベントモニタリング」をご参照ください。
alicloud-monitor-controllerコンポーネントが最新バージョンに更新されました。 詳細については、「alicloud-monitor-controller」をご参照ください。
アラートの設定
ACK管理クラスターとACK専用クラスターはアラート機能をサポートしています。
手順1: デフォルトのアラートルールの有効化
ACKマネージドクラスターを作成するときに、[デフォルトのアラートルールテンプレートを使用] を選択し、アラート連絡先グループを指定します。
このオプションを選択すると、デフォルトのアラートルールが自動的に作成され、指定された連絡先グループにアラート通知が送信されます。
詳細については、「ACK管理クラスターの作成」をご参照ください。
既存のクラスターのアラートを設定するには、クラスターのアラートルールを有効にします。
左側のナビゲーションウィンドウで、
を選択します。[アラートルール] タブで、アラートルールセットを選択し、[ステータス] をオンにしてアラートルールセットを有効にします。
詳細は、「手順2: アラートルールの設定」をご参照ください。
手順2: アラートルールの設定
ACK管理クラスターまたはACK専用クラスターを作成した後、アラートルール、アラート連絡先、およびアラート連絡先グループを管理できます。
ACKコンソールにログインします。
ACKコンソールの左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターを見つけ、クラスターの名前をクリックするか、[操作] 列の [詳細] をクリックします。 クラスターの詳細ページが表示されます。
左側のナビゲーションウィンドウで、 .
機能
説明
アラートルール
既定では、ACKは例外とメトリックに基づいてアラートを生成するために使用できるアラートルールテンプレートを提供します。
アラートルールは、いくつかのアラートルールセットに分類される。 アラートルールセットを有効にし、アラートルールセットを無効にし、アラートルールセットに複数のアラート連絡先グループを設定できます。
アラートルールセットには、複数のアラートルールが含まれています。 各アラートルールは、アラートアイテムに対応する。 YAMLファイルを作成して、クラスターに複数のアラートルールセットを設定できます。 YAMLファイルを変更してアラートルールを更新することもできます。
YAMLファイルを使用してアラートルールを設定する方法の詳細については、「CRDを使用したアラートルールの設定」をご参照ください。
デフォルトのアラートルールテンプレートの詳細については、「デフォルトのアラートルールテンプレート」をご参照ください。
アラート履歴
最大100の履歴アラートを表示できます。 アラートを選択し、[アラートルール] 列のリンクをクリックすると、モニタリングシステムのルールの詳細を表示できます。 [詳細] をクリックすると、アラートがトリガーされたリソースページに移動できます。 アラートは、例外または異常なメトリックによってトリガされ得る。
アラート連絡先
アラート連絡先を作成、編集、または削除できます。
リソース例外のアラートルールセットには、基本ノードリソースのアラートルールが含まれます。 アラート連絡先が基本クラスターリソースに関するアラートを受信する前に、CloudMonitorコンソールで連絡先の携帯電話番号とメールアドレスを確認する必要があります。 CloudMonitorコンソールでアラート送信先に関する情報を表示および更新できます。 検証の有効期限が切れている場合は、CloudMonitorコンソールで連絡先を削除し、ACKコンソールでアラート連絡先ページを更新します。
アラート連絡先グループ
アラート連絡先グループを作成、編集、または削除できます。 アラート連絡先グループが存在しない場合、ACKコンソールは、登録時に指定した情報に基づいて、デフォルトのアラート連絡先グループを自動的に作成します。
[アラートルール] タブで、[連絡先の変更] をクリックして、アラートの送信先の連絡先グループを指定します。 [ステータス] をオンまたはオフにすると、アラートルールセットを有効または無効にできます。
CRDを使用したアラートルールの設定
アラート機能を有効にすると、システムはkube-system名前空間にAckAlertRule型のリソースオブジェクトを自動的に作成します。 リソースオブジェクトには、デフォルトのアラートルールテンプレートが含まれています。 リソースオブジェクトを使用して、アラートルールセットを設定できます。
ACKコンソールにログインします。
ACKコンソールの左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターを見つけ、クラスターの名前をクリックするか、[操作] 列の [詳細] をクリックします。 クラスターの詳細ページが表示されます。
左側のナビゲーションウィンドウで、 .
[アラートルール] タブの右上隅にある [アラートルールの設定] をクリックします。 AckAlertRuleオブジェクトの設定を表示し、YAMLファイルを変更して設定を更新できます。
例:
apiVersion: alert.alibabacloud.com/v1beta1 kind: AckAlertRule metadata: name: default spec: groups: # The following code is a sample alert rule based on cluster events. - name: pod-exceptions # The name of the alert rule set. This parameter corresponds to the Group_Name field in the alert rule template. rules: - name: pod-oom # The name of the alert rule. type: event # The type of the alert rule, which corresponds to the Rule_Type parameter. Valid values: event and metric-cms. expression: sls.app.ack.pod.oom # The alert rule expression. If you set the rule type to event, the expression is set to the value of Rule_Expression_Id in the default alert rule template. enable: enable # The status of the alert rule. Valid values: enable and disable. - name: pod-failed type: event expression: sls.app.ack.pod.failed enable: enable # The following code is a sample alert rule for basic cluster resources. - name: res-exceptions # The name of the alert rule set. This parameter corresponds to the Group_Name field in the alert rule template. rules: - name: node_cpu_util_high # The name of the alert rule. type: metric-cms # The type of the alert rule, which corresponds to the Rule_Type parameter. Valid values: event and metric-cms. expression: cms.host.cpu.utilization # The alert rule expression. If you set the rule type to event, the expression is set to the value of Rule_Expression_Id in the default alert rule template. contactGroups: # The contact group that is associated with the alert rule. The contacts created by an Alibaba Cloud account are shared by all clusters within the account. enable: enable # The status of the alert rule. Valid values: enable and disable. thresholds: # The alert threshold. For more information, see the "Modify the alert threshold for basic cluster resources" section of this topic. - key: CMS_ESCALATIONS_CRITICAL_Threshold unit: percent value: '1'
デフォルトのアラートルールテンプレート
ACKは、次の条件でデフォルトのアラートルールを作成します。
デフォルトのアラートルールが有効になっています。
初めて [アラートルール] タブに移動すると、デフォルトのアラートルールが有効になりません。
次の表に、デフォルトのアラートルールを示します。
アラートルールセット | アラートルール | 説明 | Rule_タイプ | ACK_CR_Rule_Name | SLS_Event_ID |
クラスター内の重要なイベントに設定されたアラートルール。 | エラー | クラスターでエラーが発生すると、アラートがトリガーされます。 | event | エラーイベント | sls.app.ack. エラー |
警告 | クラスターで警告が発生すると、無視できる警告を除き、警告がトリガーされます。 | event | warn-イベント | sls.app.ack.warn | |
クラスター例外のアラートルールセット | ノードのDockerプロセス例外 | ノードでdockerd例外またはcontainerd例外が発生すると、アラートがトリガーされます。 | event | docker-hang | sls.app.ack.doc ker.hang |
クラスターでの回避 | ポッドが退去すると、アラートがトリガーされます。 | event | eviction-イベント | sls.app.ack.eviction | |
GPU XIDエラー | GPU XIDエラーが発生すると、アラートがトリガーされます。 | event | gpu-xid-エラー | sls.app.ack.gpu.xid_error | |
ノードがスケジュール不可状態に変更 | ノードのステータスがスケジュール不可に変わると、アラートがトリガーされます。 | event | ノードダウン | sls.app.ack.node.down | |
ノードの再起動 | ノードが再起動すると、アラートがトリガーされます。 | event | node-restart | sls.app.ack.node.restart | |
ノードでのNTPサービス障害 | ネットワークタイムプロトコル (NTP) サービスが失敗すると、アラートがトリガーされます。 | event | ノード-ntp-down | sls.app.ack.ntp.down | |
ノードのPLEGエラー | ノードでLifecycle Event Generator (PLEG) エラーが発生すると、アラートがトリガーされます。 | event | node-pleg-エラー | sls.app.ack.node.pleg_error | |
ノードのプロセスエラー | ノードでプロセスエラーが発生すると、アラートがトリガーされます。 | event | ps-ハング | sls.app.ack.ps.hang | |
リソース例外のアラートルールセット | ノード-CPU使用率 ≥ 85% | ノードのCPU使用率がしきい値を超えると、アラートがトリガーされます。 デフォルトのしきい値は85% です。 使用可能なCPUリソースの割合が15% 未満の場合、コンポーネント用に予約されたCPUリソースが不足する可能性があります。 詳細については、「リソース予約ポリシー」をご参照ください。 その結果、CPUスロットリングは頻繁にトリガされ、プロセスはゆっくりと応答する。 CPU使用率を最適化するか、できるだけ早い機会にしきい値を調整することを推奨します。 しきい値を調整する方法の詳細については、「基本クラスターリソースのアラートしきい値の変更」をご参照ください。 | メトリック-cms | node_cpu_util_high | cms.host.cpu. の使用 |
ノード-メモリ使用量 ≥ 85% | ノードのメモリ使用量がしきい値を超えると、アラートがトリガーされます。 デフォルトのしきい値は85% です。 使用可能なメモリリソースの割合が15% 未満の場合、コンポーネント用に予約されたメモリリソースが不足する可能性があります。 詳細については、「リソース予約ポリシー」をご参照ください。 このシナリオでは、kubeletはノードからポッドを強制的に削除します。 メモリ使用量を最適化するか、できるだけ早い機会にしきい値を調整することを推奨します。 しきい値を調整する方法の詳細については、「基本クラスターリソースのアラートしきい値の変更」をご参照ください。 | メトリック-cms | node_mem_util_high | cms.host.memory. の使用 | |
ノード-ディスク使用量 ≥ 85% | ノードのディスク使用量がしきい値を超えると、アラートがトリガーされます。 デフォルトのしきい値は85% です。 しきい値を調整する方法の詳細については、「基本クラスターリソースのアラートしきい値の変更」をご参照ください。 | メトリック-cms | node_disk_util_high | cms.host.disk. の使用 | |
ノード-アウトバウンドパブリック帯域幅の使用量 ≥ 85% | ノードのアウトバウンドパブリック帯域幅の使用率がしきい値を超えると、アラートがトリガーされます。 デフォルトのしきい値は85% です。 しきい値を調整する方法の詳細については、「基本クラスターリソースのアラートしきい値の変更」をご参照ください。 | メトリック-cms | node_public_net_util_high | cms.host.public.net work.utilization | |
ノード-Inode使用量 ≥ 85% | ノードのinode使用量がしきい値を超えると、アラートがトリガーされます。 デフォルトのしきい値は85% です。 しきい値を調整する方法の詳細については、「基本クラスターリソースのアラートしきい値の変更」をご参照ください。 | メトリック-cms | node_fs_inode_util_high | cms.host.fs.inode. の使用 | |
リソース-SLBインスタンスの最大接続の使用率 ≧ 85% | Server Load Balancer (SLB) インスタンスの最大接続数の使用率がしきい値を超えると、アラートがトリガーされます。 デフォルトのしきい値は85% です。 説明 このルールは、Kubernetes APIサーバーおよびIngress用に作成されたすべてのSLBインスタンスに適用されます。 しきい値を調整する方法の詳細については、「基本クラスターリソースのアラートしきい値の変更」をご参照ください。 | メトリック-cms | slb_qps_util_high | cms.slb.qps. の使用 | |
リソース-SLBアウトバウンド帯域幅の使用量 ≥ 85% | SLBインスタンスのアウトバウンド帯域幅の使用率がしきい値を超えると、アラートがトリガーされます。 デフォルトのしきい値は85% です。 説明 このルールは、Kubernetes APIサーバーおよびIngress用に作成されたすべてのSLBインスタンスに適用されます。 しきい値を調整する方法の詳細については、「基本クラスターリソースのアラートしきい値の変更」をご参照ください。 | メトリック-cms | slb_traff_tx_util_high | cms.slb.traffic.tx.utilization | |
リソース-SLBインスタンスの最大接続の使用率 ≧ 85% | SLBインスタンスの最大接続数の使用率がしきい値を超えると、アラートがトリガーされます。 デフォルトのしきい値は85% です。 説明 このルールは、Kubernetes APIサーバーおよびIngress用に作成されたすべてのSLBインスタンスに適用されます。 しきい値を調整する方法の詳細については、「基本クラスターリソースのアラートしきい値の変更」をご参照ください。 | メトリック-cms | slb_max_con_util_high | cms.slb.max.connection.utilization | |
リソース-SLBインスタンスのリスナーの1秒あたりの接続ドロップ数は1以上のまま | SLBインスタンスのリスナーによって1秒あたりにドロップされた接続数が1以上のままである場合、アラートがトリガーされます。 デフォルトのしきい値は1です。 説明 このルールは、Kubernetes APIサーバーおよびIngress用に作成されたすべてのSLBインスタンスに適用されます。 しきい値を調整する方法の詳細については、「基本クラスターリソースのアラートしきい値の変更」をご参照ください。 | メトリック-cms | slb_drop_con_high | cms.slb.drop.connection | |
ノードの過剰なファイルハンドル | ノードに過剰なファイルハンドルが存在すると、アラートがトリガーされます。 | event | ノード-fd-圧力 | sls.app.ack.node.fd_pressure | |
ノードディスク容量不足 | ノードのディスク容量が不足すると、アラートがトリガーされます。 | event | ノードディスク圧力 | sls.app.ack.node.disk_pressure | |
ノードの過剰なプロセス | ノードで過剰なプロセスが実行されると、アラートがトリガーされます。 | event | ノード-pid-圧力 | sls.app.ack.node.pid_pressure | |
スケジューリングに不十分なノードリソース | ノードのスケジューリングに十分なリソースがない場合、アラートがトリガーされます。 | event | ノード-res-不十分 | sls.app.ack.resource. insufficious | |
ノードIPアドレス不足 | ノードのIPアドレスが不足すると、アラートがトリガーされます。 | event | ノード-ip-pressure | sls.app.ack.ip.not_enough | |
ポッド例外のアラートルールセット | ポッドOOMエラー | ポッドでメモリ不足 (OOM) エラーが発生すると、アラートがトリガーされます。 | event | ポッド-oom | sls.app.ack.pod.oom |
ポッドの再起動の失敗 | ポッドの再起動に失敗すると、アラートがトリガーされます。 | event | ポッドに失敗 | sls.app.ack.pod.failed | |
イメージプルの失敗 | イメージのプルに失敗すると、アラートがトリガーされます。 | event | イメージ-pull-back-off | sls.app.ack.image.pull_back_off | |
O&M例外のアラートルールセット | 利用可能なSLBインスタンスがありません | SLBインスタンスの作成に失敗すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | slb-no-ava | sls.app.ack.ccm.no_ava_slb |
SLBインスタンスの更新の失敗 | SLBインスタンスの更新に失敗すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | slb-sync-err | sls.app.ack.ccm.sync_slb_failed | |
SLBインスタンスの削除失敗 | SLBインスタンスの削除に失敗すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | slb-del-err | sls.app.ack.ccm.de l_slb_failed | |
ノード削除の失敗 | ノードの削除に失敗すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | ノード-del-err | sls.app.ack.ccm.de l_node_failed | |
ノードの追加失敗 | ノードのクラスターへの追加に失敗すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | ノード-add-err | sls.app.ack.ccm.add_node_failed | |
ルート作成の失敗 | クラスターが仮想プライベートクラウド (VPC) でルートの作成に失敗すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | route-create-err | sls.app.ack.ccm.create_route_failed | |
ルート更新の失敗 | クラスターがVPCのルートの更新に失敗すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | route-sync-err | sls.app.ack.ccm.sync_route_failed | |
マネージドノードプールでのコマンド実行の失敗 | ノードプールエラーが発生すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | nlc-run-cmd-err | sls.app.ack.nlc.ru n_command_fail | |
管理対象ノードプールでのノード削除の失敗 | ノードプールエラーが発生すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | nlc-empty-cmd | sls.app.ack.nlc.empty_task_cmd | |
マネージドノードプールで未実装のURLモード | ノードプールエラーが発生すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | nlc-url-m-unimp | sls.app.ack.nlc.url_mode_unimpl | |
マネージドノードプールでの未知の修復操作 | ノードプールエラーが発生すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | nlc-opt-no-found | sls.app.ack.nlc.op_not_found | |
マネージドノードプールでのノードのドレインと削除の失敗 | ノードプールエラーが発生すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | nlc-des-node-err | sls.app.ack.nlc.de stroy_node_fail | |
マネージドノードプールでのノードのドレイン障害 | 管理対象ノードプール内のノードのドレインに失敗した場合、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | nlc-drain-node-err | sls.app.ack.nlc.drain_node_fail | |
マネージドノードプールでのECS再起動タイムアウト | ノードプールエラーが発生すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | nlc-restart-ecs-wait | sls.app.ack.nlc.restart_ecs_wait_fail | |
マネージドノードプールでのECS再起動の失敗 | ノードプールエラーが発生すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | nlc-restart-ecs-err | sls.app.ack.nlc.restart_ecs_fail | |
マネージドノードプールでのECSリセットの失敗 | ノードプールエラーが発生すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | nlc-reset-ecs-err | sls.app.ack.nlc.reset_ecs_fail | |
管理対象ノードプールでの自動修復タスクの失敗 | ノードプールエラーが発生すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | nlc-sel-repair-err | sls.app.ack.nlc.repair_fail | |
ネットワーク例外のアラートルールセット | 無効なTerwayリソース | Terwayリソースが無効な場合、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | terway-invalid-res | sls.app.ack.terway.invalid_resource |
TerwayのIP割り当ての失敗 | TerwayモードでIPアドレスの割り当てに失敗すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | terway-alloc-ip-err | sls.app.ack.terway.alloc_ip_fail | |
Ingress帯域幅の構成解析の失敗 | Ingressの帯域幅設定の解析に失敗すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | terway-parse-err | sls.app.ack.terway.parse_fail | |
Terwayのネットワークリソース割り当ての失敗 | ネットワークリソースがTerwayモードで割り当てられない場合、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | terway-alloc-res-err | sls.app.ack.terway.allocate_failure | |
Terwayのネットワークリソース回収障害 | ネットワークリソースがTerwayモードで再利用に失敗すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | terway-dispose-err | sls.app.ack.terway.dispose_failure | |
Terway仮想モードの変更 | Terway仮想モードが変更されると、アラートがトリガーされます。 | event | terway-virt-mod-err | sls.app.ack.terway.virtual_mode_change | |
Terwayによって実行されるポッドIPチェック | ポッドIPがTerwayモードでチェックされると、アラートがトリガーされます。 | event | terway-ip-チェック | sls.app.ack.terway.config_check | |
Ingress設定のリロードの失敗 | Ingressの設定のリロードに失敗すると、アラートがトリガーされます。 この場合は、Ingress設定が有効かどうかを確認してください。 | event | ingress-reload-err | sls.app.ack.ingress.err_reload_nginx | |
ストレージ例外のアラートルールセット | クラウドディスクサイズが20 GiB未満 | ACKでは、20 GiB未満のディスクをマウントすることはできません。 クラスターに接続されているディスクのサイズを確認できます。 | event | csi_invalid_size | sls.app.ack.csi.invalid_disk_size |
サブスクリプションクラウドディスクをマウントできません | ACKでは、サブスクリプションディスクをマウントできません。 クラスターに接続されているディスクの課金方法を確認できます。 | event | csi_not_portable | sls.app.ack.csi.disk_not_portable | |
マウントターゲットが使用されているため、マウントターゲットのアンマウントに失敗する | マウントターゲットが使用中であるため、アンマウントに失敗するとアラートがトリガーされます。 | event | csi_device_busy | sls.app.ack.csi.de ivce_busy | |
利用可能なクラウドディスクがありません | 使用可能なディスクがない場合、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | csi_no_ava_disk | sls.app.ack.csi.no_ava_disk | |
クラウドディスクのI/Oハング | ディスクでI/Oハングが発生すると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | csi_disk_iohang | sls.app.ack.csi.disk_iohang | |
クラウドディスクのマウントに使用されるPVCのI/O速度が遅い | 永続ボリューム要求 (PVC) を使用してマウントされたディスクのI/Oが遅い場合、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | csi_latency_high | sls.app.ack.csi.latency_too_high | |
ディスク使用量がしきい値を超えています | ディスクの使用量が指定されたしきい値を超えると、アラートがトリガーされます。 クラスターにマウントされているディスクの使用状況を確認できます。 | event | disk_space_press | sls.app.ack.csi.no_enough_disk_space | |
クラスターセキュリティイベントのアラートルールセット | 検査で検出されたリスクの高い構成 | クラスター検査中にリスクの高い設定が検出されると、アラートがトリガーされます。 この場合、チケットを起票し、ACK技術チームにお問い合わせください。 | event | si-c-a-リスク | sls.app.ack.si.config_audit_high_risk |
ACK専用クラスターのアラート管理の有効化
専用クラスターのアラート管理機能を有効にする前に、クラスターに必要な権限を付与する必要があります。
システムは、Simple Log Serviceのアラート機能に関連するリソースにアクセスする権限をACK管理クラスターに自動的に付与します。
Simple Log ServiceおよびManaged Service for Prometheusのアラート機能に関連するリソースにアクセスする権限をACK専用クラスターに付与します。 詳細については、「カスタムポリシーを使用してRAMユーザーに権限を付与する例」および「概要」をご参照ください。
ACKコンソールにログインします。
ACKコンソールの左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターを見つけ、クラスターの名前をクリックするか、[操作] 列の [詳細] をクリックします。 クラスターの詳細ページが表示されます。
クラスター情報ページをクリックし、クラスターリソースタブの右側にあるリンクをクリックし、ワーカーRAMロールに行くためにResource Access Management (RAM) コンソール.
[権限] タブで、[ポリシー] 列で変更するポリシーの名前をクリックします。
[ポリシードキュメント] タブで、[ポリシードキュメントの変更] をクリックし、次のコンテンツを追加します。
{ "Action": [ "log:*", "arms:*", "cms:*", "cs:UpdateContactGroup" ], "Resource": [ "*" ], "Effect": "Allow" }
[次へ] をクリックし、[OK] をクリックします。
ログをチェックして、権限が付与されていることを確認します。
[ACKコンソール] で、管理するクラスターをクリックします。 左側のナビゲーションウィンドウで、 を選択します。
セット名前空間kube-systemに移動し、[デプロイメント] リストでalicloud-monitor-controllerを見つけ、名前列を作成します。
[ログ] タブをクリックし、認証が成功したことを示すログコンテンツが表示されていることを確認します。
基本クラスターリソースのアラートしきい値の変更
アラートルールのRule_Typeがmetric-cmsに設定されている場合、メトリクスはCloudMonitorから同期されます。 CRDオブジェクトを使用して、アラートルールのアラートしきい値を変更できます。 詳細については、「CRDを使用したアラートルールの設定」をご参照ください。
この例では、CPU使用率アラートルールはCRDオブジェクトを使用して変更されます。 threshold
パラメーターは、アラートのしきい値、CPU使用率がしきい値を超えた回数、および無音期間を指定するために使用されます。
apiVersion: alert.alibabacloud.com/v1beta1
kind: AckAlertRule
metadata:
name: default
spec:
groups:
# The following code is a sample alert rule for basic cluster resources.
- name: res-exceptions # The name of the alert rule set. This parameter corresponds to the Group_Name field in the alert rule template.
rules:
- name: node_cpu_util_high # The name of the alert rule.
type: metric-cms # The type of the alert rule. Valid values: event and metric-cms.
expression: cms.host.cpu.utilization # The alert rule expression. If you set the rule type to event, the expression is set to the value of Rule_Expression_Id in the default alert rule template.
contactGroups: # The contact group associated with the alert rule. You can add contact groups in the ACK console. The contacts created by an Alibaba Cloud account are shared by all clusters within the account.
enable: enable # The status of the alert rule. Valid values: enable and disable.
thresholds: # The alert threshold. For more information, see Configure alert rules by using CRDs.
- key: CMS_ESCALATIONS_CRITICAL_Threshold
unit: percent
value: '1'
- key: CMS_ESCALATIONS_CRITICAL_Times
value: '3'
- key: CMS_RULE_SILENCE_SEC
value: '900'
パラメーター | 説明 | デフォルト |
| アラートしきい値。
This parameter is required. このパラメーターを空のままにすると、変更は有効にならず、アラートルールは無効になります。 | デフォルト値は、デフォルトのアラートルールテンプレートで指定されたデフォルト値と同じです。 |
| アラートがトリガーされるまでにアラートのしきい値を超えた回数。 このパラメーターはオプションです。 このパラメーターを空のままにすると、デフォルト値が使用されます。 | 3 |
| アラートがトリガーされた後の無音期間。 このパラメーターは、頻繁なアラートを防ぐために使用します。 単位は秒です。 このパラメーターはオプションです。 このパラメーターを空のままにすると、デフォルト値が使用されます。 | 900 |
対応するモニタリングシステムでアラートルールを表示する
アラート管理のアラートルールを有効にすると、有効にしたアラートルールのステータスが [アラートルール] タブで更新されます。 [詳細設定] をクリックすると、ARMS、Simple Log Service、CloudMonitorなどの対応するモニタリングシステムのルール詳細ページに移動できます。 対応する監視システムのコンソールに移動して、アラートルールの詳細を表示することもできます。
Simple Log Serviceでアラートルールを表示する:
Simple Log Serviceコンソールにログインします。
クラスターで使用されているSimple Log Serviceプロジェクトを見つけてクリックします。 クラスターで使用されるSimple Log Serviceプロジェクトのデフォルト名はK8s-log-{{clusterId}} です。
左側のナビゲーションウィンドウで、アイコンをクリックします。 [アラートセンター] ページで、[アラートルール /インシデント] タブをクリックして、有効になっているルールを表示します。 ACKのアラート管理機能によって更新されるデフォルトのアラートルールをフィルタリングするには、[タイプ] で [ACK] を選択します。
説明アラート管理のアラートルールが有効になっていることを確認する必要があります。 それ以外の場合、ACKオプションは [タイプ] フィールドに表示されません。
CloudMonitorでアラートルールを表示する:
CloudMonitor コンソールにログインします。
左側のナビゲーションウィンドウで、[アプリケーショングループ] をクリックします。 [アプリケーショングループ] ページで、[リソースタグのルール] タブをクリックします。
ルールの説明列で、リソースタグKe y:ack.aliyun.com、タグ値: Equal To is <Cluster ID> を検索します。
Managed Service for Prometheusでアラートルールを表示する: ARMSコンソールにログインし、ACKのアラート管理機能によって更新されたアラートルールを表示します。 Managed Service for Prometheusコンソールに表示される各アラートルールの名前は、
[アラートルールname_Cluster名]
形式です。
よくある質問
アラートルールの更新に失敗し、次のエラーメッセージが返された場合はどうすればよいですか: プロジェクトは存在しません: k8s-log-xxx?
現象:
次の図に示すように、システムはエラーメッセージを返します。
原因:
クラスターのSimple Log Serviceにイベントセンターを作成していません。
解決策:
Simple Log Serviceコンソールに移動します。 プロジェクト数がクォータ制限に達しているかどうかを確認します。 クォータ制限に達した場合は、過剰なプロジェクトを削除するか、または チケットを起票し、クォータの増加を申請します。 Simple Log Serviceプロジェクトを削除する方法の詳細については、「プロジェクトの管理」をご参照ください。
ack-node-problem-detectorを再インストールします。
ACKコンソールのクラスター詳細ページの左側のナビゲーションウィンドウで、 を選択します。
YAMLファイルを使用してack-node-problem-detectorを再インストールする場合は、次の手順を実行してack-node-problem-detectorのYAMLテンプレートのコピーを取得します。
Helmページで、ack-node-problem-detectorを見つけ、[操作] 列の [更新] をクリックします。 ack-node-problem-detectorが更新されたら、[操作] 列の [詳細の表示] をクリックします。 ack-node-problem-detectorの詳細ページで、リソースを選択し、[YAMLで表示] をクリックして、YAMLコンテンツをオンプレミスマシンにコピーします。 各リソースに対して同じ操作を実行して、YAMLテンプレートのコピーを取得します。
Helmページで、ack-node-problem-detectorを選択し、[操作] 列の [削除] をクリックします。
詳細ページの左側のナビゲーションウィンドウで、
を選択します。[ログとモニタリング] タブをクリックし、ack-node-problem-detectorを見つけて、[インストール] をクリックします。
[メモ] メッセージで、プラグインのバージョンを確認し、[OK] をクリックします。 ack-node-problem-detectorがインストールされた後、単語「installed」とバージョン情報がack-node-problem-detectorセクションに表示されます。
連絡先グループがアラートルールをサブスクライブしていないためにアラートルールの更新に失敗した場合はどうすればよいですか。
現象:
次の図に示すように、システムはエラーメッセージを返します。
次のエラーメッセージが返されます。このルールにはxxx連絡先グループ参照がありません。
原因:
アラートルールをサブスクライブする連絡先グループはありません。
解決策:
連絡先グループを作成し、連絡先を追加します。
アラートルールを見つけて、[連絡先の変更] をクリックします。 [連絡先の変更] パネルで、サブスクライバーとして作成した連絡先グループを追加します。
詳細については、「アラートの設定」をご参照ください。