9.10. Red Hat OpenShift용 cert-manager Operator를 Istio-CSR과 통합
Red Hat OpenShift용 cert-manager Operator에 대한 Istio-CSR 통합은 기술 미리 보기 기능에 불과합니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
Red Hat OpenShift용 cert-manager Operator는 Red Hat OpenShift Service Mesh 또는 Istio에서 워크로드 및 제어 플레인 구성 요소의 보안을 강화하는 지원을 제공합니다. 여기에는 cert-manager 발급자를 사용하여 서명, 전달 및 갱신되는 상호 TLS(mTLS)를 활성화하는 인증서에 대한 지원이 포함됩니다. Red Hat OpenShift 관리형 Istio-CSR 에이전트용 cert-manager Operator를 사용하여 Istio 워크로드와 제어 플레인 구성요소를 보호할 수 있습니다.
이 Istio-CSR 통합을 통해 Istio는 이제 Red Hat OpenShift용 cert-manager 운영자로부터 인증서를 얻을 수 있어 보안 및 인증서 관리가 간소화됩니다.
9.10.1. Red Hat OpenShift용 cert-manager Operator를 통한 Istio-CSR 에이전트 설치 링크 복사링크가 클립보드에 복사되었습니다!
9.10.1.1. Istio-CSR 기능 활성화 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift용 cert-manager Operator에서 Istio-CSR 기능을 활성화하려면 이 절차를 사용하세요.
사전 요구 사항
-
cluster-admin
역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
프로세스
다음 명령을 실행하여 Red Hat OpenShift용 cert-manager Operator에 대한 배포를 업데이트하여 구성 맵을 사용합니다.
oc -n cert-manager-operator patch subscription openshift-cert-manager-operator --type='merge' -p '{"spec":{"config":{"env":[{"name":"UNSUPPORTED_ADDON_FEATURES","value":"IstioCSR=true"}]}}}'
$ oc -n cert-manager-operator patch subscription openshift-cert-manager-operator --type='merge' -p '{"spec":{"config":{"env":[{"name":"UNSUPPORTED_ADDON_FEATURES","value":"IstioCSR=true"}]}}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 배포가 완료되었는지 확인하세요.
oc rollout status deployment/cert-manager-operator-controller-manager -n cert-manager-operator
$ oc rollout status deployment/cert-manager-operator-controller-manager -n cert-manager-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
deployment "cert-manager-operator-controller-manager" successfully rolled out
deployment "cert-manager-operator-controller-manager" successfully rolled out
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.10.1.2. Istio-CSR 에이전트에 대한 루트 CA 발급자 생성 링크 복사링크가 클립보드에 복사되었습니다!
이 절차를 사용하여 Istio-CSR 에이전트에 대한 루트 CA 발급자를 만듭니다.
ACME 발급자는 지원되지 않으므로, 다른 지원되는 발급자를 사용할 수 있습니다. 자세한 내용은 "Red Hat OpenShift 발급자 공급자를 위한 cert-manager 운영자"를 참조하세요.
프로세스
발급자
및인증서
객체를 정의하는 YAML 파일을 만듭니다.issuer.yaml
파일 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 발급자가 생성되어 사용할 준비가 되었는지 확인하세요.
oc get issuer istio-ca -n <istio_project_name>
$ oc get issuer istio-ca -n <istio_project_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY AGE istio-ca True 3m
NAME READY AGE istio-ca True 3m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.10.1.3. IstioCSR 사용자 정의 리소스 생성 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift용 cert-manager Operator를 통해 Istio-CSR 에이전트를 설치하려면 이 절차를 따르세요.
사전 요구 사항
-
cluster-admin
권한이 있는 클러스터에 액세스할 수 있습니다. - Istio-CSR 기능을 활성화했습니다.
Istio-CSR 에이전트에 대한 인증서를 생성하는 데 필요한
Issuer
또는ClusterIssuer
리소스를 생성했습니다.참고발급자
리소스를 사용하는 경우 Red Hat OpenShift Service Mesh 또는Istiod
네임스페이스에발급자
및인증서
리소스를 만듭니다. 인증서 요청은 동일한 네임스페이스에서 생성되며, 역할 기반 액세스 제어(RBAC)가 이에 따라 구성됩니다.
프로세스
다음 명령을 실행하여 Istio-CSR을 설치하기 위한 새 프로젝트를 만듭니다. Istio-CSR을 설치하기 위한 기존 프로젝트가 있는 경우 이 단계를 건너뜁니다.
oc new-project <istio_csr_project_name>
$ oc new-project <istio_csr_project_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat OpenShift의 cert-manager Operator가 관리하는 Istio-CSR 에이전트가 Istio 워크로드와 제어 평면 인증서 서명 요청을 처리할 수 있도록
IstioCSR
사용자 정의 리소스를 생성합니다.참고한 번에 하나의
IstioCSR
사용자 정의 리소스(CR)만 지원됩니다. 여러 개의IstioCSR
CR이 생성된 경우 하나만 활성화됩니다.IstioCSR
의상태
하위 리소스를 사용하여 리소스가 처리되지 않았는지 확인합니다.-
여러 개의
IstioCSR
CR이 동시에 생성되는 경우 아무것도 처리되지 않습니다. -
여러 개의
IstioCSR
CR이 순차적으로 생성되는 경우 첫 번째 CR만 처리됩니다. -
새로운 요청이 거부되는 것을 방지하려면 처리되지 않은
IstioCSR
CR을 삭제하세요. -
Operator는
IstioCSR
에 대해 생성된 객체를 자동으로 제거하지 않습니다. 활성IstioCSR
리소스가 삭제되고 이전 배포를 제거하지 않고 다른 네임스페이스에 새 리소스가 생성되는 경우 여러istio-csr
배포가 활성 상태로 유지될 수 있습니다. 이런 동작은 권장되지 않으며 지원되지도 않습니다.
IstioCSR
객체를 정의하는 YAML 파일을 만듭니다.IstioCSR
CR 예시Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
IstioCSR
사용자 정의 리소스를 만듭니다.oc create -f IstioCSR.yaml
$ oc create -f IstioCSR.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
여러 개의
검증
다음 명령을 실행하여 Istio-CSR 배포가 준비되었는지 확인하세요.
oc get deployment -n <istio_csr_project_name>
$ oc get deployment -n <istio_csr_project_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY UP-TO-DATE AVAILABLE AGE cert-manager-istio-csr 1/1 1 1 24s
NAME READY UP-TO-DATE AVAILABLE AGE cert-manager-istio-csr 1/1 1 1 24s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Istio-CSR 포드가 실행 중인지 확인하세요.
oc get pod -n <istio_csr_project_name>
$ oc get pod -n <istio_csr_project_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY STATUS RESTARTS AGE cert-manager-istio-csr-5c979f9b7c-bv57w 1/1 Running 0 45s
NAME READY STATUS RESTARTS AGE cert-manager-istio-csr-5c979f9b7c-bv57w 1/1 Running 0 45s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Istio-CSR 포드가 로그에 오류를 보고하지 않는지 확인하세요.
oc -n <istio_csr_project_name> logs <istio_csr_pod_name>
$ oc -n <istio_csr_project_name> logs <istio_csr_pod_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Red Hat OpenShift Pod용 cert-manager Operator가 오류를 보고하지 않는지 확인하세요.
oc -n cert-manager-operator logs <cert_manager_operator_pod_name>
$ oc -n cert-manager-operator logs <cert_manager_operator_pod_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.10.2. Red Hat OpenShift용 cert-manager Operator가 관리하는 Istio-CSR 에이전트 제거 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift용 cert-manager Operator가 관리하는 Istio-CSR 에이전트를 제거하려면 이 절차를 사용하세요.
사전 요구 사항
-
cluster-admin
권한이 있는 클러스터에 액세스할 수 있습니다. - Istio-CSR 기능을 활성화했습니다.
-
IstioCSR
사용자 정의 리소스를 생성했습니다.
프로세스
다음 명령을 실행하여
IstioCSR
사용자 정의 리소스를 제거합니다.oc -n <istio_csr_project_name> delete istiocsrs.operator.openshift.io default
$ oc -n <istio_csr_project_name> delete istiocsrs.operator.openshift.io default
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 관련 리소스를 제거합니다.
중요Red Hat OpenShift Service Mesh 또는 Istio 구성 요소의 중단을 방지하려면 다음 리소스를 제거하기 전에 구성 요소가 Istio-CSR 서비스 또는 Istio에 대해 발급된 인증서를 참조하지 않는지 확인하세요.
다음 명령을 실행하여 클러스터 범위 리소스를 나열하고 나중에 참조할 수 있도록 나열된 리소스의 이름을 저장합니다.
oc get clusterrolebindings,clusterroles -l "app=cert-manager-istio-csr,app.kubernetes.io/name=cert-manager-istio-csr"
$ oc get clusterrolebindings,clusterroles -l "app=cert-manager-istio-csr,app.kubernetes.io/name=cert-manager-istio-csr"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Istio-csr에 배포된 네임스페이스의 리소스를 나열하고 나중에 참조할 수 있도록 나열된 리소스의 이름을 저장합니다.
oc get certificate,deployments,services,serviceaccounts -l "app=cert-manager-istio-csr,app.kubernetes.io/name=cert-manager-istio-csr" -n <istio_csr_project_name>
$ oc get certificate,deployments,services,serviceaccounts -l "app=cert-manager-istio-csr,app.kubernetes.io/name=cert-manager-istio-csr" -n <istio_csr_project_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Red Hat OpenShift Service Mesh 또는 Istio가 배포한 네임스페이스의 리소스를 나열하고 나중에 참조할 수 있도록 나열된 리소스의 이름을 저장합니다.
oc get roles,rolebindings -l "app=cert-manager-istio-csr,app.kubernetes.io/name=cert-manager-istio-csr" -n <istio_csr_project_name>
$ oc get roles,rolebindings -l "app=cert-manager-istio-csr,app.kubernetes.io/name=cert-manager-istio-csr" -n <istio_csr_project_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이전 단계에 나열된 각 리소스에 대해 다음 명령을 실행하여 리소스를 삭제합니다.
oc -n <istio_csr_project_name> delete <resource_type>/<resource_name>
$ oc -n <istio_csr_project_name> delete <resource_type>/<resource_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 관련된 모든 리소스가 삭제될 때까지 이 과정을 반복합니다.
9.10.3. Istio-CSR 기능이 활성화된 Red Hat OpenShift용 cert-manager Operator 업그레이드 링크 복사링크가 클립보드에 복사되었습니다!
Istio-CSR TechPreview 기능 게이트가 활성화되면 Operator를 업그레이드할 수 없습니다. 다음 사용 가능한 버전을 사용하려면 Red Hat OpenShift용 cert-manager Operator를 제거하고 모든 Istio-CSR 리소스를 제거한 후 다시 설치해야 합니다.