1.26.4.2. サービスメッシュの分散トレースセキュリティーの設定
分散トレーシングプラットフォームは、デフォルトの認証に OAuth を使用します。ただし、Red Hat OpenShift Service Mesh は htpasswd
と呼ばれるシークレットを使用して、Grafana、Kiali、分散トレーシングプラットフォームなどの依存サービス間の通信を容易にします。ServiceMeshControlPlane
で分散トレーシングプラットフォームを設定すると、Service Mesh は htpasswd
を使用するようにセキュリティー設定を自動的に設定します。
Jaeger カスタムリソースで分散トレースプラットフォーム設定を指定している場合は、htpasswd
設定を手動で設定し、htpasswd シークレットが Jaeger インスタンスにマウントされていることを確認して、Kiali
が Jaeger インスタンスと通信できるようにする必要があります。
1.26.4.2.1. OpenShift コンソールからのサービスメッシュの分散トレースセキュリティー設定
Jaeger リソースを変更して、OpenShift コンソールの Service Mesh で使用する分散トレースプラットフォームセキュリティーを設定できます。
前提条件
-
cluster-admin
ロールを持つユーザーとしてクラスターにアクセスできる。(Red Hat OpenShift Dedicated を使用する場合)dedicated-admin
ロールがあるアカウント。 - Red Hat OpenShift Service Mesh Operator がインストールされている必要がある。
-
クラスターにデプロイされた
ServiceMeshControlPlane
。 - OpenShift Container Platform Web コンソールへのアクセスがある。
手順
-
cluster-admin
ロールを持つユーザーとして OpenShift Container Platform Web コンソールにログインします。 -
Operators
Installed Operators の順に移動します。 -
Project メニューをクリックし、一覧から
ServiceMeshControlPlane
リソースがデプロイされているプロジェクト (例:istio-system
) を選択します。 - Red Hat OpenShift distributed tracing platform Operator をクリックします。
- Operator の詳細 ページで、Jaeger タブをクリックします。
- Jaeger インスタンスの名前をクリックします。
-
Jaeger の詳細ページで、
YAML
タブをクリックして設定を変更します。 次の例に示すように、
Jaeger
カスタムリソースファイルを編集して、htpasswd
設定を追加します。-
spec.ingress.openshift.htpasswdFile
-
spec.volumes
spec.volumeMounts
htpasswd
設定を示す Jaeger リソースの例apiVersion: jaegertracing.io/v1 kind: Jaeger spec: ingress: enabled: true openshift: htpasswdFile: /etc/proxy/htpasswd/auth sar: '{"namespace": "istio-system", "resource": "pods", "verb": "get"}' options: {} resources: {} security: oauth-proxy volumes: - name: secret-htpasswd secret: secretName: htpasswd - configMap: defaultMode: 420 items: - key: ca-bundle.crt path: tls-ca-bundle.pem name: trusted-ca-bundle optional: true name: trusted-ca-bundle volumeMounts: - mountPath: /etc/proxy/htpasswd name: secret-htpasswd - mountPath: /etc/pki/ca-trust/extracted/pem/ name: trusted-ca-bundle readOnly: true
-
- Save をクリックします。