第4章 Web コンソールからの Jaeger production ストラテジーのデプロイ
production
デプロイメントストラテジーは、実稼働環境向けのストラテジーであり、トレースデータの長期の保存が重要となり、より拡張性および高可用性のあるアーキテクチャーも必要になります。
前提条件
- Elasticsearch Operator がインストールされている必要があります。
- Jaeger Operator がインストールされている必要があります。
- Jaeger インストールのカスタマイズ方法についての手順を確認します。
-
cluster-admin
ロールを持つアカウントが必要です。
手順
-
cluster-admin
ロールを持つユーザーとして OpenShift Container Platform Web コンソールにログインします。 新規プロジェクト (例:
jaeger-system
) を作成します。-
Home
Projects に移動します。 - Create Project をクリックします。
-
Name フィールドに
jaeger-system
を入力します。 - Create をクリックします。
-
Home
-
Operators
Installed Operators に移動します。 -
必要な場合は、Project メニューから
jaeger-system
を選択します。Operator が新規プロジェクトにコピーされるまでに数分待機する必要がある場合があります。 - Jaeger Operator をクリックします。Overview タブの Provided APIs で、Operator は単一リンクを提供します。
- Jaeger で Create Instance をクリックします。
Create Jaeger ページで、デフォルトの
all-in-one
yaml テキストを実稼働用の YAML 設定に置き換えます。以下は例になります。Elasticsearch を含む jaeger-production.yaml ファイルの例
apiVersion: jaegertracing.io/v1 kind: Jaeger metadata: name: jaeger-production namespace: spec: strategy: production ingress: security: oauth-proxy storage: type: elasticsearch elasticsearch: nodeCount: 3 redundancyPolicy: SingleRedundancy esIndexCleaner: enabled: true numberOfDays: 7 schedule: 55 23 * * * esRollover: schedule: '*/30 * * * *'
- Create をクリックして Jaeger インスタンスを作成します。
-
Jaegers ページで、Jaeger インスタンスの名前 (例:
jaeger-prod-elasticsearch
) をクリックします。 - Jaeger Details ページで、Resources タブをクリックします。すべての Pod のステータスが Running になるまで待機してから続行します。
4.1. CLI からの Jaeger 実稼働環境のデプロイ
以下の手順に従って、コマンドラインから Jaeger のインスタンスを作成します。
前提条件
- OpenShift Jaeger Operator がインストールされ、検証済みです。
-
OpenShift CLI (
oc
) へのアクセスが可能です。 -
cluster-admin
ロールを持つアカウントが必要です。
手順
cluster-admin
ロールを持つユーザーとして OpenShift Container Platform CLI にログインします。$ oc login https://{HOSTNAME}:8443
jaeger-system
という名前の新規プロジェクトを作成します。$ oc new-project jaeger-system
-
直前の手順のサンプルファイルのテキストが含まれる
jaeger-production.yaml
という名前のカスタムリソースファイルを作成します。 以下のコマンドを実行して Jaeger をデプロイします。
$ oc create -n jaeger-system -f jaeger-production.yaml
以下のコマンドを実行して、インストールプロセス時の Pod の進捗を確認します。
$ oc get pods -n jaeger-system -w
インストールプロセスが完了すると、以下のような出力が表示されるはずです。
NAME READY STATUS RESTARTS AGE elasticsearch-cdm-jaegersystemjaegerproduction-1-6676cf568gwhlw 2/2 Running 0 10m elasticsearch-cdm-jaegersystemjaegerproduction-2-bcd4c8bf5l6g6w 2/2 Running 0 10m elasticsearch-cdm-jaegersystemjaegerproduction-3-844d6d9694hhst 2/2 Running 0 10m jaeger-production-collector-94cd847d-jwjlj 1/1 Running 3 8m32s jaeger-production-query-5cbfbd499d-tv8zf 3/3 Running 3 8m32s