2.5. 미러 레지스트리를 위한 클러스터 구성
이미지를 생성하고 미러 레지스트리에 미러링한 후에는 포드가 미러 레지스트리에서 이미지를 가져올 수 있도록 클러스터를 수정해야 합니다.
다음을 수행해야 합니다.
- 글로벌 풀 시크릿에 미러 레지스트리 자격 증명을 추가합니다.
- 클러스터에 미러 레지스트리 서버 인증서를 추가합니다.
미러 레지스트리를 소스 레지스트리와 연결하는
ImageContentSourcePolicy
사용자 정의 리소스(ICSP)를 만듭니다.클러스터 글로벌 풀 시크릿에 미러 레지스트리 자격 증명을 추가합니다.
oc set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=<pull_secret_location>
$ oc set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=<pull_secret_location>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 새 풀 시크릿 파일의 경로를 제공합니다.
예를 들면 다음과 같습니다.
oc set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=.mirrorsecretconfigjson
$ oc set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=.mirrorsecretconfigjson
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터의 노드에 CA 서명 미러 레지스트리 서버 인증서를 추가합니다.
미러 레지스트리에 대한 서버 인증서를 포함하는 구성 맵을 만듭니다.
oc create configmap <config_map_name> --from-file=<mirror_address_host>..<port>=$path/ca.crt -n openshift-config
$ oc create configmap <config_map_name> --from-file=<mirror_address_host>..<port>=$path/ca.crt -n openshift-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예를 들면 다음과 같습니다.
S oc create configmap registry-config --from-file=mirror.registry.com..443=/root/certs/ca-chain.cert.pem -n openshift-config
S oc create configmap registry-config --from-file=mirror.registry.com..443=/root/certs/ca-chain.cert.pem -n openshift-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow config 맵을 사용하여
image.config.openshift.io/cluster
사용자 정의 리소스(CR)를 업데이트합니다. OpenShift Container Platform은 이 CR에 대한 변경 사항을 클러스터의 모든 노드에 적용합니다.oc patch image.config.openshift.io/cluster --patch '{"spec":{"additionalTrustedCA":{"name":"<config_map_name>"}}}' --type=merge
$ oc patch image.config.openshift.io/cluster --patch '{"spec":{"additionalTrustedCA":{"name":"<config_map_name>"}}}' --type=merge
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예를 들면 다음과 같습니다.
oc patch image.config.openshift.io/cluster --patch '{"spec":{"additionalTrustedCA":{"name":"registry-config"}}}' --type=merge
$ oc patch image.config.openshift.io/cluster --patch '{"spec":{"additionalTrustedCA":{"name":"registry-config"}}}' --type=merge
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
온라인 레지스트리에서 미러 레지스트리로 컨테이너 풀 요청을 리디렉션하기 위해 ICSP를 만듭니다.
ImageContentSourcePolicy
사용자 지정 리소스를 만듭니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ICSP 객체를 생성합니다.
oc create -f registryrepomirror.yaml
$ oc create -f registryrepomirror.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
imagecontentsourcepolicy.operator.openshift.io/mirror-ocp created
imagecontentsourcepolicy.operator.openshift.io/mirror-ocp created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Container Platform은 이 CR에 대한 변경 사항을 클러스터의 모든 노드에 적용합니다.
미러 레지스트리에 대한 자격 증명, CA 및 ICSP가 추가되었는지 확인하세요.
노드에 로그인:
oc debug node/<node_name>
$ oc debug node/<node_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 디버그 쉘 내에서
/host
를 root 디렉터리로 설정합니다.chroot /host
sh-4.4# chroot /host
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 자격 증명을 확인하려면
config.json
파일을 확인하세요.cat /var/lib/kubelet/config.json
sh-4.4# cat /var/lib/kubelet/config.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
{"auths":{"brew.registry.redhat.io":{"xx=="},"brewregistry.stage.redhat.io":{"auth":"xxx=="},"mirror.registry.com:443":{"auth":"xx="}}}
{"auths":{"brew.registry.redhat.io":{"xx=="},"brewregistry.stage.redhat.io":{"auth":"xxx=="},"mirror.registry.com:443":{"auth":"xx="}}}
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 미러 레지스트리 및 인증 정보가 있는지 확인합니다.
certs.d
디렉토리로 변경cd /etc/docker/certs.d/
sh-4.4# cd /etc/docker/certs.d/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow certs.d
디렉토리에 있는 인증서를 나열하세요.ls
sh-4.4# ls
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
image-registry.openshift-image-registry.svc.cluster.local:5000 image-registry.openshift-image-registry.svc:5000 mirror.registry.com:443
image-registry.openshift-image-registry.svc.cluster.local:5000 image-registry.openshift-image-registry.svc:5000 mirror.registry.com:443
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 미러 레지스트리가 목록에 있는지 확인하세요.
ICSP가
registries.conf
파일에 미러 레지스트리를 추가했는지 확인하세요.cat /etc/containers/registries.conf
sh-4.4# cat /etc/containers/registries.conf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow registry.mirror
매개변수는 원본 레지스트리보다 미러 레지스트리가 먼저 검색된다는 것을 나타냅니다.노드를 종료합니다.
exit
sh-4.4# exit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow