And Brain said,
CI/CD Argonautica - Harbor, 항구 본문
CI/CD Argonautica
Docker, 선박
Kubernetes, 조타수 Harbor, 항구
Helm, 타륜
Istio, 돛
Jenkins, 선장
ArgoCD, 출항
1장/ Loki, Trickster
Troubleshooting
Harbor는 오픈소스 컨테이너 이미지 레지스트리로 우리 여행의 항구 역할을 해줄 것입니다. 설치는 아래 링크에서 하시면 됩니다.
https://theworldaswillandidea.tistory.com/185
우리는 Kubernetes(이하, K8s) 클러스터에서 Harbor 에 저장된 이미지를 가져올 것입니다. K8s는 기본적으로 HTTPS 통신을 하기 때문에 우리는 Harbor에 TLS 인증서를 사용하여, HTTPS 연결이 가능하도록 암호화할 것입니다. 물론, 개발 환경이기 때문에 CA 인증서를 사용하진 않고, 자체 서명 인증서를 생성할 것입니다.
openssl req -x509 -nodes -newkey rsa:4096 -keyout harbor-key.pem -out harbor-cert.pem -days 365
이 명령어를 사용하여, 여러분만의 자체 서명 인증서를 만들 수 있을 것입니다.
자체 서명 인증서까지 생성을 했다면,
# http related config
http:
# port for http, default is 80. If https enabled, this port will redirect to https port
port: 80
# https related config
https:
# https port for harbor, default is 443
port: 443
# The path of cert and key files for nginx
certificate: /path/harbor/harbor-cert.pem
private_key: /path/harbor/harbor-key.pem
harbor 구성 파일에서 이렇게 https 설정을 해주신 후,
sudo bash ./install.sh
다시 설치해주시면 됩니다.
Harbor 가 HTTPS 연결이 가능한 것을 확인하실 수 있습니다. 그럼 이제 Harbor의 인증서를 openssl 을 사용하여 가져옵시다.
openssl s_client -connect harbor_IP:443 -showcerts < /dev/null 2>/dev/null | openssl x509 -outform PEM > myregistry.crt
이 명령어를 통해 myregistry.crt 파일로 레지스트리의 인증서를 저장합니다. 저장된 인증서는 각 노드의 신뢰할 수 있는 저장소에 추가해야합니다. 모든 노드에 추가해야 합니다.
sudo cp myregistry.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
이후, 서비스들을 재시작 해줍니다.
sudo systemctl restart docker
sudo systemctl restart containerd
sudo systemctl restart kubelet
docker login 명령어를 통해 문제가 없는지 확인해봅니다. 저는 기존에 로그인을 했던 상태기 때문에, 접속 정보없이 로그인이 가능했지만, 기본적으로 Username 과 Password를 물어볼 것이니, 알맞게 입력해주시면 됩니다.
다음 시간에, Helm과 함께 본격적인, 출항을 해봅시다.
Thanks for watching, Have a nice day.
'IT > CICD Argonautica' 카테고리의 다른 글
CI/CD Argonautica - Istio, 돛 (0) | 2023.09.14 |
---|---|
CI/CD Argonautica - Helm, 타륜 (0) | 2023.09.12 |
CI/CD Argonautica - Kubernetes, 조타수 - 실습 [3] (0) | 2023.08.19 |
CI/CD Argonautica - Kubernetes, 조타수 - 실습 [2] (4) | 2023.08.12 |
CI/CD Argonautica - Kubernetes, 조타수 - 실습 [1] (0) | 2023.08.05 |