モニタリング機能の移行 | IDCFクラウド コンテナ ご利用ガイド

モニタリング機能の移行

このドキュメントはモニタリング機能の移行方法について説明します。

はじめに

これまでKubernetes監視のために従来よりモニタリング機能(以下、Monitoring V1)を提供していましたが、監視設定全般のユーザビリティが大きく向上した、新たなモニタリング機能(以下、Monitoring V2)が利用可能です。

Monitoring V1は今後提供を終了する計画となっており、現在、Monitoring V1を使用している場合、本ドキュメントを参考にMonitoring V2への移行が必要です。

Monitoring V2 の移行に伴う、注意事項

  • Monitoring V1がインストールされた状態で、Monitoring V2のインストールはできません。

  • Monitoring V1からMonitoring V2への移行については、自動アップグレードパスは用意されておりません

    • 下記手順に従って手動での切替が必要です
  • Monitoring V1インストール後にご自身で設定した監視やアラートの設定は、Monitoring V2インストール後に再度設定して頂く必要があります。

    • Monitoring V1削除前に必要な情報は保管しておいてください。

モニタリング機能を利用する上での注意事項

  • モニタリング機能はOperator/Prometheus/AlertManager/Grafana等、さまざまなアプリケーションがKubernetes上で動くことになります。

  • リソースを多く消費するため、余裕を持ったCPU/Memory構成が必要になります。

このドキュメントの対象範囲

Monitoring V2では、独自の監視やアラート設定を行うことも可能ですが、このドキュメントではMonitoring V1を削除し、Monitoring V2を有効化するまでの手順のみ記載します。

その他、詳細については、Rancherのドキュメント及び、 Prometheus オペレーターのドキュメントをご確認ください。

Monitoring V1の削除

新しいMonitoring V2をインストールする前に、Monitoring V1及びMonitoring V1の関連リソースを全て削除します。

アラートグループ(Alert Group)、アラート(Alert)の削除

はじめに、アラートグループ(Alert Group)アラート(Alert) を全て削除しておく必要があります。

クラスターアラートの削除

  1. 左側のメニューから「Legacy」 → 「アラート(Alert)」を選択します。
  2. アラートグループ(Alert Group) 及び、各アラートグループ(Alert Group)に属するアラート(Alert) が表示されるので、全て削除します。
  3. アラートグループ(Alert Group)を削除すると属するアラート(Alert)も全て削除されます。

プロジェクトアラートの削除

  1. 上部にあるプロジェクト(Project)/ネームスペース(Namespace) を選択するボックスから、アラート(Alert)を削除するプロジェクト(Project) を選択してします。
  2. 複数のプロジェクト(Project)やネームスペース(Namespace)を選択可能ですが、プロジェクト(Project)1つだけを選択します。
  3. 左側のメニューから「Legacy」 → 「Project」 → 「アラート(Alert)」を選択します。
  4. クラスター アラートと同様の手順で、全てのアラート グループ(Alert Group)、アラート(Alert)を削除してください。
  1. 同様に操作を行い、全てのプロジェクト(Project)を確認し、全てのアラート グループ(Alert Group)、アラート(Alert) を削除します。

通知(Notifier)の削除

通知(Notifier)についても事前の削除が必要です。

  1. 右側のメニューのLegacyの中の「通知(Notifiers)」を選択すると通知(Notifier)が表示されますので、全て削除します。

Monitoring V1の無効化

アラートグループ(Alert Group)、アラート(Alert)、通知(Notifier)が全て削除出来たら、Monitoring V1を削除できます。

クラスターモニタリング V1(Cluster Monitoring V1)の削除前に、プロジェクトモニタリング V1(Project Monitoring V1)を削除しておく必要があります。

クラスターモニタリング V1(Cluster Monitoring V1)、プロジェクトモニタリング V1(Project Monitoring V1)を削除すると、付随したリソースは全て削除されます。

