0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OpenShiftでTempo Operatorを使った分散トレーシングを実現する

Last updated at Posted at 2024-12-27

はじめに

OpenShift4.16のWhat's Newにも登場したTempoを使って、分散トレーシングを実現したいと思います。

前提

環境情報

  • OpenShift: 4.15.30
  • Tempo Operator(Red Hat): 0.13.0-1+0.1730817419.p
    • 今回はTempoMonolithicで構成する
  • Object Storage(s3/gcs/blob storage...)が構成済み
    • 今回は構成済みのIBM CloudのCloud Object Storage(ICOS)を使用する
      ※ICOSは本手順でS3互換として利用可能な為、ドキュメント内S3の手順に読み替えて実施する

今回の内容

  1. Tempo Operatorのインストール 👈ここ
  2. Tempo Monolithic Instanceの作成 👈ここ
  3. サンプルアプリケーションの作成
  4. 分散トレーシングの構成

ドキュメント

参考リンク

手順

1. Tempo Operatorのインストール

https://docs.redhat.com/ja/documentation/openshift_container_platform/4.15/html/distributed_tracing/distributed-tracing-platform-tempo#distr-tracing-tempo-install-web-console_dist-tracing-tempo-installing

  • OpenShiftコンソールにログイン

スクリーンショット 2024-11-18 14.00.12.png

  • Operator > OperatorHubに移動しTempo Operatorを検索、Red Hatが提供するTempo Operatorを選択する

スクリーンショット 2024-11-18 14.01.29.png

  • 「インストール」を押下する

スクリーンショット 2024-11-18 14.01.51.png

  • 以下の設定で「インストール」を押下する
    • 更新チャネル: stable
    • バージョン: 0.13.0-1+0.1730817419.p
    • インストールモード: クラスターのすべてのnamespace(デフォルト)
    • インストール済みのnamespace: Operator推奨のnamespace: openshift-tempo-operator
      • このnamespaceでOperatorで推奨されるクラスターモニタリングを有効化する: 未チェック
    • 更新の承認: 手動

スクリーンショット 2024-11-18 14.03.56.png

スクリーンショット 2024-11-18 14.04.42.png

  • 承認アクションが表示されたら「承認」を押下する

スクリーンショット 2024-11-18 14.05.33.png

※以下作成されるリソースの一覧

スクリーンショット 2024-11-18 14.05.48.png

  • しばらく経つとTempo Operatorのインストール処理が完了し、表示された「Operatorの表示」を押下する

スクリーンショット 2024-11-18 14.06.33.png

  • Tempo Operatorがインストールされていることを確認する

スクリーンショット 2024-11-18 14.06.49.png

2. Tempo Monolithic Instanceの作成

https://docs.redhat.com/ja/documentation/openshift_container_platform/4.15/html/distributed_tracing/distributed-tracing-platform-tempo#distr-tracing-tempo-install-tempomonolithic-web-console_dist-tracing-tempo-installing

  • ホーム > プロジェクトから「プロジェクトの作成」を押下する
    • Tempo Monolithic Instance用のプロジェクトを作成する

プロジェクト名「sample-tempo-monolithic」(任意の名前)

スクリーンショット 2024-11-18 15.53.58.png

スクリーンショット 2024-11-18 15.54.12.png

  • トレース情報の保存に使用されるObject Storage接続情報を定義する

以下のマニフェストファイル内容でリソースを作成

apiVersion: v1
kind: Secret
metadata:
  name: sample-tempo-monolithic-cos-secret(任意の名前)
  namespace: sample-tempo-monolithic(上で作成したプロジェクト名)
type: Opaque
stringData:
  endpoint: http://<Cloud Object StorageバケットのPublicEndpoint>
  bucket: <Cloud Object Storageバケット名>
  access_key_id: <Cloud Object StorageインスタンスのアクセスキーID>
  access_key_secret: <Cloud Object Storageインスタンスのアクセスキーシークレット>

スクリーンショット 2024-11-18 16.05.15.png

  • Operator > インストール済みのOperator > Tempo Operatorを選択し、Tempo Monolithicタブから「TempoMonolithicの作成」を押下する

以下のマニフェストファイル内容でリソースを作成

apiVersion: tempo.grafana.com/v1alpha1
kind: TempoMonolithic
metadata:
  name: sample(任意の名前)
  namespace: sample-tempo-monolithic(上で作成したプロジェクト名)
spec:
  storage:
    traces:
      backend: s3
      size: 10Gi 
      s3: 
        secret: sample-tempo-monolithic-cos-secret(上で作成したSecret名)
  jaegerui:
    enabled: true 
    route:
      enabled: true 

スクリーンショット 2024-11-18 17.08.14.png

  • ネットワーク > Routesを選択し、上の作業で作成されたRouteからURLを押下する

スクリーンショット 2024-11-18 17.09.12.png

スクリーンショット 2024-11-18 17.09.21.png

スクリーンショット 2024-11-18 17.09.30.png

  • Jaeger UIが使用できるようになっていることが確認できる

スクリーンショット 2024-11-18 17.39.02.png

さいごに

次回はサンプルアプリケーションを作成して、分散トレーシング情報を取得できるよう構成を行いたいと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?