第1章 オブザーバビリティーサービス
オブザーバビリティーにより、追加のテストやサポートなしでパフォーマンスの問題を特定して評価できます。Red Hat Advanced Cluster Management for Kubernetes のオブザーバビリティーコンポーネントは、クラスターの健全性と使用率、およびクラスター全体のワークロードを把握するために使用できるサービスです。オブザーバビリティーサービスを使用することで、オブザーバビリティーの範囲内のコンポーネントを自動化および管理できるようになります。
オブザーバビリティーサービスでは、オープンソースコミュニティーの既存の広く採用されているオブザーバビリティーツールを使用します。デフォルトでは、multicluster observability operator は Red Hat Advanced Cluster Management のインストール中に有効になります。Thanos は、長期的にメトリクスを格納するためにハブクラスター内にデプロイされます。observability-endpoint-operator は、インポートまたは作成された各マネージドクラスターに自動的にデプロイされます。このコントローラーは、Red Hat OpenShift Container Platform Prometheus からデータを収集するメトリクスコレクターを起動し、そのデータを Red Hat Advanced Cluster Management ハブクラスターに送信します。
オブザーバビリティーコンポーネントの詳細は、次のドキュメントを参照してください。
1.1. オブザーバビリティーアーキテクチャー リンクのコピーリンクがクリップボードにコピーされました!
multiclusterhub-operator は、デフォルトで multicluster-observability-operator Pod を有効にします。multicluster-observability-operator Pod を設定する必要があります。
1.1.1. オブザーバビリティーオープンソースコンポーネント リンクのコピーリンクがクリップボードにコピーされました!
オブザーバビリティーサービスは、コミュニティーからのオープンソースのオブザーバビリティーツールを使用します。製品オブザーバビリティーサービスに含まれるツールの説明を以下に示します。
- Thanos
- 複数の Prometheus インスタンスにわたってグローバルクエリーを実行するために使用できるコンポーネントのツールキット。Prometheus データを長期保存するには、S3 互換のストレージに保存します。可用性が高くスケーラブルなメトリクスシステムを設定することもできます。
- Prometheus
- アプリケーションからメトリクスを収集し、それらのメトリクスを時系列データとして保存するために使用できる監視およびアラートツール。スクレイピングされたすべてのサンプルをローカルに保存し、ルールを実行して既存のデータから新しい時系列を集計および記録し、アラートを生成します。
- Alertmanager
- Prometheus からのアラートを管理および受信するためのツール。アラートを重複排除、グループ化し、メール、Slack、PagerDuty などのインテグレーションにルーティングします。特定のアラートの通知をオフ、および抑制するように Alertmanager を設定します。
1.1.2. オブザーバビリティーコンポーネントのバージョン リンクのコピーリンクがクリップボードにコピーされました!
Oberservability が Red Hat Advanced Cluster Management for Kubernetes 2.16 で使用するコンポーネントバージョンは、次のリストを参照してください。
| コンポーネント | Version |
|---|---|
| Grafana | 12.2.0 |
| Thanos | 0.39.2 |
| Prometheus Alertmanager | 0.28.1 |
| Prometheus | 3.5.0 |
| Prometheus operator | 0.85.0 |
| Kube State Metrics | 2.17.0 |
| Node Exporter | 1.9.1 |
| Memcached Exporter | 0.15.3 |
1.1.3. オブザーバビリティーアーキテクチャーの図 リンクのコピーリンクがクリップボードにコピーされました!
次の図は、オブザーバビリティーのコンポーネントを示しています。
オブザーバビリティーアーキテクチャーのコンポーネントには次の項目が含まれます。
-
マルチクラスターハブオペレーター (
multiclusterhub-operatorPod とも呼ばれます) は、multicluster-observability-operatorPod をデプロイします。これは、ManifestWorksリソースの生成を通じて、ハブクラスター上のメトリクスストアやマネージドクラスター上のコレクターなど、Red Hat Advanced Cluster Management のオブザーバビリティーサービス用のリソースをデプロイするルートコンポーネントです。 - オブザーバビリティーアドオンコントローラー は、マネージドクラスターのログを自動的に更新する API サーバーです。
Thanos インフラストラクチャーには、
multicluster-observability-operatorPod によってデプロイされる Thanos Compactor が含まれます。Thanos Compactor は、保持設定とストレージ内のデータの圧縮を使用して、クエリーが適切に実行されることを保証します。Thanos Compactor でいつ問題が発生しているかを特定するには、その正常性を監視する 4 つのデフォルトのアラートを使用します。次のデフォルトアラートの表を確認してください。
Expand 表1.2 デフォルトの Thanos アラートの表 アラート Severity 説明 ACMThanosCompactHaltedcritical
コンパクターが停止するとアラートが送信されます。
ACMThanosCompactHighCompactionFailureswarning
圧縮失敗率が 5% を超えると、アラートが送信されます。
ACMThanosCompactBucketHighOperationFailures警告
バケット操作の失敗率が 5 パーセントを超えると、アラートが送信されます。
ACMThanosCompactHasNotRunwarning
コンパクターが過去 24 時間以内に何もアップロードしなかった場合、アラートが送信されます。
- オブザーバビリティーコンポーネントは、Grafana のインスタンスをデプロイして、ダッシュボード (静的) またはデータ探索によるデータの視覚化を可能にします。Grafana ダッシュボードを設計することもできます。詳細は、関連情報セクションの Grafana ダッシュボードの使用 を参照してください。
- Prometheus Alertmanager を使用すると、サードパーティーアプリケーションでアラートを転送できます。カスタムのレコーディングルールまたはアラートルールを作成して、オブザーバビリティーサービスをカスタマイズできます。
1.1.4. オブザーバビリティーサービスで使用される永続ストア リンクのコピーリンクがクリップボードにコピーされました!
重要: 永続ストレージにローカルボリュームを使用するローカルストレージ Operator またはストレージクラスを使用しないでください。再起動後に Pod が別のノードで再起動されると、データが失われる可能性があります。これが発生すると、Pod はノード上のローカルストレージにアクセスできなくなります。データの損失を回避するために、receive Pod および rules Pod の永続ボリュームにアクセスできることを確認してください。
Red Hat Advanced Cluster Management をインストールするときは、次の永続ボリューム (PV) を作成して、Persistent Volume Claims (PVC) を自動的にアタッチできるようにする必要があります。デフォルトのストレージクラスが指定されていない場合、またはデフォルト以外のストレージクラスを使用して PV をホストする場合は、MultiClusterObservability カスタムリソースでストレージクラスを定義する必要があります。Prometheus が使用するものと同様の、ブロックストレージを使用することを推奨します。また、alertmanager、thanos-compactor、thanos-ruler、thanos-receive-default、および thanos-store-shard の各レプリカには、独自の PV が必要です。次の表を参照します。
| コンポーネント名 | 目的 |
| alertmanager |
alertmanager は |
| observability-thanos-compactor | コンパクターは、処理の中間データとバケット状態キャッシュの保存にローカルのディスク領域が必要です。必要な領域は、下層にあるブロックサイズにより異なります。コンパクターには、すべてのソースブロックをダウンロードして、ディスクで圧縮ブロックを構築するのに十分な領域が必要です。ディスク上のデータは再起動の合間に安全に削除できるため、クラッシュループに陥ったコンパクターを復旧させるための最初の手順として試みるべきです。ただし、複数回の再起動を経ても、バケットの状態キャッシュを効果的に使用できるように、コンパクターには永続ディスクを割り当てることが推奨されます。 |
| observability-thanos-rule |
thanos ruler は、固定の間隔でクエリーを発行して、選択したクエリー API に対して Prometheus 記録およびアラートルールを評価します。ルールの結果は、Prometheus 2.0 ストレージ形式でディスクに書き込まれます。このステートフルセットで保持されるデータの期間 (時間または日) は、API バージョンの |
| observability-thanos-receive-default |
Thanos receiver は、受信データ (Prometheus remote-write リクエスト) を受け入れて Prometheus TSDB のローカルインスタンスに書き込みます。TSDB ブロックは定期的 (2 時間) に、長期的に保存および圧縮するためにオブジェクトストレージにアップロードされます。ローカルキャッシュを実行するこのステートフルセットで保持される期間 (時間または日) は、API バージョン |
| observability-thanos-store-shard | これは、主に API ゲートウェイとして機能するため、大量のローカルディスク容量は必要ありません。これは、起動時に Thanos クラスターに参加して、アクセスできるデータを広告します。ローカルディスク上のすべてのリモートブロックに関する情報のサイズを小さく保ち、バケットと同期させます。このデータは、再起動時に削除しても通常は安全ですが、代償として起動時間が長くなります。 |
注記: 時系列の履歴データはオブジェクトストアに保存されます。Thanos は、オブジェクトストレージをメトリクスおよび関連するメタデータのプライマリーストレージとして使用します。オブジェクトストレージおよび downsampling 機能の詳細は、オブザーバビリティーサービスの有効化 を参照してください。
1.1.5. オブザーバビリティーのサポート リンクのコピーリンクがクリップボードにコピーされました!
- Red Hat Advanced Cluster Management は、Red Hat OpenShift Data Foundation (以前の Red Hat OpenShift Container Platform) によってテストされ、完全にサポートされています。
- Red Hat Advanced Cluster Management は、S3 API と互換性のあるユーザー提供のオブジェクトストレージにおける Multicluster observability Operator の機能をサポートします。オブザーバビリティーサービスは、Thanos がサポートする安定したオブジェクトストアを使用します。
- Red Hat Advanced Cluster Management のサポートにおける取り組みには、根本原因を特定するための妥当なレベルでの対応が含まれます。サポートチケットを開いて、その根本原因が提供した S3 互換オブジェクトストレージにある場合は、カスタマーサポートチャネルを使用して問題を起票する必要があります。
1.1.6. 関連情報 リンクのコピーリンクがクリップボードにコピーされました!
オブザーバビリティーとインテグレーションコンポーネントの詳細は、次のトピックを参照してください。
- 本サービスの概要は、オブザーバビリティーサービス を参照してください。
- サービスの設定、メトリクスタイプのラベル付け、および Pod の容量は、オブザーバビリティーの設定 を参照してください。
- オブザーバビリティーサービスを有効にするには、オブザーバビリティーサービスの有効化 を参照してください。
- Grafana からハブクラスターとマネージドクラスターのメトリクスを表示する方法の詳細は、Grafana ダッシュボードの使用 を参照してください。
- オブザーバビリティーサービスのバックアップと復元方法に説明します。オブザーバビリティーサービスのバックアップと復元 を参照してください。
- サノスに関する詳細は、サノスのドキュメント を参照してください。
- Prometheus の概要については、Prometheus 概要 を参照してください。
- Alertmanager を使用してアラートを送受信する方法は、Alertmanager のドキュメント を参照してください。