ノードスケーリングダッシュボードでは、運用保守 (O&M) エンジニアが Pod およびノードのスケーリングアクティビティを一元的に把握できます。リアルタイムのクラスター状態、過去の傾向、イベントレベルの詳細情報を表示することで、クラスターログを手動でクエリすることなく、キャパシティの問題を特定し、スケーリング失敗の根本原因を迅速に突き止めることができます。
前提条件
作業を開始する前に、以下の条件を満たしていることを確認してください。
-
ご利用のクラスターでノードスケーリングダッシュボードが有効になっていること。有効化するには、チケットを送信してください。
-
ご利用のクラスターで Kubernetes イベントセンターが有効になっていること。詳細については、「イベントモニタリング」をご参照ください。
-
ご利用のクラスターで監査ログ機能が有効になっていること。詳細については、「クラスター監査の使用」をご参照ください。
ダッシュボードレイアウト
ノードスケーリングダッシュボードは、概要、Pod 詳細、ノード詳細、およびスケーリングアクティビティ一覧の 4 つのエリアで構成されています。
概要
概要エリアには、クラスターの健全性を迅速に評価するための主要メトリックが 5 つ表示されます。
| メトリック | 表示内容 |
|---|---|
| ノード総数 | クラスター内のノード総数 — クラスター全体のキャパシティを示します。 |
| 利用可能なノード数 | KubeletReady 状態のノード数です。この値がノード総数と異なる場合、一部のノードが KubeletNotReady 状態にあることを意味し、それらのノードはクラスターに追加中であるか、または障害が発生しています。 |
| クラスタースケーラビリティ | 現在、cluster-autoscaler がスケールアウト可能かどうかを示します。Ready 状態でないノード数が設定された上限を超えると、NO |
| 最新のスケールアウトアクティビティ | 選択した時間範囲におけるスケールアウトアクティビティの回数です。 |
| 最新のスケールインアクティビティ | 選択した時間範囲におけるスケールインアクティビティの回数です。 |
Pod 詳細
| チャート | 表示内容 |
|---|---|
| スケジュール不能な Pod の推移 | 時間経過に伴う Pending 状態の Pod 数です。この値が増加すると、通常はクラスターのスケールアウトが必要であることを示唆します。 |
| 削除された Pod の推移 | 時間経過に伴う削除された Pod 数です。急激な増加は、ノード上のリソース消費量がしきい値に達したことを示します。 |
ノード詳細
| チャート | 表示内容 |
|---|---|
| ノードステータスの推移 | 時間経過に伴うノード総数、KubeletReady ノード数、および KubeletNotReady ノード数です。KubeletNotReady のカウントには、直近 10 分以内に追加されたノードは含まれません。 |
| ノードスケールアウトの推移 | 時間経過に伴うスケールアウトアクティビティです。各データポイントは、cluster-autoscaler によるスケールアウト操作ごとに生成される ScaledUpGroup イベントの件数に対応します。 |
| ノードスケールインの推移 | 時間経過に伴うスケールインアクティビティです。各データポイントは、cluster-autoscaler によるスケールイン操作ごとに生成される ScaleDown イベントの件数に対応します。 |
スケーリングアクティビティ一覧
スケーリングアクティビティ一覧には、すべてのスケーリング関連イベントが時系列順に表示されます。Pod 名、ノード名、またはイベントタイプで検索して特定のアクティビティを特定し、その詳細を確認できます。
問題の特定
異常なノードの確認:ノード総数と利用可能なノード数を比較します。両者が異なる場合、一部のノードが異常状態にあるため、対応が必要です。
クラスターサイジングの評価:オンラインワークロードはピーク時と非ピーク時の間で変動し、オートスケーリングはこのパターンに追従するように設計されています。ノード詳細エリアを開き、直近のピーク期間を含む時間範囲を選択し、スケーリングの傾向とワークロード履歴を比較してください。クラスターが期待通りにスケーリングしなかった場合は、オートスケーリング設定を確認してください。
スケーリング失敗のトラブルシューティング
保留中の Pod が存在するがノードがスケールアウトしない
-
概要エリアのクラスタースケーラビリティメトリックを確認します。
-
NO と表示されている場合、cluster-autoscaler によるスケールアウトがブロックされています。続行する前にクラスターの状態をトラブルシューティングしてください。
-
YES と表示されている場合、次のステップに進みます。
-
-
スケーリングアクティビティ一覧で、Pod 名または
NotTriggerScaleUpイベントを検索します。 -
reasonフィールドを確認し、スケールアウトがトリガーされなかった理由を特定します。
スケールアウトがトリガーされたが完了に失敗した
-
スケーリングアクティビティ一覧で、
FailedToScaleUpGroupイベントを検索します。 -
reasonフィールドを確認し、cluster-autoscaler がスケールアウトを完了できなかった原因を特定します。
スケールアウトがトリガーされたタイミングの特定
スケーリングアクティビティ一覧で、Pod 名または NotTriggerScaleUp イベントを検索し、イベントのタイムスタンプを確認します。
スケールインがトリガーされたタイミングの特定
スケーリングアクティビティ一覧で、ノード名または ScaleDown イベントを検索し、イベントのタイムスタンプを確認します。
スケールインに失敗した
スケーリングアクティビティ一覧で、ノード名または ScaleDownFailed イベントを検索し、reason フィールドを確認します。