Kubernetes 用スマートアラート

「 Kubernetes 」のスマートアラートを使用すると、クラスター、ポッド、デプロイメントなどの Kubernetes エンティティタイプを選択し、そのエンティティに対して監視する特定のメトリクスを選定することで、事前にアラートを受け取ることができます。 この機能により、 Kubernetes 環境に特化したインフラストラクチャのスマートアラートを、一元的に確認することができます。

この集中的なアプローチにより、 Kubernetes の管理者やSREは、 Kubernetes 以外のインフラストラクチャからの不要なアラートに邪魔されることなく、コンテナオーケストレーションプラットフォームを監視できるようになります。 「 Kubernetes 」のスマートアラートには、以下の機能が含まれています:
  • Kubernetes に特化したインフラストラクチャ ・スマートアラートのビューで、管理対象となる Kubernetes エンティティタイプに関連するアラートのみをフィルタリングして表示します。
  • エンティティの選択プロセスが合理化され、クラスター、ノード、ポッド、デプロイメント、コントロールプレーンコンポーネント、 ArgoCD アプリケーション、 KubeCost, など、 Kubernetes 固有のエンティティタイプから選択できるようになりました。
  • Kubernetes ダッシュボードからすべての Kubernetes アラートにアクセスできる、 Kubernetes の一元管理。
  • カスタム集計、エンティティごとのアラート、予測アラート、および複数の深刻度レベルに対応したしきい値など、インフラストラクチャの「Smart Alert」機能をすべて活用してください。

Kubernetes のスマートアラートへのアクセス

Instana のUIでは、複数の場所から Kubernetes のスマートアラートにアクセスしたり、作成したりすることができます:
  • 「 Kubernetes 」のプラットフォームビューから
  • Kubernetes クラスタのダッシュボードから
  • Kubernetes のネームスペースダッシュボードから
Kubernetes の「プラットフォーム」ビューから
  1. Instana のUIにあるナビゲーションメニューから、 「Platforms」 を選択します。
  2. Kubernetes 」を選択します。
  3. スマートアラート 」タブをクリックします。
図 1. Kubernetes スマートアラート画面
Kubernetes スマートアラート画面
Kubernetes クラスタのダッシュボードから
  1. 特定の Kubernetes クラスタのダッシュボードに移動します。
  2. スマートアラート 」タブをクリックします。
図 2. Kubernetes クラスターのスマートアラート画面
Kubernetes クラスターのスマートアラート画面
注: このビューには、選択したクラスタ内のエンティティに対して設定されたすべてのスマートアラートが表示されます。
制限事項: 2つ以上のクラスターで同じ名前が使用されている場合、スマートアラートはそれらのすべてのクラスターに適用されます。 特定のクラスターを指定するには、ゾーン、リージョン、またはその他のカスタムタグなど、識別用の属性を追加してフィルタを調整する必要がある場合があります。
Kubernetes のネームスペースダッシュボードから
  1. 特定の Kubernetes ネームスペースのダッシュボードに移動します。
  2. スマートアラート 」タブをクリックします。
図 3. Kubernetes 名前空間 Smart Alerts ビュー
Kubernetes 名前空間 Smart Alerts ビュー
注: このビューには、選択したネームスペース内のエンティティに対して設定されたすべてのスマートアラートが表示されます。

「 Kubernetes 」のスマートアラートを追加する

Instana のUIでは、さまざまなコンテキストから Kubernetes のスマートアラートを作成できます。 クラスタまたはネームスペースのダッシュボードからアラートを作成すると、アラートのスコープには特定のコンテキストを対象とする適切なフィルターが自動的に設定されるため、時間を節約でき、正確性も確保されます。

「 Kubernetes 」プラットフォームのビューから作成する
  1. 「 Kubernetes 」の「スマートアラート」タブを開きます。
  2. スマートアラート 」タブで、 「スマートアラートを作成」 をクリックします。 「 スマートアラートの作成 」設定ダイアログが開きます。
    図 4. Kubernetes のスマートアラートを作成する
    Kubernetes のスマートアラートを作成する
  3. アラートの設定を完了してください。
    Kubernetes のスマートアラートの設定プロセスは、インフラストラクチャのスマートアラートの設定と同じワークフローに従います:
    1. 範囲を定義する : Kubernetes のエンティティタイプとメトリクスを選択します。 利用可能なエンティティタイプのリストについては、 「エンティティタイプの選択」 を参照してください。
    2. 閾値の設定 :警告および重大な閾値を設定する
    3. 時間閾値の設定 :アラートを送信するタイミングを設定する
    4. アラートチャネルの選択 :通知チャネルを選択してください
    5. アラートのプロパティを設定する :アラートのタイトルと説明をカスタマイズする
    6. カスタムペイロードを追加する :追加のコンテキストを含める(任意)
    ワークフローの各ステップに関する詳細な設定手順については、 「インフラストラクチャ向けスマートアラート」 を参照してください。

Kubernetes クラスタのダッシュボードから作成する

クラスタダッシュボードからスマートアラートを作成すると、アラートのスコープには、そのクラスタ専用のフィルタが自動的に設定されます:
  1. Kubernetes クラスターのダッシュボードに移動します。
  2. スマートアラート 」タブをクリックします。
  3. 「スマートアラートを作成」 をクリックします。
  4. アラート設定ダイアログが開くと、 「フィルタ 」セクションには自動的に以下のフィルタが入力されます。これにより、アラートは指定されたクラスタ内の選択されたネームスペースにあるリソースにのみ適用されるようになります:
    kubernetes.cluster.name equals <cluster-name>
  5. アラートの残りの設定を完了してください。