V1 プロジェクト モニタリング(V1 Project Monitoring)の無効化

  1. 上部にあるプロジェクト(Project)/ネームスペース(Namespace) を選択するボックスから、V1 プロジェクトモニタリング(V1 Project Monitoring) を削除するプロジェクト(Project) を選択します。
  2. 複数のプロジェクト(Project)やネームスペース(Namespace)を選択可能ですが、プロジェクト(Project)1つだけを選択します。
  3. 左側のメニューから「Legacy」 → 「Project」 → 「モニタリング(Monitoring)」を選択します。
  4. 選択したProjectのV1 プロジェクトモニタリング(V1 Project Monitoring) の設定が開きますので、「無効(Disable)」を選択し、無効化します。
  1. 同様に操作を行い、全てのプロジェクト(Project)を確認し、V1 プロジェクト モニタリング(V1 Project Monitoring)を全てのプロジェクト(Project)で無効化してください。

クラスター モニタリングの無効化

最後にクラスター モニタリング(Cluster Monitoring)を削除します。

  1. 左下の「クラスターツール(Cluster Tools)」を選択し、「Monitoring(Legacy)の管理(Manage)」を選択します。
  1. クラスターモニタリング(Cluster Monitoring)の設定画面から、「無効(Disable)」を実行します。

Namespaceの削除

最後にMonitoring V1で利用していたNamespaceを削除します。

  1. 右側のメニューの「クラスター(Clusters)」 → 「プロジェクト/名前空間(Projects/Namespaces)」を選択します。
  2. システムプロジェクト(System Project) の中のcattle-prometheus及び、各プロジェクト(Project)の中のcattle-prometheus-p-xxxxxを選択し、削除します。

Monitoring V2のインストール

Monitoring V2クラスターモニタリング(Cluster Monitoring)プロジェクトモニタリング(Project Monitoring) の両方があります。

クラスターモニタリング(Cluster Monitoring)のインストール

  1. 左下の「クラスターツール(Cluster Tools)」からMonitoringのインストールを選択することによりインストールできます。
  2. 左側のメニューの「アプリ(Apps)」 → 「Charts」からもインストールすることが可能です。
  1. 次の「インストール: ステップ2」にあるクラスタータイプは、IDCFクラウド/Private Cloudへ構築したクラスターの場合は RKE1を選択してください。
  2. その他のクラスタータイプについては、それぞれ実際のクラスターに合わせて選択してください。(その他のオプションについては、必要に応じて設定を行ってください。)
  3. 基本的にデフォルト構成をお勧めしますが、監視データを永続化したい場合、Prometheus/Grafanaのストレージ設定を行ってください。最後にインストールを選択することでインストールが開始されます。
  1. 問題なくインストールが完了するとコンソール上にSUCCESSと表示されます。

ダッシュボードの確認

インストール後は左側メニューの「モニタリング(Monitoring)」を選択することで、PrometheusやGrafanaのUIへアクセスすることが出来ます。

以下は、Grafanaを選択した場合のGrafana UIの画面になります。(サンプル)

以下はWorkload: Deploymentの画面になります。Monitoringを有効化した場合、Explorerの画面上でもメトリックの確認が可能です。(サンプル)

プロジェクト モニタリング(Project Monitoring)の有効化

プロジェクトモニタリング(Project Monitoring) はPrometheus Federatorをインストールすることで有効化出来ます。

プロジェクトモニタリング(Project Monitoring) を有効にするためには、クラスターモニタリング(Cluster Monitoring) の有効化が必要です。

必ず事前にクラスターモニタリング(Cluster Monitoring) の有効を済ませてからPrometheus Federatorをインストールしてください。

