3.6. 다이제스트로 이미지 태그 확인
Knative Serving 컨트롤러가 컨테이너 레지스트리에 액세스할 수 있는 경우 서비스 버전을 생성할 때 Knative Serving에서 이미지 태그를 다이제스트로 확인합니다. 이를 tag-to-digest resolution 이라고 하며 배포에 대한 일관성을 제공하는 데 도움이 됩니다.
3.6.1. tag-to-digest 해결
OpenShift Container Platform의 컨테이너 레지스트리에 대한 컨트롤러 액세스 권한을 부여하려면 보안을 생성한 다음 컨트롤러 사용자 정의 인증서를 구성해야 합니다. KnativeServing
CR(사용자 정의 리소스)에서 controller-custom-certs
사양을 수정하여 컨트롤러 사용자 정의 인증서를 구성할 수 있습니다. 보안은 KnativeServing
CR과 동일한 네임스페이스에 있어야 합니다.
KnativeServing
CR에 보안이 포함되어 있지 않은 경우 이 설정은 기본적으로 PKI(공개 키 인프라)를 사용합니다. PKI를 사용하면 클러스터 전체 인증서가 config-service-sa
구성 맵을 사용하여 Knative Serving 컨트롤러에 자동으로 삽입됩니다. OpenShift Serverless Operator는 config-service-sa
구성 맵을 클러스터 전체 인증서로 채우고 구성 맵을 컨트롤러의 볼륨으로 마운트합니다.
3.6.1.1. 시크릿을 사용하여 tag-to-digest 확인 구성
controller-custom-certs
사양에서 Secret
유형을 사용하는 경우 보안이 보안 볼륨으로 마운트됩니다. Knative 구성 요소는 보안에 필요한 인증서가 있다고 가정하면 시크릿을 직접 사용합니다.
사전 요구 사항
- OpenShift Container Platform에 대한 클러스터 관리자 권한이 있거나 AWS 또는 OpenShift Dedicated의 Red Hat OpenShift Service에 대한 클러스터 또는 전용 관리자 권한이 있습니다.
- OpenShift Serverless Operator 및 Knative Serving을 클러스터에 설치했습니다.
프로세스
보안을 생성합니다.
명령 예
$ oc -n knative-serving create secret generic custom-secret --from-file=<secret_name>.crt=<path_to_certificate>
KnativeServing
CR(사용자 정의 리소스)에서Secret
유형을 사용하도록controller-custom-certs
사양을 구성합니다.KnativeServing CR의 예
apiVersion: operator.knative.dev/v1beta1 kind: KnativeServing metadata: name: knative-serving namespace: knative-serving spec: controller-custom-certs: name: custom-secret type: Secret