IP로 설치된 Private-Registry(harbor) 도메인 수동 적용
가정
Private Registry, Control plane, Worker nodes는
Ubuntu20.04환경에서 구성됩니다.쿠버네티스 버전은
v1.26입니다.이미지 레지스트리 주소를
192.168.77.154에서regi.acornsoft.io로 변경합니다.
192.168.77.154
regi.acornsoft.io
Private Registry 작업
Private Registry IP 변경 및 디렉토리 생성
openssl.conf파일에 도메인을 추가합니다.
$ sudo vi /var/lib/cubectl/cert/openssl.conf# 예시
[ alt_names_registry ]
DNS.1 = localhost
DNS.2 = registry
DNS.3 = regi.acornsoft.io
IP.1 = 127.0.0.1
IP.2 = 192.168.77.154도메인 디렉토리를 생성합니다.
Private Registry 설정 파일 변경
harbor.yml의 hostname을 IP에서 도메인으로 변경합니다.
변경사항 반영
install.sh 스크립트를 실행하여 변경 사항을 적용합니다.
install.sh 스크립트를 실행하는 대신 harbor 환경변수를 수정하고 harbor를 재시작해도 변경사항이 반영됩니다.
Node 작업
공통 작업(Control plane, Worker nodes)
Private Registry IP 변경사항을 node에 반영
/etc/containerd/certs.d에 도메인 디렉토리를 생성한 후,/etc/containerd/certs.d/192.168.77.154/hosts.toml파일을 복사합니다.
/etc/containerd/certs.d/regi.acornsoft.io/hosts.toml의 IP를 도메인으로 변경합니다.
/etc/containerd/config.toml의 IP를 도메인으로 변경합니다.
containerd를 재시작합니다.
IP 인증서는 더이상 사용하지 않으므로
hosts.toml파일에서ca라인을 삭제합니다.
Addon, Coredns, Static Pods 및 기타 yaml파일에 대한 IP 주소를 도메인으로 변경합니다.
패키지 저장소 주소를 도메인으로 변경합니다.
/etc/docker/certs.d/에 도메인 디렉토리를 생성합니다.
Control-plane 추가 작업
control-plane 에서는 calico와 metrics server를 업데이트하는 작업을 추가로 해줍니다.
kube-proxy daemonset 이미지 주소를 도메인으로 변경합니다.
coredns deployment 이미지 주소를 도메인으로 변경합니다.
kubelet을 재시작해줍니다.
확인
컨테이너 이미지를 확인합니다. 이미지가 모두 올라오기까지 몇 분 소요될 수 있습니다.
참고: Private Registry IP를 새로운 서버의 IP로 변경하는 경우에는 cubectl update 명령서를 사용하십시오.
Last updated