1.3. 미러링을 위한 클러스터 준비
클러스터의 연결을 해제하기 전에 연결이 끊긴 클러스터의 모든 노드에서 연결할 수 있는 미러 레지스트리에 이미지를 미러링하거나 복사해야 합니다. 이미지를 미러링하려면 다음을 통해 클러스터를 준비해야 합니다.
- 호스트의 신뢰할 수 있는 CA 목록에 미러 레지스트리 인증서를 추가합니다.
-
cloud.openshift.com
토큰에서 이미지 가져오기 보안이 포함된.dockerconfigjson
파일을 생성합니다.
프로세스
이미지 미러링을 허용하는 인증 정보 구성:
미러 레지스트리의 CA 인증서를 간단한 PEM 또는 DER 파일 형식으로 신뢰할 수 있는 CA 목록에 추가합니다. 예를 들면 다음과 같습니다.
$ cp </path/to/cert.crt> /usr/share/pki/ca-trust-source/anchors/
- 다음과 같습니다.,
</path/to/cert.crt>
- 로컬 파일 시스템의 인증서 경로를 지정합니다.
- 다음과 같습니다.,
CA 신뢰를 업데이트합니다. 예를 들어 Linux에서는 다음과 같습니다.
$ update-ca-trust
글로벌 가져오기 보안에서
.dockerconfigjson
파일을 추출합니다.$ oc extract secret/pull-secret -n openshift-config --confirm --to=.
출력 예
.dockerconfigjson
.dockerconfigjson
파일을 편집하여 미러 레지스트리 및 인증 자격 증명을 추가하고 새 파일로 저장합니다.{"auths":{"<local_registry>": {"auth": "<credentials>","email": "you@example.com"}}},"<registry>:<port>/<namespace>/":{"auth":"<token>"}}}
다음과 같습니다.
<local_registry>
- 미러 레지스트리가 콘텐츠를 제공하는 데 사용하는 레지스트리 도메인 이름과 포트(선택 사항)를 지정합니다.
auth
- 미러 레지스트리의 base64로 인코딩된 사용자 이름 및 암호를 지정합니다.
<registry>:<port>/<namespace>
- 미러 레지스트리 세부 정보를 지정합니다.
<token>
미러 레지스트리의 base64로 인코딩된
username:password
를 지정합니다.예를 들면 다음과 같습니다.
$ {"auths":{"cloud.openshift.com":{"auth":"b3BlbnNoaWZ0Y3UjhGOVZPT0lOMEFaUjdPUzRGTA==","email":"user@example.com"}, "quay.io":{"auth":"b3BlbnNoaWZ0LXJlbGVhc2UtZGOVZPT0lOMEFaUGSTd4VGVGVUjdPUzRGTA==","email":"user@example.com"}, "registry.connect.redhat.com"{"auth":"NTE3MTMwNDB8dWhjLTFEZlN3VHkxOSTd4VGVGVU1MdTpleUpoYkdjaUailA==","email":"user@example.com"}, "registry.redhat.io":{"auth":"NTE3MTMwNDB8dWhjLTFEZlN3VH3BGSTd4VGVGVU1MdTpleUpoYkdjaU9fZw==","email":"user@example.com"}, "registry.svc.ci.openshift.org":{"auth":"dXNlcjpyWjAwWVFjSEJiT2RKVW1pSmg4dW92dGp1SXRxQ3RGN1pwajJhN1ZXeTRV"},"my-registry:5000/my-namespace/":{"auth":"dXNlcm5hbWU6cGFzc3dvcmQ="}}}