Argo Rollouts를 이용한 Blue-Green 배포 전략 적용하기
·
DevOps
이 포스팅에서는 GitOps 환경에서 Blue-Green 방식의 무중단 배포를 구성하는 과정을 다룹니다.이전 포스팅들을 참고하시면 GitOps 환경에서 GitHub Actions + ArgoCD를 이용한 CI/CD 파이프라인을 구축하실 수 있습니다.2025.01.04 - [DevOps] - GitOps와 ArgoCD2025.01.05 - [DevOps] - GitHub Actions + ArgoCD로 k8s 클러스터 환경에서 CI/CD 구축하기서론쿠버네티스는 배포를 쉽게 해 줍니다. 하지만 GitOps 방식의 CI/CD 파이프라인을 구축한 후 무중단 배포를 위해 설정해야 하는 부분은 꽤나 까다로웠습니다. GitHub Actions 워크플로우 스크립트를 수정할 때 configMap 등을 이용해 현재 배포된..
쿠버네티스에서 트래픽 유실 없는 무중단 배포 적용하기
·
Kubernetes
쿠버네티스는 배포를 편리하게 해 줍니다. 편리하지만 수동으로 배포한다면 꽤나 번거로워질 수 있고 Human Error가 발생할 가능성이 높습니다. 만약 GitOps 방식을 채택했다면 배포 과정에서 트래픽이 유실되지 않도록 하려면 복잡한 설정이 필요할 수 있습니다. 파드가 생성된 후 애플리케이션이 완전히 준비돼야 정상적으로 트래픽을 처리할 수 있고, 그 시점에 서비스 객체가 해당 파드를 바라볼 수 있도록 하는 제어가 필요하기 때문입니다. 서비스가 중단되지 않도록 배포하기 위해 무중단 배포 전략이 등장했고, 무중단 배포 전략에는 canary, blue-green, rolling 등이 있습니다. 이 포스팅에선 blue-green 배포 전략을 예시로 들겠습니다.쿠버네티스에서 트래픽의 이동 경로쿠버네티스 클러스터..