9.5. CertManager 사용자 정의 리소스를 사용하여 cert-manager Operator 사용자 정의
Red Hat OpenShift용 cert-manager Operator를 설치한 후 CertManager
CR(사용자 정의 리소스)을 구성하여 다음 작업을 수행할 수 있습니다.
- cert-manager 컨트롤러, CA 인젝터, Webhook와 같은 cert-manager 구성 요소의 동작을 수정하도록 인수를 구성합니다.
- 컨트롤러 Pod의 환경 변수를 설정합니다.
- CPU 및 메모리 사용량을 관리하기 위해 리소스 요청 및 제한을 정의합니다.
- 클러스터에서 Pod가 실행되는 위치를 제어하도록 스케줄링 규칙을 구성합니다.
CertManager CR YAML 파일의 예
지원되지 않는 인수를 재정의하려면 CertManager
리소스에 spec.unsupportedConfigOverrides
섹션을 추가할 수 있지만 spec.unsupportedConfigOverrides
를 사용하는 것은 지원되지 않습니다.
9.5.1. CertManager 사용자 정의 리소스의 필드에 대한 설명 링크 복사링크가 클립보드에 복사되었습니다!
CertManager
CR(사용자 정의 리소스)을 사용하여 cert-manager Operator for Red Hat OpenShift의 다음 핵심 구성 요소를 구성할 수 있습니다.
-
cert-manager 컨트롤러:
spec.controllerConfig
필드를 사용하여 cert-manager 컨트롤러 Pod를 구성할 수 있습니다. -
Webhook:
spec.webhookConfig
필드를 사용하여 검증 및 변경 요청을 처리하는 Webhook Pod를 구성할 수 있습니다. -
CA injector:
spec.cainjectorConfig
필드를 사용하여 CA 인젝터 Pod를 구성할 수 있습니다.
9.5.1.1. cert-manager 구성 요소에 대한 CertManager CR의 구성 가능한 일반적인 필드 링크 복사링크가 클립보드에 복사되었습니다!
다음 표에는 CertManager
CR의 spec.controllerConfig
,spec.webhookConfig
및 spec.cainjectorConfig
섹션에서 구성할 수 있는 일반 필드가 나열되어 있습니다.
필드 | 유형 | 설명 |
---|---|---|
|
| cert-manager 구성 요소에 대해 지원되는 인수를 덮어쓸 수 있습니다. |
|
| cert-manager 컨트롤러에 대해 지원되는 환경 변수를 덮어쓸 수 있습니다. 이 필드는 cert-manager 컨트롤러 구성 요소에 대해서만 지원됩니다. |
|
| cert-manager 구성 요소에 대한 CPU 및 메모리 제한을 구성할 수 있습니다. |
|
| cert-manager 구성 요소에 대한 Pod 예약 제약 조건을 구성할 수 있습니다. |
9.5.1.2. cert-manager 구성 요소에 대한 덮어쓰기 가능 인수 링크 복사링크가 클립보드에 복사되었습니다!
CertManager
CR의 spec.controllerConfig
,spec.webhookConfig
및 spec.cainjectorConfig
섹션에서 cert-manager 구성 요소에 대해 덮어쓸 수 있는 인수를 구성할 수 있습니다.
다음 표에서는 cert-manager 구성 요소에 대해 덮어쓸 수 있는 인수를 설명합니다.
인수 | Component | 설명 |
---|---|---|
| 컨트롤러 |
DNS-01 자체 검사를 쿼리할 쉼표로 구분된 이름 서버 목록을 제공합니다. 네임서버는 < 참고 DoH(DNS over HTTPS)는 cert-manager Operator for Red Hat OpenShift 버전 1.13.0 이상에서만 지원됩니다. |
| 컨트롤러 | 해당 도메인과 연결된 권한 있는 이름 서버를 확인하는 대신 재귀 이름 서버만 사용하도록 지정합니다. |
| 컨트롤러 |
쉼표로 구분된 < |
| 컨트롤러 |
지표 끝점의 호스트 및 포트를 지정합니다. 기본값은 |
| 컨트롤러 | 이 인수를 사용하여 앰비언트 인증 정보를 사용하여 DNS-01 문제를 해결하기 위해 ACME 발행자를 구성할 수 있습니다. |
| 컨트롤러 | 이 인수는 인증서 리소스를 TLS 인증서가 저장된 보안의 소유자로 설정합니다. 자세한 내용은 "인증서 제거 시 자동으로 TLS 시크릿 삭제"를 참조하십시오. |
| 컨트롤러 |
ACME HTTP-01 솔버 Pod의 최대 CPU 제한을 정의합니다. 기본값은 |
| 컨트롤러 |
ACME HTTP-01 솔버 Pod의 최대 메모리 제한을 정의합니다. 기본값은 |
| 컨트롤러 |
ACME HTTP-01 솔버 Pod의 최소 CPU 요청을 정의합니다. 기본값은 |
| 컨트롤러 |
ACME HTTP-01 솔버 Pod에 대한 최소 메모리 요청을 정의합니다. 기본값은 |
| 컨트롤러, Webhook, CA 인젝터 | 로그 수준 상세 수준을 지정하여 로그 메시지의 상세 수준을 확인합니다. |
9.5.1.3. cert-manager 컨트롤러에 대한 Overridable 환경 변수 링크 복사링크가 클립보드에 복사되었습니다!
CertManager
CR의 spec.controllerConfig.overrideEnv
필드에서 cert-manager 컨트롤러에 대해 덮어쓸 수 있는 환경 변수를 구성할 수 있습니다.
다음 표에서는 cert-manager 컨트롤러에 대해 덮어쓸 수 있는 환경 변수를 설명합니다.
환경 변수 | 설명 |
---|---|
| 발신 HTTP 요청에 대한 프록시 서버입니다. |
| 발신 HTTPS 요청을 위한 프록시 서버입니다. |
| 프록시를 바이패스하는 쉼표로 구분된 호스트 목록입니다. |
9.5.1.4. cert-manager 구성 요소에 대한 Overridable 리소스 매개변수 링크 복사링크가 클립보드에 복사되었습니다!
CertManager
CR의 spec.controllerConfig
,spec.webhookConfig
및 spec.cainjectorConfig
섹션에서 cert-manager 구성 요소에 대한 CPU 및 메모리 제한을 구성할 수 있습니다.
다음 표에서는 cert-manager 구성 요소에 대해 덮어쓸 수 있는 리소스 매개변수를 설명합니다.
필드 | 설명 |
---|---|
| 구성 요소 Pod에서 사용할 수 있는 최대 CPU 양을 정의합니다. |
| 구성 요소 Pod에서 사용할 수 있는 최대 메모리 양을 정의합니다. |
| 구성 요소 Pod에 대해 스케줄러에서 요청하는 최소 CPU 양을 정의합니다. |
| 스케줄러에서 구성 요소 Pod에 대해 요청하는 최소 메모리 양을 정의합니다. |
9.5.1.5. cert-manager 구성 요소에 대한 Overridable 스케줄링 매개변수 링크 복사링크가 클립보드에 복사되었습니다!
CertManager
CR의 spec.controllerConfig
,spec.webhookConfig
및 spec.cainjectorConfig
섹션에서 cert-manager 구성 요소에 대한 Pod 예약 제한을 구성할 수 있습니다.
다음 표에서는 cert-manager 구성 요소에 대한 Pod 예약 매개변수를 설명합니다.
필드 | 설명 |
---|---|
| Pod를 특정 노드로 제한하는 키-값 쌍입니다. |
| 테인트된 노드에서 Pod를 예약하기 위한 허용 오차 목록입니다. |
9.5.2. cert-manager Operator API에서 환경 변수를 재정의하여 cert-manager 사용자 정의 링크 복사링크가 클립보드에 복사되었습니다!
CertManager
리소스에 spec.controllerConfig
섹션을 추가하여 cert-manager Operator for Red Hat OpenShift에 대해 지원되는 환경 변수를 덮어쓸 수 있습니다.
사전 요구 사항
-
cluster-admin
역할의 사용자로 OpenShift Container Platform 클러스터에 액세스할 수 있습니다.
프로세스
다음 명령을 실행하여
CertManager
리소스를 편집합니다.oc edit certmanager cluster
$ oc edit certmanager cluster
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 덮어쓰기 인수가 포함된
spec.controllerConfig
섹션을 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고덮어쓸 수 있는 환경 변수에 대한 자세한 내용은 CertManager 사용자 정의 리소스의 "CertManager 사용자 정의 리소스의 필드 설명"의 "인증 관리자 구성 요소에 대한 개요 가능 환경 변수"를 참조하십시오.
- 변경 사항을 저장하고 텍스트 편집기를 종료하여 변경 사항을 적용합니다.
검증
다음 명령을 실행하여 cert-manager 컨트롤러 Pod가 재배포되었는지 확인합니다.
oc get pods -l app.kubernetes.io/name=cert-manager -n cert-manager
$ oc get pods -l app.kubernetes.io/name=cert-manager -n cert-manager
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY STATUS RESTARTS AGE cert-manager-bd7fbb9fc-wvbbt 1/1 Running 0 39s
NAME READY STATUS RESTARTS AGE cert-manager-bd7fbb9fc-wvbbt 1/1 Running 0 39s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 cert-manager Pod에 대한 환경 변수가 업데이트되었는지 확인합니다.
oc get pod <redeployed_cert-manager_controller_pod> -n cert-manager -o yaml
$ oc get pod <redeployed_cert-manager_controller_pod> -n cert-manager -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.3. cert-manager Operator API에서 인수를 재정의하여 cert-manager 사용자 정의 링크 복사링크가 클립보드에 복사되었습니다!
CertManager
리소스에 spec.controllerConfig
섹션을 추가하여 cert-manager Operator에 대해 지원되는 인수를 덮어쓸 수 있습니다.
사전 요구 사항
-
cluster-admin
역할의 사용자로 OpenShift Container Platform 클러스터에 액세스할 수 있습니다.
프로세스
다음 명령을 실행하여
CertManager
리소스를 편집합니다.oc edit certmanager cluster
$ oc edit certmanager cluster
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 덮어쓰기 인수가 포함된
spec.controllerConfig
섹션을 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 신뢰할 수 있는 문제에 대한 자세한 내용은 CertManager 사용자 정의 리소스의 "인증 관리자 구성 요소 설명"의 "인증 관리자 구성 요소에 대한 설명"을 참조하십시오.
- 변경 사항을 저장하고 텍스트 편집기를 종료하여 변경 사항을 적용합니다.
검증
다음 명령을 실행하여 cert-manager Pod에 대한 인수가 업데이트되었는지 확인합니다.
oc get pods -n cert-manager -o yaml
$ oc get pods -n cert-manager -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.4. 인증서 제거 시 자동으로 TLS 시크릿 삭제 링크 복사링크가 클립보드에 복사되었습니다!
CertManager
리소스에 spec.controllerConfig
섹션을 추가하여 cert-manager Operator for Red Hat OpenShift에 대해 --enable-certificate-owner-ref
플래그를 활성화할 수 있습니다. --enable-certificate-owner-ref
플래그는 인증서 리소스를 TLS 인증서가 저장된 보안의 소유자로 설정합니다.
cert-manager Operator for Red Hat OpenShift를 설치 제거하거나 클러스터에서 인증서 리소스를 삭제하면 보안이 자동으로 삭제됩니다. 이로 인해 인증서 TLS 보안이 사용되는 위치에 따라 네트워크 연결 문제가 발생할 수 있습니다.
사전 요구 사항
-
cluster-admin
역할의 사용자로 OpenShift Container Platform 클러스터에 액세스할 수 있습니다. - Red Hat OpenShift용 cert-manager Operator 버전 1.12.0 이상이 설치되어 있어야 합니다.
프로세스
다음 명령을 실행하여
Certificate
오브젝트 및 해당 시크릿을 사용할 수 있는지 확인합니다.oc get certificate
$ oc get certificate
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY SECRET AGE certificate-from-clusterissuer-route53-ambient True certificate-from-clusterissuer-route53-ambient 8h
NAME READY SECRET AGE certificate-from-clusterissuer-route53-ambient True certificate-from-clusterissuer-route53-ambient 8h
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
CertManager
리소스를 편집합니다.oc edit certmanager cluster
$ oc edit certmanager cluster
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 덮어쓰기 인수가 포함된
spec.controllerConfig
섹션을 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 변경 사항을 저장하고 텍스트 편집기를 종료하여 변경 사항을 적용합니다.
검증
다음 명령을 실행하여 cert-manager 컨트롤러 Pod에 대해
--enable-certificate-owner-ref
플래그가 업데이트되었는지 확인합니다.oc get pods -l app.kubernetes.io/name=cert-manager -n cert-manager -o yaml
$ oc get pods -l app.kubernetes.io/name=cert-manager -n cert-manager -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.5. cert-manager 구성 요소에 대한 CPU 및 메모리 제한 덮어쓰기 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift용 cert-manager Operator를 설치한 후 cert-manager 컨트롤러, CA 인젝터 및 Webhook와 같은 cert-manager 구성 요소에 대한 cert-manager Operator for Red Hat OpenShift API에서 CPU 및 메모리 제한을 구성할 수 있습니다.
사전 요구 사항
-
cluster-admin
역할의 사용자로 OpenShift Container Platform 클러스터에 액세스할 수 있습니다. - Red Hat OpenShift용 cert-manager Operator 버전 1.12.0 이상이 설치되어 있어야 합니다.
프로세스
다음 명령을 입력하여 cert-manager 컨트롤러, CA 인젝터 및 Webhook의 배포를 사용할 수 있는지 확인합니다.
oc get deployment -n cert-manager
$ oc get deployment -n cert-manager
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY UP-TO-DATE AVAILABLE AGE cert-manager 1/1 1 1 53m cert-manager-cainjector 1/1 1 1 53m cert-manager-webhook 1/1 1 1 53m
NAME READY UP-TO-DATE AVAILABLE AGE cert-manager 1/1 1 1 53m cert-manager-cainjector 1/1 1 1 53m cert-manager-webhook 1/1 1 1 53m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow CPU 및 메모리 제한을 설정하기 전에 다음 명령을 입력하여 cert-manager 컨트롤러, CA 인젝터 및 Webhook의 기존 구성을 확인합니다.
oc get deployment -n cert-manager -o yaml
$ oc get deployment -n cert-manager -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cert-manager 컨트롤러, CA 인젝터 및 Webhook에 대한 CPU 및 메모리 제한을 구성하려면 다음 명령을 입력합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 덮어쓸 수 있는 리소스 매개변수에 대한 자세한 내용은 CertManager 사용자 정의 리소스의 "CertManager 사용자 정의 리소스의 필드 설명"의 "인증 관리자 구성 요소에 대한 리소스 매개변수"를 참조하십시오.
출력 예
certmanager.operator.openshift.io/cluster patched
certmanager.operator.openshift.io/cluster patched
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
cert-manager 구성 요소에 대해 CPU 및 메모리 제한이 업데이트되었는지 확인합니다.
oc get deployment -n cert-manager -o yaml
$ oc get deployment -n cert-manager -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.6. cert-manager 구성 요소에 대한 스케줄링 덮어쓰기 구성 링크 복사링크가 클립보드에 복사되었습니다!
cert-manager 컨트롤러, CA 인젝터, Webhook와 같은 cert-manager Operator for Red Hat OpenShift 구성 요소에 대해 cert-manager Operator for Red Hat OpenShift API에서 Pod 예약을 구성할 수 있습니다.
사전 요구 사항
-
cluster-admin
역할의 사용자로 OpenShift Container Platform 클러스터에 액세스할 수 있습니다. - Red Hat OpenShift용 cert-manager Operator 버전 1.15.0 이상을 설치했습니다.
프로세스
다음 명령을 실행하여
certmanager.operator
사용자 정의 리소스를 업데이트하여 원하는 구성 요소에 대한 Pod 예약 덮어쓰기를 구성합니다.controllerConfig
,webhookConfig
또는cainjectorConfig
섹션 아래의overrideScheduling
필드를 사용하여nodeSelector
및허용 오차
설정을 정의합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 덮어쓸 수 있는 스케줄링 매개변수에 대한 자세한 내용은 CertManager 사용자 정의 리소스의 "CertManager 사용자 정의 리소스의 필드 설명"에서 "인증 관리자 구성 요소에 대한 일반 예약 매개변수"를 참조하십시오.
검증
cert-manager
Pod의 Pod 예약 설정을 확인합니다.다음 명령을 실행하여
cert-manager
네임스페이스의 배포를 확인하여 올바른nodeSelector
및허용 오차
가 있는지 확인합니다.oc get pods -n cert-manager -o wide
$ oc get pods -n cert-manager -o wide
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES cert-manager-58d9c69db4-78mzp 1/1 Running 0 10m 10.129.0.36 ip-10-0-1-106.ec2.internal <none> <none> cert-manager-cainjector-85b6987c66-rhzf7 1/1 Running 0 11m 10.128.0.39 ip-10-0-1-136.ec2.internal <none> <none> cert-manager-webhook-7f54b4b858-29bsp 1/1 Running 0 11m 10.129.0.35 ip-10-0-1-106.ec2.internal <none> <none>
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES cert-manager-58d9c69db4-78mzp 1/1 Running 0 10m 10.129.0.36 ip-10-0-1-106.ec2.internal <none> <none> cert-manager-cainjector-85b6987c66-rhzf7 1/1 Running 0 11m 10.128.0.39 ip-10-0-1-136.ec2.internal <none> <none> cert-manager-webhook-7f54b4b858-29bsp 1/1 Running 0 11m 10.129.0.35 ip-10-0-1-106.ec2.internal <none> <none>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 배포에 적용되는
nodeSelector
및허용 오차
설정을 확인합니다.oc get deployments -n cert-manager -o jsonpath='{range .items[*]}{.metadata.name}{"\n"}{.spec.template.spec.nodeSelector}{"\n"}{.spec.template.spec.tolerations}{"\n\n"}{end}'
$ oc get deployments -n cert-manager -o jsonpath='{range .items[*]}{.metadata.name}{"\n"}{.spec.template.spec.nodeSelector}{"\n"}{.spec.template.spec.tolerations}{"\n\n"}{end}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 명령을 실행하여
cert-manager
네임스페이스에서 Pod 예약 이벤트를 확인합니다.oc get events -n cert-manager --field-selector reason=Scheduled
$ oc get events -n cert-manager --field-selector reason=Scheduled
Copy to Clipboard Copied! Toggle word wrap Toggle overflow