CodeDeploy(Blue, Green에만 해당)

Hoju·2022년 8월 25일
0

ECS Blue/ Green Service를 배포하게 되면 Codedeploy가 자동으로 생성됩니다. 솔직히 이걸 그대로 사용해서 상관없지만, 문제에서 요구하는 건 다를 수 있기 때문에 삭제 후 새로 생성하도록 하겠습니다.

CodeDeploy Application Create

  1. 애플리케이션 생성을 선택합니다. 그런 다음 애플리케이션 이름을 입력 후 컴퓨팅 플랫폼에서 ECS를 선택합니다. 그 후 애플리케이션 생성을 선택합니다.

CodeDeploy DeployGroup Create

  1. 배포 그룹을 생성해주겠습니다. 배포 그룹 생성 선택
  2. 배포 그룹 이름 입력 후 서비스 역할을 선택합니다.
서비스 역할은 다음과 같습니다.

#신뢰 관계
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "codedeploy.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}

#연결되어있는 Policy
AWSCodeDeployRoleForECS
  1. ECS Cluster와 ECS Service를 선택합니다.
  2. 로드벨런서와 대상 그룹 1, 2를 선택합니다.
  3. 배포 설정 부분에서 기본 값으로 두고 원래 개정 종료에서 1시간 → 5분으로 바꿉니다.
  4. 배포 그룹 생성을 합니다.

배포 설정 부분에서 배포 구성이 3가지에 유형이 있어, 설명 드리겠습니다.

참고 - https://aws-diary.tistory.com/55

  • CodeDeployDefault.ECSAllAtOne: 모든 트래픽을 업데이트된 Amazon ECS 컨테이너로 한 번에 이동합니다.
  • Canary 배포: 카나리아 배포/릴리스를 사용하면 주어진 애플리케이션의 새 버전을 배포한 후 비즈니스 요구에 따라 사용자 정의 백분율 증분으로 트래픽을 전환합니다.
  • Linear(선형): 카나리아 배포와 유사합니다. 해당 트래픽을 소화하는 만큼의 리소스를 배포하고, 시간에 따라서 Ver2의 배포를 점점 늘리는 형태를 말합니다.
  • 생성 방법은 배포 구성에서 배포 구성 만들기를 선택한다음 만들면 됩니다.
profile
Devops가 되고 싶은 청소년

0개의 댓글

관련 채용 정보