このページでは、Anthos clusters on VMware(GKE On-Prem)のアラート ポリシーを作成する方法について説明します。
始める前に
アラート ポリシーを作成するには、次の権限が必要です。
- monitoring.alertPolicies.create
- monitoring.alertPolicies.delete
- monitoring.alertPolicies.update
次のいずれかのロールがある場合、これらの権限が付与されます。
- monitoring.alertPolicyEditor
- monitoring.editor
- プロジェクト編集者
- プロジェクト オーナー
ロールを確認するには、Google Cloud Console の [IAM] ページに移動します。
ポリシーの作成: 管理クラスタ API サーバーの停止
この演習では、管理クラスタの Kubernetes API サーバー用のアラート ポリシーを作成します。このポリシーを設定すると、管理クラスタの API サーバーが停止するたびに通知を受け取るように調整できます。
ポリシー構成ファイル admin-cluster-apiserver-down.json をダウンロードします。
ポリシーを作成するには:
gcloud alpha monitoring policies create --policy-from-file=POLICY_CONFIG
POLICY_CONFIG は、ダウンロードした構成ファイルのパスに置き換えます。
アラート ポリシーを表示するには:
Console
Google Cloud Console で、[モニタリング] ページに移動します。
左側にある [アラート] を選択します。
[Policies] に、アラート ポリシーのリストが表示されます。
リストで、[GKE on-prem admin cluster API server down (critical)] を選択して、新しいポリシーの詳細を確認します。[Conditions] に、ポリシーの説明が表示されます。例:
Policy violates when ANY condition is met Anthos On-Prem Admin Cluster API Server is up Violates when: Any kubernetes.io/anthos/up stream is absent for greater than 5 minutes
gcloud
gcloud alpha monitoring policies list
出力に、ポリシーの詳細情報が表示されます。例:
combiner: OR conditions: – conditionAbsent: aggregations: - alignmentPeriod: 60s crossSeriesReducer: REDUCE_SUM groupByFields: - resource.label.project_id - resource.label.location - resource.label.cluster_name perSeriesAligner: ALIGN_MEAN duration: 300s filter: resource.type="k8s_container" AND metric.type="kubernetes.io/anthos/up" AND resource.label."container_name"=monitoring.regex.full_match("kube-apiserver") trigger: count: 1 ... displayName: GKE on-prem admin cluster API server down (critical) enabled: true ... name: projects/xxxxxx/alertPolicies/12331540576820203183
アラート ポリシーの追加作成
このセクションでは、推奨される一連のアラート ポリシーの説明と構成ファイルについて説明します。
ポリシーを作成するには、上の演習と同じ手順を行います。
右側の列のリンクをクリックして、構成ファイルをダウンロードします。
gcloud alpha monitoring policies create
を実行してポリシーを作成します。
管理クラスタ コントロール プレーン コンポーネントの可用性
アラート名 | 説明 | Cloud Monitoring でのアラート ポリシーの定義 |
---|---|---|
GKE on-prem admin cluster API server down (critical) | 管理クラスタ API サーバーが指標のターゲット検出に表示されなくなりました | admin-cluster-apiserver-down.json |
GKE on-prem admin cluster scheduler down (critical) | 管理クラスタ スケジューラが指標のターゲット検出に表示されなくなりました | admin-cluster-scheduler-down.json |
GKE on-prem admin cluster controller manager down (critical) | 管理クラスタ コントローラ マネージャーが指標のターゲット検出に表示されなくなりました | admin-cluster-controller-manager-down.json |
GKE on-prem admin cluster etcd down (critical) | 管理クラスタ etcd が、指標のターゲット検出に表示されなくなりました | admin-cluster-etcd-down.json |
ユーザー クラスタ コントロール プレーン コンポーネントの可用性
ユーザー クラスタのコントロール プレーンのアラートは、指標に基づいて作成されます。クラスタ指標のほとんどで、cluster_name
フィールドは、クラスタの名前になります。ただし、ユーザー クラスタ コントロール プレーンの指標では、cluster_name
フィールドは管理クラスタの名前で、namespace_name
フィールドがユーザー クラスタの名前になります。
これは、コントロール プレーンのステータス ダッシュボードを作成するのスクリーンショットで確認できます。
アラート名 | 説明 | Cloud Monitoring でのアラート ポリシーの定義 | |
---|---|---|---|
GKE on-prem user cluster API server down (critical) | ユーザー クラスタ API サーバーが指標のターゲット検出に表示されなくなりました | user-cluster-apiserver-down.json | |
GKE on-prem user cluster scheduler down (critical) | ユーザー クラスタ スケジューラが指標のターゲット検出に表示されなくなりました | user-cluster-scheduler-down.json | |
GKE on-prem user cluster controller manager down (critical) | ユーザー クラスタ コントローラ マネージャーが指標のターゲット検出に表示されなくなりました | user-cluster-controller-manager-down.json | |
GKE on-prem user cluster etcd down (critical) | ユーザー クラスタ etcd が、指標のターゲット検出に表示されなくなりました | user-cluster-etcd-down.json |
Kubernetes システム
アラート名 | 説明 | Cloud Monitoring でのアラート ポリシーの定義 |
---|---|---|
GKE on-prem pod crash looping (critical) | Pod がクラッシュ ループ状態です | pod-crash-looping.json |
GKE on-prem pod not ready for more than one hour (critical) | Pod の準備ができていない状態が 1 時間以上続いています | pod-not-ready-1h.json |
GKE on-prem persistent volume high usage (critical) | 指定された永続ボリュームはあと少しでいっぱいになります | persistent-volume-usage-high.json |
GKE on-prem node not ready for more than one hour (critical) | ノードの準備ができていない状態が 1 時間以上続いています | node-not-ready-1h.json |
Kubernetes パフォーマンス
アラート名 | 説明 | Cloud Monitoring でのアラート ポリシーの定義 |
---|---|---|
GKE on-prem admin cluster API server error count ratio exceeds 10 percent (critical) | 管理クラスタ API サーバーが、リクエストの 10% 超にエラーを返しています | admin-cluster-apiserver-error-ratio-10-percent.json |
GKE on-prem admin cluster API server error count ratio exceeds 5 percent (warning) | 管理クラスタ API サーバーが、リクエストの 5% 超にエラーを返しています | admin-cluster-apiserver-error-ratio-5-percent.json |
GKE on-prem user cluster API server error count ratio exceeds 10 percent (critical) | ユーザー クラスタ API サーバーが、リクエストの 10% 超にエラーを返しています | user-cluster-apiserver-error-ratio-10-percent.json |
GKE on-prem user cluster API server error count ratio exceeds 5 percent (warning) | ユーザー クラスタ API サーバーが、リクエストの 5% 超にエラーを返しています | user-cluster-apiserver-error-ratio-5-percent.json |
通知の取得
アラート ポリシーを作成すると、ポリシーに 1 つ以上の通知チャンネルを定義できます。通知チャンネルには、複数の種類があります。たとえば、メール、Slack チャンネル、モバイルアプリから通知を受け取れます。チャンネルは、ニーズに合わせて選択できます。
通知チャンネルを構成する方法については、通知チャンネルの管理をご覧ください。