制限事項: 複数のクラスターで同じ名前が使用されている場合、アラートはその名前のすべてのクラスターに適用されます。 特定のクラスターを指定するには、ゾーン、リージョン、またはカスタムタグなどのフィルターを追加して、そのクラスターを一意に特定してください。

Kubernetes の「ネームスペース」ダッシュボードから作成する

ネームスペースのダッシュボードからスマートアラートを作成すると、アラートのスコープには、クラスターとネームスペースの両方に対するフィルタが自動的に事前設定されます:
  1. Kubernetes のネームスペースダッシュボードに移動します。
  2. スマートアラート 」タブをクリックします。
  3. 「スマートアラートを作成」 をクリックします。
  4. アラート設定ダイアログが開くと、 「フィルタ 」セクションには自動的に以下のフィルタが入力されます。これにより、アラートは指定されたクラスタ内の選択されたネームスペースにあるリソースにのみ適用されるようになります:
    kubernetes.cluster.name equals <cluster-name>
    および
    kubernetes.namespace.name equals <namespace-name>
  5. アラートの残りの設定を完了してください。
注:Kubernetes のスマートアラートの設定には、いくつかの違いがあります:
  • Kubernetesスマートアラート(プラットフォーム > Kubernetes > スマートアラート)を作成するためのボタンは、インフラストラクチャ・スマートアラート(インフラ > スマートアラート )を作成するためのボタンとは別のタブにあります
  • Kubernetes の「Smart Alerts」タブにあるアラート一覧には、 Kubernetes に関連するアラートのみが表示されます。一方、インフラストラクチャの「Smart Alerts」タブには、すべてのインフラストラクチャ・アラートが表示されます。
  • アラートスコープの設定時にエンティティタイプを選択する場合、選択できるのは Kubernetes エンティティのみですが、インフラストラクチャ・スマートアラートの設定時には、すべてのインフラストラクチャエンティティが利用可能です。
ベストプラクティス:Kubernetes 専用のスマートアラートを設定する際は、以下のベストプラクティスを参考にしてください:
  • 重要なコンポーネントについては、エンティティごとのアラート機能を使用してください。 「 API Server」や「 etcd 」などの重要な Kubernetes コンポーネントについては、エンティティごとのアラート設定を使用し、各インスタンスごとに個別のアラートを受信するようにしてください。
  • ワークロードに合わせてカスタム集計を活用する。 Pod やデプロイメントなどのアプリケーションワークロードについては、ネームスペースまたはデプロイメントごとにグループ化したカスタム集計を使用することで、可視性を維持しつつアラートのノイズを低減できます。
  • ストレージの予測アラートを有効にする。 PersistentVolume のメトリクスに対する予測アラートを活用し、ストレージ容量の問題がアプリケーションに影響を及ぼす前に、先手を打って対処してください。
  • 名前空間ごとにグループ化する。 クラスタ全体のメトリクスを監視する際は、ネームスペースごとにグループ化して、どのチームやアプリケーションに影響が出ているかを把握してください。
  • 適切な時間制限を設定してください。 Kubernetes 環境は動的であり、ポッドの再起動、スケーリング、ローリングアップデートが頻繁に行われることがあります。 Instana は、過去のデータやメトリクスの傾向に基づいてしきい値を提案しますが、クラスタの通常の運用パターンを考慮して、時間に関するしきい値の設定を確認し、必要に応じて調整してください。 これにより、 Kubernetes の通常の動作に伴う一時的な問題による誤検知を防ぐことができます。

エンティティタイプの選択

Kubernetes のスマートアラートを作成すると、「 エンティティタイプ 」ドロップダウンには、 Kubernetes に関連するエンティティタイプのみが表示されます。 このフィルタリングされたリストを使用すると、監視したい Kubernetes コンポーネントをすばやく見つけて選択することができます。 以下の Kubernetes エンティティタイプがサポートされています:

  • 主要なワークロードエンティティ:
    • クラスター
    • ノード
    • 名前空間
    • ポッド
    • デプロイメント
    • ReplicaSet
    • ReplicationController
    • DaemonSet
    • エンドポイント
  • ストレージ:
    • PersistentVolume
    • PersistentVolumeClaim
  • コントロールプレーンのコンポーネント:
    • APIサーバー
    • コントローラー・マネージャー
    • スケジューラー
    • etcd
  • 拡張性:
    • カスタム・リソース定義
    • Kubernetes GPT
  • OpenShift:
    • OpenShift Deployment Config
  • GitOps (ArgoCD):
    • ArgoCD
    • ArgoCD 用途
  • コスト管理:
    • KubeCost プラットフォーム
図 5. Kubernetes エンティティタイプの選択
Kubernetes エンティティタイプの選択

Terraform のサポート

Kubernetes スマートアラートは、インフラストラクチャのスマートアラートと同じ Terraform リソースを使用して、プログラムから管理できます。 Kubernetes のエンティティタイプに対してアラートを作成すると、そのアラートは自動的に Kubernetes の「スマートアラート」ビューに表示されます。 Terraform を使用したスマートアラートの管理に関する詳細については、『 Instana インフラストラクチャ・アラート設定 』のドキュメントを参照してください。

関連情報