IBM Cloud Docs
Red Hat OpenShift クラスタの監視

Red Hat OpenShift クラスタの監視

このチュートリアルを使用して、 IBM Cloud® Monitoring サービスにメトリックを転送するように Red Hat® OpenShift® クラスタを構成する方法を学びます。 IBM Cloud、オンプレミス、およびその他のクラウド内のクラスターをモニターできます。

メトリクスを転送するようにクラスタを構成するには、 Red Hat OpenShift クラスタの各ワーカー・ノードに、監視エージェントを DaemonSet. モニタリング・エージェントでは、IBM Cloud Monitoring インスタンスでの認証のためにアクセス・キー (トークン) を使用します。 モニタリング・エージェントは、データ・コレクターとして機能します。 ワーカー・ノード CPUワーカー・ノード・メモリーの使用率、コンテナーの入出力 HTTP トラフィック、いくつかのインフラストラクチャー・コンポーネントに関するデータなどのメトリックを自動的に収集します。 さらに、Prometheus 対応のスクレーパーや StatsD ファサードを使用して、エージェントでカスタムのアプリケーション・メトリックを収集することもできます。

IBM Cloud
コンポーネントの概要

例えば、 IBM Cloud Monitoring インスタンスにメトリックを転送するように Red Hat OpenShift クラスターを構成するには、 Helm またはスクリプトを使用してエージェントをデプロイできます。

Monitoring エージェントは、ホストごとに以下のタイプのシステム・メトリックを自動的に収集します。

  • System hosts metricsは、すべてのプロセスのパフォーマンスとリソース使用率を分析するために使用できる、CPU、メモリー、およびストレージの使用量メトリックに関する情報を提供します。

  • File and File System metricsは、システムで発生するファイル対話を分析するために使用できるファイルおよびファイル・システムに関する情報を提供します。 例えば、オープン・ファイル、送受信バイト数、または特定のファイル・システムの使用率に関する情報を見つけることができます。

  • Process metricsは、サーバーで実行されるプロセスに関する情報を提供します。 例えば、これらのメトリックを使用して、プロセスの数を調べたり、クライアントまたはサーバーの情報を取得したりすることができます。

  • Network metricsは、ネットワークに関する情報を提供します。 これらは、アプリケーション、コンテナー、およびサーバーの間で確立された接続に対する洞察を提供します。 例えば、送受信されているバイト数や、HTTP 要求、接続、および待ち時間の数に関する情報を見つけることができます。 また、SQL または MongoDB の場合、エージェントは、トラブルシューティング・モードで構成されているときに追加情報を収集します。

Monitoring エージェントは、 Red Hat OpenShift クラスターごとに以下の種類のメトリクスを自動的に収集します:

  • State metrics:Kubeステートメトリクスは、デプロイメント、ノード、ポッドなど、 Red Hat OpenShift コンポーネント内で実行されるさまざまなオブジェクトの健全性と状態をレポートします。 デフォルトで収集されるメトリックのリストを確認するには、 Red Hat OpenShift 状態を参照してください。

  • Resource usage metrics: リソース使用状況メトリックは、クラスター内で実行されているワーカー (ノード) とポッドの CPU とメモリーの正常性と状態について報告します。 データは、名前空間、ワーカー、ポッド、ワークロード・オブジェクト (デプロイメント、daemonSet など) によって分析できます。

収集されたメトリックのリストについては、 オーケストレーションされた環境で使用可能なメトリック を参照してください。

Monitoring UI を使用すると、アドバイザータブ、探索タブ、およびダッシュボードタブでデータを分析できます。 メトリック・ビューおよびダッシュボードを使用してデータをモニターします。

データをモニターする際には、以下の情報を考慮してください。

  • エクスプローラータブでは、個々のメトリックをモニターできます。

  • Advisor タブでは、 Red Hat OpenShift またはホスト・レベルのメトリクスを監視できます。

    このタブは、 Red Hat OpenShift またはホスト・レベルのメトリクスを監視するアクセス権を持つチームに所属するユーザーのみが使用できます。

  • *「ダッシュボード」*タブでは、事前定義されたダッシュボードまたはカスタム・ダッシュボードのパネルを使用してモニターし、ネットワーク・データ、アプリケーション・データ、トポロジー、サービス、ホスト、およびコンテナーに関する特殊な洞察を得ることができます。 パネルでは、メトリックまたはメトリックのグループがダッシュボードに表示されます。

メトリック・ビューおよびダッシュボードごとに、データの有効範囲、データの集約方法、およびデータに適用する時間とグループ・フィルターを定義できます。 詳しくは、パネルの管理を参照してください。

ダッシュボードをチームのデフォルトのエントリー・ポイントとして構成し、チームのエクスペリエンスを統一し、ユーザーが最も関連性の高い情報にすぐに集中できるようにすることができます。

詳しくは、 メトリックの表示 を参照してください。

目標

このチュートリアルでは、Red Hat OpenShift on IBM Cloud クラスターにメトリックを構成します。 具体的には、以下の操作を行います。

  • IBM Cloud Monitoring インスタンスをプロビジョンします。
  • メトリックを送信するようにクラスター内のモニタリング・エージェントを構成します。
  • モニタリング UI を使用してクラスター・メトリックを分析します。