Prometheus Federatorのインストール

  1. 左側のメニューの「アプリ(Apps)」 → 「Prometheus Federator」を選択しインストールします。
  2. 次の画面の「インストール: ステップ1」では、インストール先のProjectとしてMonitoringをインストールしたSystemプロジェクトが選択されているはずです。(変更不可)
  3. その次の画面の「インストール: ステップ2」は必要に応じて設定を変更しても問題ありませんが、基本的に設定変更は不要です。
  1. 問題なくインストールが完了するとコンソール上にSUCCESSと表示されます。

各プロジェクト(Project)でのモニタリング(Monitoring)有効化

プロジェクト(Project)毎のモニタリング(Monitoring)は、プロジェクト(Project)毎に有効化が必要です。

  1. 左側メニューの「モニタリング(Monitoring)」 → 「プロジェクトモニター(Project Monitors)」 → 「作成(Create)」を選択してください。
  1. 次の画面で、プロジェクトモニタリング(Project Monitoring) で有効化したいプロジェクト(Project)を選択します。
  2. その他のオプションは必要に応じて設定してください。作成で有効化ができます。
  1. 他にもプロジェクトモニタリング(Project Monitoring) を有効化したいプロジェクト(Project)があれば、同様の手順で有効化してください。
  2. インストール後は、左側のメニューから「モニタリング(Monitoring)」 → 「プロジェクトモニター(Project Monitors)」 → 「確認したいプロジェクト(Project)」を選択することで、PrometheusやGrafanaのUIへアクセスすることが出来ます。

追加のAlerting Drivers有効化(MS Teams, SMS)

Microsoft Teams、SMSへの通知(Notifier)を送信したい場合は、追加のAlerting Driversをインストールする必要があります。

  1. 左下の「クラスターツール(Cluster Tools)」からAlerting Driversのインストールを選択することにより、インストールすることが出来ます。
  2. 左側のメニューの「アプリ(Apps)」 → 「Charts」からもインストールすることが可能です。
  1. 次の画面の「インストール: ステップ1」で、インストール先の名前空間を指定できますが、**クラスターモニタリング(Cluster monitoring)**がインストールされているcattle-monitoring-systemを選択してください。
  1. インストール: ステップ2」で、有効化したいDriver(Microsoft Teams、SMS)を選択します。
  1. 問題なくインストールが完了するとコンソール上にSUCCESSと表示されます。

Alertingの追加

Monitoring V1では通知(Notifier)としてアラートの通知先を設定しましたが、Monitoring V2では、AlertingのAlertmanagerConfigとして設定を行います。

ここでは、Monitoring V1でも設定でき、利用頻度が最も高いSlackへの通知を参考に記載します。

SlackのWebhook URLを記載したSecretの準備

AlertmanagerConfigでSlackを通知先として設定する際に、SlackのWebhook URLを記載したSecretが必要になります。

AlertmanagerConfigはNamespace: cattle-monitoring-systemで作成するため、SlackのWebhook URLを記載したSecretもNamespace: cattle-monitoring-systemへ作成する必要があります。

  1. ストレージ(Storage)」 → 「Secrets」 → 「Opaque」 を選択します
  2. 作成するSecretのKeyは何でも構いませんが、ここではurlとします。

AlertmanagerConfigの設定

AlertmanagerConfigを作成していきます。

AlertmanagerConfigはAlertmanagerConfigを作成後に、作成したAlertmanagerConfigに対してレシーバー(Receiver)の設定として通知先にSlackを設定する形になります。

  1. 左側メニューの「モニタリング(Monitoring)」 → 「Alerting」 → 「AlertmanagerConfig」 → 「作成(Create)」を選択します。
  1. 次に、今作成したAlertmanagerConfigを選択します。レシーバ(Receivers)の画面で、「レシーバーを追加(Add Receiver)」を選択します。
  1. 次の画面で、「Slack」を選択し、「Add Slack」を選択します。
  1. 名前を設定し、「Slack Webhoook URL」のSecretに、先に作成したSecretを選択します。
  2. 復旧の通知を受けたい場合は、「Enble send resolved alerts」にチェックを入れてください。