3.3.3. サービス CA バンドルの設定マップへの追加


Pod は、service.beta.openshift.io/inject-cabundle=true アノテーションを持つ ConfigMap オブジェクトをマウントすることで、サービスの認証局 (CA) 証明書にアクセスできます。config map にアノテーションが付けられると、クラスターがサービスの CA 証明書を config map の service-ca.crt キーに自動的に注入します。この CA 証明書へのアクセスにより、TLS クライアントがサービス提供証明書を使用してサービスへの接続を検証することが可能になります。

重要

OpenShift Service CA Operator は、このアノテーションを config map に追加した後、config map 内のすべてのデータを削除します。Pod の設定を格納している config map と同じものを使用するのではなく、別の config map を使用して service-ca.crt を格納することを検討してください。

手順

  1. 次のコマンドを入力して、config map に service.beta.openshift.io/inject-cabundle=true アノテーションを付けます。

    $ oc annotate configmap <config_map_name> \
    1
    
         service.beta.openshift.io/inject-cabundle=true
    1
    <config_map_name> を、アノテーションを付ける設定マップの名前に置き換えます。
    注記

    ボリュームマウントで service-ca.crt キーを明示的に参照すると、config map に CA バンドルが注入されるまで Pod が起動しなくなります。この動作は、ボリュームのサービス証明書設定で optional パラメーターを true に設定することでオーバーライドできます。

  2. config map を表示して、サービス CA バンドルが注入されていることを確認します。

    $ oc get configmap <config_map_name> -o yaml

    CA バンドルは、YAML 出力の service-ca.crt キーの値として表示されます。

    apiVersion: v1
    data:
      service-ca.crt: |
        -----BEGIN CERTIFICATE-----
    ...
  3. Deployment オブジェクトを設定して、Pod 内に存在する各コンテナーに config map をボリュームとしてマウントします。

    マウントされる config map のボリュームを定義する Deployment オブジェクトの例

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: my-example-custom-ca-deployment
      namespace: my-example-custom-ca-ns
    spec:
      ...
        spec:
          ...
          containers:
            - name: my-container-that-needs-custom-ca
              volumeMounts:
              - name: trusted-ca
                mountPath: /etc/pki/ca-trust/extracted/pem
                readOnly: true
          volumes:
          - name: trusted-ca
            configMap:
              name: <config_map_name> 
    1
    
              items:
                - key: ca-bundle.crt 
    2
    
                  path: tls-ca-bundle.pem 
    3
    
    # ...

    1
    この手順の前のステップでアノテーションを付けた config map の名前を指定します。
    2
    ca-bundle.crt は ConfigMap キーとして必要になります。
    3
    tls-ca-bundle.pem は ConfigMap パスとして必要になります。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る