開始前に

チュートリアルを完了するために必要な IAM ポリシーのリスト
リソース アクセス・ポリシー有効範囲 役割 リージョン 情報
リソース・グループ デフォルト リソース・グループ ビューアー us-south デフォルトのリソース・グループ内のサービス・インスタンスをユーザーが表示できるようにするためには、このポリシーが必要です。
IBM Cloud Monitoring サービス リソース・グループ エディター us-south デフォルトのリソース・グループの IBM Cloud Monitoring サービスをユーザーがプロビジョンおよび管理するためにこのポリシーは必須です。
Red Hat OpenShift クラスター・インスタンス リソース エディター us-south Red Hat OpenShift on IBM Cloud クラスターで機密事項やモニタリング・エージェントを構成するためにこのポリシーは必須です。

IBM Cloud® Kubernetes Service IAM ロールの詳細については 、「IAM ロールとアクション」 を参照してください。

ステップ 1. IBM Cloud Monitoring インスタンスをプロビジョンする

この入門チュートリアルでは、us-south リージョンで IBM Cloud Monitoring のインスタンスをプロビジョンするための手順を説明します。 サポートされているリージョンについて詳しくは、リージョンを参照してください。

IBM Cloud Monitoring のインスタンスをプロビジョンするには、以下のステップを実行します。

  1. IBM Cloud アカウントにログインします

    ユーザー ID とパスワードを使用してログインすると、IBM Cloud UI が開きます。

  2. **「カタログ」**をクリックします。 IBM Cloud で使用可能なサービスのリストが開きます。

  3. 表示されるサービスのリストをフィルタリングするには、**「ロギングとモニタリング」**カテゴリーを選択します。

  4. **「IBM Cloud Monitoring」**タイルをクリックします。

  5. ロケーションとサービス計画を選択します。

    デフォルトでは、**「ライト」**プランが設定されています。

    他のサービス・プランについて詳しくは、料金プランを参照してください。

  6. リソースを構成します。

    サービス・インスタンスの名前を入力します。

    リソース・グループを選択します。

    オプションでタグを追加します。

  7. 「作成」 をクリックします。

    インスタンスのプロビジョンが完了すると、*「プログラム識別情報」*ダッシュボードが開き、モニタリング・インスタンスの詳細が表示されます。

CLI を使用してインスタンスをプロビジョンするには、IBM Cloud CLI によるインスタンスのプロビジョニングを参照してください。

ステップ 2 インスタンスにメトリクスを送信するように Red Hat OpenShift on IBM Cloud クラスタを設定する

Red Hat OpenShift on IBM Cloud インスタンスにメトリックを送信するように IBM Cloud Monitoring クラスターを構成するには、クラスターのノードごとにモニタリング・エージェント・ポッドをインストールする必要があります。 モニタリング・エージェントは DaemonSet を使用してインストールされ、それによってエージェントのインスタンスがすべてのワーカー・ノードで確実に実行されます。 モニタリング・エージェントは、インストールされたポッドからメトリックを収集し、そのデータをインスタンスに転送します。

システム・メトリックを一式すべて取得するためには、モニタリング・エージェントが特権を付与された状況でなければなりません。

Red Hat OpenShift on IBM Cloud インスタンスにメトリックを転送するように IBM Cloud Monitoring クラスターを構成するには、コマンド・ラインから以下の手順を実行します。

クラスター・コンテキストを設定してクラスターにログインする

以下のステップを実行します。

  1. 端末を開いて、IBM Cloud にログインします。

    ibmcloud login -a cloud.ibm.com
    

    IBM Cloud Monitoring インスタンスをプロビジョンしたアカウントを選択します。

  2. クラスターをリストして、クラスターを使用できるリージョンとリソース・グループを見つけます。

    ibmcloud oc clusters
    
  3. リソース・グループとリージョンを設定します。

    ibmcloud target -g RESOURCE_GROUP -r REGION
    

    説明

    RESOURCE_GROUP は、クラスターを使用できるリソース・グループの名前です (例えば、default)。

    REGION は、クラスターを使用できるリージョンです (例えば、us-south)。

  4. セッションでクラスター・コンテキストを設定します。

    ibmcloud oc cluster config --cluster <cluster_name_or_ID>
    
  5. クラスターにログインします。 OpenShift クラスターにログインする方法を選択します。 ログイン方法の詳細については、こちらを参照してください

