# metallb 버전 갱신 가이드 ## 1. git 작업 환경 구성 - DIP 카탈로그 git 다운로드 ```sh git clone https://github.com/paasup/dip-catalog.git ``` - 작업 브랜치로 체크아웃 ```sh git checkout -b update-metallb/0.16.1 ``` ## 2. helm 차트 버전 업데이트 - BUILD-README.md, CUSTOM-README.md, custom-values.yaml을 제외한 파일 삭제 ```sh # chart 디렉토리로 이동 cd ~/dip-catalog/manifests/helm/metallb/0.16.1 # 삭제할 파일 목록 확인 find . -mindepth 1 \( -name "CUSTOM-README.md" -o -name "BUILD-README.md" -o -name "custom-values.yaml" \) -prune -o -print # 파일 삭제 find . -mindepth 1 \( -name "CUSTOM-README.md" -o -name "BUILD-README.md" -o -name "custom-values.yaml" \) -prune -o -exec rm -rf {} + ``` - metallb 차트 다운로드 ```sh # manifests/helm/metallb 디렉토리로 이동 cd ~/dip-catalog/manifests/helm/metallb # helm repo 추가 helm repo add metallb https://metallb.github.io/metallb helm repo update # helm 차트 pull helm pull metallb/metallb --version="0.16.1" # 차트 압축 해제 tar xzvf metallb-0.16.1.tgz # 압축 파일 삭제 rm metallb-0.16.1.tgz ``` ## 3. git push 및 tag 추가 - 갱신작업 진행 후 commit ```sh git add . git commit -m "update metallb/0.16.1" ``` - main 브랜치에 체크아웃 후 merge ```sh git checkout main git merge update-metallb/0.16.1 ``` - git에 push 후 작업 브랜치 삭제 ```sh git push -u origin main git branch -d update-metallb/0.16.1 ``` - git tag 추가 후 push ```sh git tag metallb/0.16.1 git push origin metallb/0.16.1 ``` ## 4. 차트 버전 정보 - metallb/0.16.1 (app version: v0.16.1) - MetalLB 공식 Helm 차트 - 베어메탈 클러스터의 LoadBalancer 타입 서비스에 IP 를 할당한다. - IPAddressPool/L2Advertisement 은 차트가 아니라 설치 후 별도 매니페스트로 적용한다.