Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

4.17. カスタム証明書の設定

OpenShift Container Platform API のパブリックホスト名と Web コンソールカスタム提供証明書は、クラスターインストール時にデプロイでき、インベントリーファイルで設定できます。

注記

openshift_master_cluster_public_hostname パラメーター値として設定する、publicMasterURL に関連付けられたホスト名のカスタム証明書を設定します。masterURL に関連付けられるホスト名 (openshift_master_cluster_hostname) のカスタム提供証明書を使用することにより、インフラストラクチャーコンポーネントが内部の masterURL ホストを使用してマスター API への接続を試行するために TLS エラーが生じます。

証明書とキーファイルのパスは、openshift_master_named_certificates クラスター変数を使用して設定できます。

openshift_master_named_certificates=[{"certfile": "/path/to/custom1.crt", "keyfile": "/path/to/custom1.key", "cafile": "/path/to/custom-ca1.crt"}]

ファイルパスは、Ansible が実行されるシステムに対してローカルである必要があります。証明書はマスターホストにコピーされ、/etc/origin/master/named_certificates/ ディレクトリー内にデプロイされます。

Ansible は、証明書の Common NameSubject Alternative Names を検出します。検出された名前は、openshift_master_named_certificates の設定時に "names" キーを指定して上書きできます。

openshift_master_named_certificates=[{"certfile": "/path/to/custom1.crt", "keyfile": "/path/to/custom1.key", "names": ["public-master-host.com"], "cafile": "/path/to/custom-ca1.crt"}]

openshift_master_named_certificates を使用して設定される証明書はマスターにキャッシュされます。 つまり、別の証明書セットで Ansible を実行するたびに、以前にデプロイされたすべての証明書がマスターホストとマスターの設定ファイル内に残ることになります。

openshift_master_named_certificates を提供される値 (または値なし) で上書きする必要がある場合、openshift_master_overwrite_named_certificates クラスター変数を指定します。

openshift_master_overwrite_named_certificates=true

さらに詳細の例が必要な場合には、次のクラスター変数をインベントリーファイルに追加することを検討してください。

openshift_master_cluster_method=native
openshift_master_cluster_hostname=lb-internal.openshift.com
openshift_master_cluster_public_hostname=custom.openshift.com

以降の Ansible 実行で証明書を上書きするには、以下のパラメーター値を設定します。

openshift_master_named_certificates=[{"certfile": "/root/STAR.openshift.com.crt", "keyfile": "/root/STAR.openshift.com.key", "names": ["custom.openshift.com"], "cafile": "/root/ca-file.crt"}]
openshift_master_overwrite_named_certificates=true
重要

The cafile 証明書は、証明書のインストール時または再デプロイメント時にマスターの ca-bundle.crt ファイルにインポートされます。ca-bundle.crt ファイルは、OpenShift Container Platform で実行されるすべての Pod にマウントされます。複数の OpenShift Container Platform コンポーネントはデフォルトでは、masterPublicURL エンドポイントにアクセスする時に名前付き証明書を自動的に信頼します。certificates パラメーターから cafile オプションを省略すると、Web コンソールと他のコンポーネントの複数の機能は削減されます。