クラスターでの IBM Cloud Monitoring エージェントのインストール

  1. パブリック・エンドポイントまたはプライベート・エンドポイントに関する以下のコマンドを実行します。

    プライベート・エンドポイント

    curl -sL https://ibm.biz/install-sysdig-k8s-agent | bash -s -- -a <MONITORING_ACCESS_KEY> -c ingest.private.<REGION>.monitoring.cloud.ibm.com -ac 'sysdig_capture_enabled: false' --openshift
    

    パブリック・エンドポイント

    curl -sL https://ibm.biz/install-sysdig-k8s-agent | bash -s -- -a <MONITORING_ACCESS_KEY> -c ingest.<REGION>.monitoring.cloud.ibm.com -ac 'sysdig_capture_enabled: false' --openshift
    

    <MONITORING_ACCESS_KEY> はインスタンスの取り込みキー、 <REGION> は IBM Cloud Monitoring インスタンスの地域です。

    デフォルトでは、スリム型のエージェントがインストールされます。 スリム型のエージェントを使用すると、潜在的な脆弱性に関する攻撃の可能性が少なくなるので、結果として安全性が向上します。 完全なエージェントのインストールを希望する場合は、-af コマンドに curl オプションを追加します。

  2. モニタリング・エージェントが正常に作成されたこと、およびその状況を確認します。 以下のコマンドを実行します。

    oc get pods -n ibm-observe
    

    1 つ以上の sysdig-agent ポッドが表示されたら、デプロイメントは成功です。 sysdig-agent ポッドの数は、クラスター内のワーカー・ノードの数と等しくなります。 すべてのポッドが Running 状態である必要があります。

ステップ 3。 モニター UI の起動

IBM Cloud コンソールからモニタリング UI を起動するには、以下の手順を実行します。

  1. IBM Cloud アカウントにログインします

    ユーザー ID とパスワードを使用してログインすると、IBM Cloud ダッシュボードが開きます。

  2. メニューメニュー・アイコンから、可観測性を選択します。

  3. **「モニタリング」**を選択します。 IBM Cloud で使用可能なインスタンスのリストが表示されます。

  4. インスタンスを見つけて、**「ダッシュボードを開く」**をクリックします。 Web UI が開きます。

情報が最初に収集され、モニタリングエージェントによって処理される間、クラスタエントリが表示されるまでに時間がかかる場合があります。

モニターできるインスタンスは、ブラウザーごとに 1 つのみです。 同じインスタンスについて複数のタブが表示される場合があります。

ステップ 4: クラスターのモニター

Advisor タブでは、ホストの健全性、リスク、およびキャパシティ、 Kubernetes および Red Hat OpenShift クラスタを監視およびトラブルシューティングできます。

「アドバイザー」タブ
「アドバイザー」タブ

  • データは 10 分ごとに更新されます。
  • メトリックは、イベント数と重大度によって優先順位付けされます。
  • 詳しくは、 アドバイザーを参照してください。

Advisor セクションでは、 Red Hat OpenShift クラスタをクラスタ別、ノード別、ネームスペース別、またはワークロード別に監視することを選択できます。 各オプションには、リソースの正常性をモニターするために使用できる一連の事前定義ダッシュボードが用意されています。 ホストによるモニターを選択することもできます。

Red Hat OpenShift クラスタをクラスタごとに監視する

クラスタ別にクラスタを監視することを選択すると、ノード別またはネームスペース別のデータを表示するフィルタをさらに選択したり、次のダッシュボードのいずれかを選択したりできます:

  • ワークロード状況 & パフォーマンス
  • 「ノード状況」&「パフォーマンス」
  • ポッドのライトサイジング & ワークロード・キャパシティーの最適化
  • クラスター容量の計画
  • クラスター/名前空間使用可能リソース
  • クラスターの概要
  • CPU 割り振りの最適化
  • メモリー割り振りの最適化

クラスターごとの Advisor 事前定義ダッシュボード
クラスターごとの Advisor 事前定義ダッシュボード

このビューの解釈方法について詳しくは、 クラスターの概要を参照してください。

ノードごとのクラスターのモニター

ノード別にクラスタを監視する場合は、以下のダッシュボードのいずれかを選択できます:

  • 「ノード状況」&「パフォーマンス」
  • ポッドのスケジューリングのトラブルシューティング
  • ノードの概要
  • CPU 割り振りの最適化
  • メモリー割り振りの最適化

このビューの解釈方法について詳しくは、 ノード概要についてを参照してください。

名前空間によるクラスターのモニター

ネームスペース別にクラスタを監視することを選択すると、ワークロード別にデータを表示するフィルタをさらに選択したり、次のダッシュボードのいずれかを選択したりできます:

  • ワークロード状況 & パフォーマンス
  • ポッド状況 & パフォーマンス
  • ポッドのライトサイジング & ワークロード・キャパシティーの最適化
  • 名前空間の概要
  • ワークロードの CPU 使用率と割り振り
  • ワークロードのメモリー使用量と割り振り

このビューの解釈方法について詳しくは、 名前空間の概要を参照してください。

ワークロードによるクラスターのモニター

ワークロード別にクラスタを監視する場合は、次のいずれかのダッシュボードを選択できます:

  • コンテナー・リソース使用量 & トラブルシューティング
  • ポッド状況 & パフォーマンス
  • ポッドのライトサイジング & ワークロード・キャパシティーの最適化
  • ワークロード状況 & パフォーマンス
  • デプロイメントの概要
  • ポッドの概要
  • ワークロードの CPU 使用率と割り振り
  • ワークロードのメモリー使用量と割り振り

このビューの解釈方法について詳しくは、 ワークロードの概要を参照してください。

次のステップ