3.5. TempoMonolithic インスタンスのインストール
TempoMonolithic インスタンスは、テクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
TempoMonolithic インスタンスは、Web コンソールまたはコマンドラインを使用してインストールできます。
TempoMonolithic カスタムリソース (CR) は、モノリシックモードで Tempo デプロイメントを作成します。コンパクター、ディストリビューター、インジェスター、クエリアー、クエリーフロントエンドなど、Tempo デプロイメントのすべてのコンポーネントが、単一のコンテナーに含まれます。
TempoMonolithic インスタンスは、インメモリーストレージ、永続ボリューム、またはオブジェクトストレージへのトレースの保存をサポートしています。
モノリシックモードでの Tempo デプロイメントは、小規模なデプロイメント、デモンストレーション、テスト、および Red Hat OpenShift Distributed Tracing Platform (Jaeger) オールインワンデプロイメントの移行パスとして推奨されます。
Tempo のモノリシックデプロイメントは水平方向にスケーリングできません。水平スケーリングが必要な場合は、マイクロサービスモードでの Tempo デプロイメント用の TempoStack CR を使用してください。
3.5.1. Web コンソールを使用した TempoMonolithic インスタンスのインストール リンクのコピーリンクがクリップボードにコピーされました!
TempoMonolithic インスタンスは、テクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
Web コンソールの Administrator ビューから TempoMonolithic インスタンスをインストールできます。
前提条件
-
cluster-adminロールを持つクラスター管理者として、OpenShift Container Platform Web コンソールにログインしている。 -
Red Hat OpenShift Dedicated の場合、
dedicated-adminロールを持つアカウントを使用してログインしている。 - 1 つ以上のテナントを定義し、読み取りおよび書き込み権限を設定した。詳細は、「テナントの読み取り権限の設定」および「テナントの書き込み権限の設定」を参照してください。
手順
-
Home
Projects Create Project に移動して、後続のステップで作成する TempoMonolithicインスタンス用に、許可される任意のプロジェクトを作成します。openshift-接頭辞で始まるプロジェクト名は許可されません。 トレースの保存に使用するサポート対象のストレージのタイプ (インメモリーストレージ、永続ボリューム、オブジェクトストレージ) を決定します。
重要オブジェクトストレージは、Distributed Tracing Platform には含まれていません。そのため、サポートされているプロバイダー (Red Hat OpenShift Data Foundation、MinIO、Amazon S3、Azure Blob Storage、または Google Cloud Storage) によるオブジェクトストアを設定する必要があります。
また、オブジェクトストレージを選択するには、
TempoMonolithicインスタンス用に作成したプロジェクトにオブジェクトストレージバケットのシークレットを作成する必要があります。これは、WorkloadsSecrets Create From YAML で実行できます。 詳細は、「オブジェクトストレージのセットアップ」を参照してください。
Amazon S3 および MinIO ストレージのシークレット例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow TempoMonolithicインスタンスを作成します。注記同じクラスター上の別々のプロジェクトに複数の
TempoMonolithicインスタンスを作成できます。-
Operators
Installed Operators に移動します。 -
TempoMonolithic
Create TempoMonolithic YAML view を選択します。 YAML view で、
TempoMonolithicカスタムリソース (CR) をカスタマイズします。TempoMonolithicCR の例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- この CR は、OTLP プロトコルでトレースの取り込みを行う
TempoMonolithicデプロイメントを作成します。 - 2
TempoMonolithicデプロイメント用に選択したプロジェクト。openshift-接頭辞で始まるプロジェクト名は許可されません。- 3
- Red Hat は、Red Hat OpenShift Distributed Tracing Platform ドキュメントに記載されているカスタムリソースオプションのみをサポートしています。
- 4
- トレースを保存するためのストレージを指定します。
- 5
- トレースを保存するストレージのタイプ (インメモリーストレージ、永続ボリューム、またはオブジェクトストレージ)。永続ボリュームの値は
pvです。オブジェクトストレージの値は、使用するオブジェクトストアのタイプに応じて、s3、gcs、またはazureが受け入れられます。デフォルト値は、tmpfsインメモリーストレージのmemoryです。これは、Pod がシャットダウンするとデータが保持されないため、開発、テスト、デモ、および概念検証用の環境にのみ適しています。 - 6
- メモリーサイズ: インメモリーストレージの場合、これは
tmpfsボリュームのサイズを意味します。デフォルトは2Giです。永続ボリュームの場合、これは永続ボリューム要求のサイズを意味します。デフォルトは10Giです。オブジェクトストレージの場合、これは Tempo Write-Ahead Logging (WAL) の永続ボリューム要求のサイズを意味し、デフォルトは10Giです。 - 7
- オプション: オブジェクトストレージの場合、オブジェクトストレージのタイプ。使用するオブジェクトストアのタイプに応じて、
s3、gcs、およびazureが値として受け入れられます。 - 8
- オプション: オブジェクトストレージの場合、ストレージシークレットの
metadata内のnameの値。ストレージシークレットは、TempoMonolithicインスタンスと同じ namespace にあり、「表 1.必要なシークレットパラメーター」(「オブジェクトストレージのセットアップ」セクションを参照) で指定えているフィールドを含んでいる必要があります。 - 9
- オプション:
- 10
- オプション: CA 証明書を含む
ConfigMapオブジェクトの名前。 - 11
http://<gateway_ingress>/api/traces/v1/<tenant_name>/searchのルート経由で、データを視覚化する Jaeger UI を公開します。- 12
- Jaeger UI のルートの作成を有効にします。
- 13
- オプション。
- 14
- テナントをリスト表示します。
- 15
- テナント名。
X-Scope-OrgIdHTTP ヘッダーの値として使用されます。 - 16
- テナントの一意の識別子。
TempoMonolithicデプロイメントのライフサイクル全体を通じて一意である必要があります。この ID は、オブジェクトストレージ内のオブジェクトの接頭辞として追加されます。UUID またはtempoNameフィールドの値を再利用できます。
- Create を選択します。
-
Operators
検証
-
Project: ドロップダウンリストを使用して、
TempoMonolithicインスタンスのプロジェクトを選択します。 -
Operator
Installed Operator に移動して、 TempoMonolithicインスタンスの Status が Condition: Ready であることを確認します。 -
Workloads
Pod に移動して、 TempoMonolithicインスタンスの Pod が実行中であることを確認します。 Jaeger UI にアクセスします。
Networking
Routes に移動し、Ctrl+F を押して jaegeruiを検索します。注記Jaeger UI は、
tempo-<metadata_name_of_TempoMonolithic_CR>-jaegeruiルートを使用します。- Location 列で URL を開き、Jaeger UI にアクセスします。
TempoMonolithicインスタンスの Pod の準備ができたら、クラスター内のtempo-<metadata_name_of_TempoMonolithic_CR>:4317(OTLP/gRPC) およびtempo-<metadata_name_of_TempoMonolithic_CR>:4318(OTLP/HTTP) エンドポイントにトレースを送信できます。Tempo API は、クラスター内の
tempo-<metadata_name_of_TempoMonolithic_CR>:3200エンドポイントで利用できます。
3.5.2. CLI を使用した TempoMonolithic インスタンスのインストール リンクのコピーリンクがクリップボードにコピーされました!
TempoMonolithic インスタンスは、テクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
コマンドラインから TempoMonolithic インスタンスをインストールできます。
前提条件
cluster-adminロールを持つクラスター管理者によるアクティブな OpenShift CLI (oc) セッション。ヒント-
OpenShift CLI (
oc) のバージョンが最新であり、OpenShift Container Platform バージョンと一致していることを確認してください。 oc loginコマンドを実行します。oc login --username=<your_username>
$ oc login --username=<your_username>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
OpenShift CLI (
- 1 つ以上のテナントを定義し、読み取りおよび書き込み権限を設定した。詳細は、「テナントの読み取り権限の設定」および「テナントの書き込み権限の設定」を参照してください。
手順
次のコマンドを実行して、後続のステップで作成する
TempoMonolithicインスタンス用に、許可される任意のプロジェクトを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
openshift-接頭辞で始まるプロジェクト名は許可されません。
トレースの保存に使用するサポート対象のストレージのタイプ (インメモリーストレージ、永続ボリューム、オブジェクトストレージ) を決定します。
重要オブジェクトストレージは、Distributed Tracing Platform には含まれていません。そのため、サポートされているプロバイダー (Red Hat OpenShift Data Foundation、MinIO、Amazon S3、Azure Blob Storage、または Google Cloud Storage) によるオブジェクトストアを設定する必要があります。
また、オブジェクトストレージを選択するには、
TempoMonolithicインスタンス用に作成したプロジェクトにオブジェクトストレージバケットのシークレットを作成する必要があります。これを行うには、次のコマンドを実行します。oc apply -f - << EOF <object_storage_secret> EOF
$ oc apply -f - << EOF <object_storage_secret> EOFCopy to Clipboard Copied! Toggle word wrap Toggle overflow 詳細は、「オブジェクトストレージのセットアップ」を参照してください。
Amazon S3 および MinIO ストレージのシークレット例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow TempoMonolithicインスタンス用に作成したプロジェクト内に TempoMonolithic インスタンスを作成します。ヒント同じクラスター上の別々のプロジェクトに複数の
TempoMonolithicインスタンスを作成できます。TempoMonolithicカスタムリソース (CR) をカスタマイズします。TempoMonolithicCR の例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- この CR は、OTLP プロトコルでトレースの取り込みを行う
TempoMonolithicデプロイメントを作成します。 - 2
TempoMonolithicデプロイメント用に選択したプロジェクト。openshift-接頭辞で始まるプロジェクト名は許可されません。- 3
- Red Hat は、Red Hat OpenShift Distributed Tracing Platform ドキュメントに記載されているカスタムリソースオプションのみをサポートしています。
- 4
- トレースを保存するためのストレージを指定します。
- 5
- トレースを保存するストレージのタイプ (インメモリーストレージ、永続ボリューム、またはオブジェクトストレージ)。永続ボリュームの値は
pvです。オブジェクトストレージの値は、使用するオブジェクトストアのタイプに応じて、s3、gcs、またはazureが受け入れられます。デフォルト値は、tmpfsインメモリーストレージのmemoryです。これは、Pod がシャットダウンするとデータが保持されないため、開発、テスト、デモ、および概念検証用の環境にのみ適しています。 - 6
- メモリーサイズ: インメモリーストレージの場合、これは
tmpfsボリュームのサイズを意味します。デフォルトは2Giです。永続ボリュームの場合、これは永続ボリューム要求のサイズを意味します。デフォルトは10Giです。オブジェクトストレージの場合、これは Tempo Write-Ahead Logging (WAL) の永続ボリューム要求のサイズを意味し、デフォルトは10Giです。 - 7
- オプション: オブジェクトストレージの場合、オブジェクトストレージのタイプ。使用するオブジェクトストアのタイプに応じて、
s3、gcs、およびazureが値として受け入れられます。 - 8
- オプション: オブジェクトストレージの場合、ストレージシークレットの
metadata内のnameの値。ストレージシークレットは、TempoMonolithicインスタンスと同じ namespace にあり、「表 1.必要なシークレットパラメーター」(「オブジェクトストレージのセットアップ」セクションを参照) で指定えているフィールドを含んでいる必要があります。 - 9
- オプション:
- 10
- オプション: CA 証明書を含む
ConfigMapオブジェクトの名前。 - 11
http://<gateway_ingress>/api/traces/v1/<tenant_name>/searchのルート経由で、データを視覚化する Jaeger UI を公開します。- 12
- Jaeger UI のルートの作成を有効にします。
- 13
- オプション。
- 14
- テナントをリスト表示します。
- 15
- テナント名。
X-Scope-OrgIdHTTP ヘッダーの値として使用されます。 - 16
- テナントの一意の識別子。
TempoMonolithicデプロイメントのライフサイクル全体を通じて一意である必要があります。この ID は、オブジェクトストレージ内のオブジェクトの接頭辞として追加されます。UUID またはtempoNameフィールドの値を再利用できます。
次のコマンドを実行して、カスタマイズされた CR を適用します。
oc apply -f - << EOF <tempomonolithic_cr> EOF
$ oc apply -f - << EOF <tempomonolithic_cr> EOFCopy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
次のコマンドを実行して、すべての
TempoMonolithiccomponentsのstatusがRunningであり、conditionsがtype: Readyであることを確認します。oc get tempomonolithic.tempo.grafana.com <metadata_name_of_tempomonolithic_cr> -o yaml
$ oc get tempomonolithic.tempo.grafana.com <metadata_name_of_tempomonolithic_cr> -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、
TempoMonolithicインスタンスの Pod が実行中であることを確認します。oc get pods
$ oc get podsCopy to Clipboard Copied! Toggle word wrap Toggle overflow Jaeger UI にアクセスします。
次のコマンドを実行して、
tempo-<metadata_name_of_tempomonolithic_cr>-jaegeruiルートのルート詳細をクエリーします。oc get route
$ oc get routeCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
Web ブラウザーで
https://<route_from_previous_step>を開きます。
TempoMonolithicインスタンスの Pod の準備ができたら、クラスター内のtempo-<metadata_name_of_tempomonolithic_cr>:4317(OTLP/gRPC) およびtempo-<metadata_name_of_tempomonolithic_cr>:4318(OTLP/HTTP) エンドポイントにトレースを送信できます。Tempo API は、クラスター内の
tempo-<metadata_name_of_tempomonolithic_cr>:3200エンドポイントで利用できます。