본문 바로가기
AWS

[ECS] AWS ECS 세팅하기 - 3. 서비스 생성 - 블루/그린 배포 1

by yonikim 2021. 9. 8.
728x90

1. 작업정의 및 클러스터 생성하기

2. 서비스 생성하기 - 롤링 업데이트

3. 서비스 생성하기 - 블루/그린 배포

 

블루/그린 배포는 구 버전에서 새 버전으로 일제히 전환하는 방식이다. 구 버전과 새 버전의 서버들을 동시에 나란히 구성하고 배포 시점이 되면 트래픽을 일제히 전환시킨다. 하나의 버전만 프로덕션 되므로 버전 관리 문제를 방지할 수 있고, 또 한 빠른 롤백이 가능하다.

운영 환경에 영향을 주지 않고 실제 서비스 환경으로 새 버전 테스트가 가능하다는 장점이 있다. 

 

블루/그린 배포의 경우에는 롤링 업데이트와 다르게 서비스 생성 전 해줘야 할 작업이 있어서 총 2편에 걸쳐 작성하려고 한다. 

서비스 생성 전 해줘야 할 작업은 2가지이다. 1. IAM 역할 만들기 2. Target Group, Load Balancer 만들기

1. [ECS] AWS ECS 세팅하기 - 3. 서비스 생성 - 블루/그린 배포 1
2. [ECS] AWS ECS 세팅하기 - 3. 서비스 생성 - 블루/그린 배포 2

 


IAM 역할 만들기


먼저 블루/그린 배포를 구성하려면 CodeDeploy를 위한 서비스 역할이 필요하기 때문에 IAM 역할을 만들어줘야 한다. 

 

 

1. AWS Console 로그인 후 IAM 에 들어간다. 

 

2. 역할 > [역할 만들기] 버튼을 클릭한다.

 

3. AWS 서비스에서 [CodeDeploy] 를 클릭하면 아래에 샘플이 나오는데, [CodeDeploy - ECS] 를 클릭한다.

 

4. 태그는 추가해줘도 되고 안해줘도 된다. 

 

5. 역할 이름과 설명을 기재해준 후 [역할 만들기] 버튼을 클릭한다.

 

(출처: https://docs.aws.amazon.com/ko_kr/AmazonECS/latest/developerguide/codedeploy_IAM_role.html)

 

 


Target Group, Load Balancer 만들기


1. AWS Console 로그인 후 EC2 에 들어간다.

 

2. 왼쪽 네비게이션 바 > 로드 밸런싱 > [대상 그룹] 을 클릭한다.

 

3. [IP 주소] 를 클릭하고 대상 그룹 이름을 입력한다.

 

4. [대상 그룹 생성] 버튼을 클릭한다. 

 

5. Target Group 이 생성 완료됐다.

 

6. 왼쪽 네비게이션 바 > 로드 밸런싱 > [Load Balancer] 를 클릭한다.

 

7. Application Load Balancer 로 생성한다.

 

8. 로드 밸런서 이름을 입력하고 네트워크 매핑 설정 정보를 입력한다.

 

9. 리스너 및 라우팅에서 대상 그룹에 위에서 만든 Target Group 을 연결한다.

 

10. Load Balancer 도 생성 완료됐다.

728x90