15.8. ルート証明書の注入
証明書の署名者がオーバークラウドのイメージにあるデフォルトのトラストストアに含まれない場合には、オーバークラウドのイメージに認証局を注入する必要があります。Heat テンプレートコレクションから inject-trust-anchor.yaml 環境ファイルをコピーします。
$ cp -r /usr/share/openstack-tripleo-heat-templates/environments/ssl/inject-trust-anchor.yaml ~/templates/.
このファイルを編集して、下記のパラメーターに以下の変更を加えます。
- SSLRootCertificate
SSLRootCertificateパラメーターにルート認証局ファイル (ca.crt.pem) の内容をコピーします。以下に例を示します。parameter_defaults: SSLRootCertificate: | -----BEGIN CERTIFICATE----- MIIDgzCCAmugAwIBAgIJAKk46qw6ncJaMA0GCSqGSIb3DQEBCwUAMFgxCzAJBgNV ... sFW3S2roS4X0Af/kSSD8mlBBTFTCMBAj6rtLBKLaQbIxEpIzrgvp -----END CERTIFICATE-----重要この認証局の内容に新しく追加する行は、すべて同じレベルにインデントする必要があります。
- OS::TripleO::NodeTLSCAData
OS::TripleO::NodeTLSCAData:のリソースのパスを絶対パスに変更します。resource_registry: OS::TripleO::NodeTLSCAData: /usr/share/openstack-tripleo-heat-templates/puppet/extraconfig/tls/ca-inject.yaml
複数の CA を注入する場合には、inject-trust-anchor-hiera.yaml 環境ファイルを使用することができます。たとえば、アンダークラウドとオーバークラウド両方の CA を同時に注入することができます。
parameter_defaults:
CAMap:
undercloud-ca:
content: |
-----BEGIN CERTIFICATE-----
... cert content ...
-----END CERTIFICATE-----
overcloud-ca:
content: |
-----BEGIN CERTIFICATE-----
... cert content ...
-----END CERTIFICATE-----