2.3. Red Hat OpenShift 分散トレースプラットフォームアーキテクチャー
Red Hat OpenShift 分散トレースプラットフォームは、複数のコンポーネントで設定されており、トレースデータを収集し、保存し、表示するためにそれらが連携します。
Red Hat OpenShift Distributed Tracing Platform: このコンポーネントは、オープンソースの Grafana Tempo プロジェクト に基づいています。
- ゲートウェイ: ゲートウェイは、ディストリビューターまたはクエリーフロントエンドサービスへの要求の認証、承認、および転送を処理します。
-
ディストリビューター: Distributor は、Jaeger、OpenTelemetry、Zipkin などの複数の形式のスパンを受け入れます。
traceIDをハッシュ化し、分散コンシステントハッシュリングを使用して、スパンを Ingester にルーティングします。 - Ingester: Ingester はトレースをブロックにバッチ化し、ブルームフィルターとインデックスを作成してすべてバックエンドにフラッシュします。
- Query Frontend: クエリーフロントエンドシャードを使用して受信クエリーの検索領域を検索し、クエリーを Queriers に送信します。Query Frontend のデプロイメントでは、Tempo Query サイドカーを介して Jaeger UI が公開されます。
- Querier: Querier は、Ingester またはバックエンドストレージで要求されたトレース ID を検索します。パラメーターに応じて、Ingester にクエリーを実行し、バックエンドから Bloom インデックスを取得して、オブジェクトストレージ内のブロックを検索できます。
- コンパクター: Compactor はバックエンドストレージとの間でブロックして、ブロックの合計数を減らします。
Red Hat build of OpenTelemetry - このコンポーネントは、オープンソースの OpenTelemetry プロジェクト に基づいています。
- OpenTelemetry Collector: OpenTelemetry Collector は、テレメトリーデータを受信、処理、エクスポートするためのベンダーに依存しない方法です。OpenTelemetry Collector は、Jaeger や Prometheus などのオープンソースの可観測性データ形式をサポートし、1 つ以上のオープンソースまたは商用バックエンドに送信します。Collector は、インストルメンテーションライブラリーがテレメトリーデータをエクスポートするデフォルトの場所です。