12.2. 공용 끝점 DNS 이름용 TLS

공용 끝점 DNS 이름을 참조하려면 openstackclient Pod에 인증서를 추가합니다.

사전 요구 사항

절차

  1. CA 인증서를 저장할 ConfigMap 을 생성합니다. ConfigMap 은 OpenStackControlPlane 오브젝트를 사용하여 openstackclient Pod에 CA 인증서를 추가하는 데 사용되는 인터페이스입니다.

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: cacerts
      namespace: openstack
    data:
     local_CA: |
        -----BEGIN CERTIFICATE-----
        …
       -----END CERTIFICATE-----
      another_CA: |
        -----BEGIN CERTIFICATE-----
        …
       -----END CERTIFICATE-----
  2. OpenStackControlPlane을 생성하고 ConfigMap 을 참조합니다.

    apiVersion: osp-director.openstack.org/v1beta2
    kind: OpenStackControlPlane
    metadata:
      name: <overcloud>
      namespace: openstack
    spec:
      caConfigMap: cacerts
    • & lt;overcloud >를 스택 이름으로 바꿉니다.
  3. ~/custom_environment_files 디렉터리에서 SSLCertificate,SSLIntermediateCertificate,SSLKey, CAMap 매개변수를 사용하여 배포에 대해 생성된 인증서가 포함된 tls-certs.yaml 이라는 파일을 생성합니다.

    참고

    인증서 파일 생성에 대한 자세한 내용은 SSL/TLS 활성화를 참조하십시오.

  4. heatEnvConfigMap 을 업데이트하여 tls-certs.yaml 파일을 추가합니다.

    $ oc create configmap -n openstack heat-env-config --from-file=~/custom_environment_files/ --dry-run=client -o yaml | oc apply -f -
  5. OpenStackConfigGenerator를 생성하고 필요한 heatEnvs 구성 파일을 추가하여 공용 끝점 DNS 이름에 TLS를 구성합니다.

    apiVersion: osp-director.openstack.org/v1beta1
    kind: OpenStackConfigGenerator
    …
    spec:
      …
      heatEnvs:
        - ssl/tls-endpoints-public-dns.yaml
        - ssl/enable-tls.yaml
      …
      heatEnvConfigMap: heat-env-config
      tarballConfigMap: tripleo-tarball-config
  6. OpenStackConfigGenerator 및 새 OpenStackConfigVersion이 생성되고 OpenStackDeploy 리소스를 사용하여 오버클라우드에 대해 Ansible 플레이북을 실행합니다.