9.7.6. Google Cloud에서 앰비언트 인증 정보를 사용하여 ACME 발행자 구성
cert-manager Operator for Red Hat OpenShift를 사용하여 Google Cloud에서 앰비언트 인증 정보를 사용하여 DNS-01 문제를 해결하기 위해 ACME 발행자를 설정할 수 있습니다. 이 절차에서는 Let's Encrypt 를 ACME CA 서버로 사용하고 Google Cloud DNS를 사용하여 DNS-01 문제를 해결하는 방법을 보여줍니다.
사전 요구 사항
- 클러스터가 Google Cloud Workload Identity를 사용하도록 구성된 경우 Google Cloud Workload Identity 섹션을 사용하여 cert-manager Operator for Red Hat OpenShift에 대한 클라우드 인증 정보 구성 의 지침을 따르십시오.
- 클러스터에서 Google Cloud Workload Identity를 사용하지 않는 경우 Google Cloud의 cert-manager Operator for Red Hat OpenShift에 대한 클라우드 인증 정보 구성 섹션의 지침을 따르십시오.
프로세스
선택 사항: DNS-01 자체 검사의 네임서버 설정을 재정의합니다.
이 단계는 대상 퍼블릭 호스팅 영역이 클러스터의 기본 개인 호스팅 영역과 겹치는 경우에만 필요합니다.
다음 명령을 실행하여
CertManager리소스를 편집합니다.$ oc edit certmanager cluster다음 덮어쓰기 인수가 포함된
spec.controllerConfig섹션을 추가합니다.apiVersion: operator.openshift.io/v1alpha1 kind: CertManager metadata: name: cluster ... spec: ... controllerConfig:1 overrideArgs: - '--dns01-recursive-nameservers-only'2 - '--dns01-recursive-nameservers=1.1.1.1:53'3 - 파일을 저장하여 변경 사항을 적용합니다.
선택 사항: 발행자의 네임스페이스를 생성합니다.
$ oc new-project <issuer_namespace>CertManager리소스를 수정하여--issuer-ambient-credentials인수를 추가합니다.$ oc patch certmanager/cluster \ --type=merge \ -p='{"spec":{"controllerConfig":{"overrideArgs":["--issuer-ambient-credentials"]}}}'발행자를 생성합니다.
Issuer오브젝트를 정의하는 YAML 파일을 생성합니다.issuer.yaml파일 예apiVersion: cert-manager.io/v1 kind: Issuer metadata: name: <acme_dns01_clouddns_issuer>1 namespace: <issuer_namespace> spec: acme: preferredChain: "" privateKeySecretRef: name: <secret_private_key>2 server: https://acme-staging-v02.api.letsencrypt.org/directory3 solvers: - dns01: cloudDNS: project: <gcp_project_id>4 다음 명령을 실행하여
Issuer오브젝트를 생성합니다.$ oc create -f issuer.yaml