Spring Cloud, 도커 컴포즈를 활용한 무중단 배포를 구상해보고 동작시켜봤는데 성공하였다.
가상머신에서 작업을 했고
새로운 버전의 도커 컴포즈의 이미지 태그 처리는 아마 CI 도구에서 환경변수를 직접적으로
넣는 방법으로 처리를 해야할 것 같다.
블루-그린 배포보다는 롤링 배포에 가까운 방식인 것 같다.
(재정 문제로 서버는 최대한 작게 띄워야 하기 때문에 좀 더 적합한 방법을 찾다보니 롤링 배포)
대략적인 순서는
- 코드 수정 되었을시 CI
- Service Temp 컨테이너 구동(즉, 서버 2개 실행 중)
- 기존 서비스 도커 컴포즈로 업데이트
- 이때, API Gateway 내에서 설정해둔 Retry Filter가 작동
- Service Temp만 작동되다가 기존 서비스 Service Discovery 인식
- Service Temp 컨테이너 삭제
실제 배포시 구상중인 해줘야 할 CI/CD 작업들
- 1. Service Temp 시작
- 2. 환경변수 바꿔서 Recreating
- 3. Service Temp 삭제
- 4. image prune -f -a
까먹기 전에 기록해놔야지..
'개발 기록' 카테고리의 다른 글
OpenFeign과 Spring Cloud Gateway간의 순환 참조 오류 (0) | 2024.04.03 |
---|---|
2024-03-29 (0) | 2024.03.29 |
Spring Cloud (1) | 2024.03.15 |
Spring Cloud Config 설정 (0) | 2024.03.14 |
Spring Cloud를 공부하며 (0) | 2024.03.10 |