본문 바로가기
Harbor

Harbor HA 구성

by aws-evan 2024. 6. 28.
728x90

 

 

 

 

 

 

 

  • 구성도

 

 

helm repo add harbor https://helm.goharbor.io
helm fetch harbor/harbor --untar

 

 

  • 기본 설정
    •  Service Type 설정 
      • ingress", "clusterIP", "nodePort" or "loadBalancer" 선택
      • 설정 방법 : expose -> type 
    • externalURL 설정
      • 외부 접속 하가 위한 정보(http://192.168.x.x:Port)

 

 

  • Replicas 적용 대상
    • Core , jobservice , nginx, , portal, registry,
    • 제외 대상 : database, redis, trivy
      • statefulset으로 배포되는 방식
      • 데이터 일관성으로 인하여 3개는 helm yml에서만 제외

 

  • Replicas 수정
    • core -> replicas
    • jobservice -> replicas
    • nginx -> replicas
    • portal -> replicas
    • registry -> replicas

 

 

  • Replicas 상태

 

 

  • 볼륨 설정
    • 볼륨은 기존 PVC를 사용할 예정 (persistence enable : false)
    • registry :  프로젝트이름
    • existingClaim : PVC 이름

 

 

  • 설정 YAML 실행
    • helm 이름 기반으로  harbor 리소스 이름 지정됨
helm install my-release .

 

  • 접속


이젠 Harbor Helm HA 구성은 완료되었으나, 이젠 실제 상세하게 정보 확인해보자

pod만 봐도 nginx proxy를 통해서 Service 호출하여 통신하는 거 같음

 

  • nginx conf
    • Proxy 보면  Portal, core쪽만 Proxy_pass로 호출하게됨
      • 추가적으로 server 정보 보면 k8s service 이름으로 등록

 

 

 

  • 추가 테스트
    • portal Pod 삭제하고,  registry Pod 삭제 시 정상적으로 동작!

 

 

참고 공식 문서

https://goharbor.io/docs/1.10/install-config/harbor-ha-helm/

 

Harbor – Deploying Harbor with High Availability via Helm

Deploying Harbor with High Availability via Helm

goharbor.io

 

728x90

'Harbor' 카테고리의 다른 글

Harbor 외부 Postgres DB 연동 및 구성  (0) 2024.07.02
Harbor Replicas 설정  (0) 2024.06.28

댓글