티스토리 뷰
[AWS] ECS 올리기 - 1. VPC (https://a-half-human-half-developer.tistory.com/158)
[AWS] ECS 올리기 - 2. ECR (https://a-half-human-half-developer.tistory.com/159)
[AWS] ECS 올리기 - 3. ALB & Target Group (https://a-half-human-half-developer.tistory.com/160)
[AWS] ECS 올리기 - 4. ECS (https://a-half-human-half-developer.tistory.com/161)
[AWS] ECS 올리기 - 5. 도메인 연결 및 SSL 인증서 적용 (https://a-half-human-half-developer.tistory.com/162)
1. 작업 정의
ECS 클러스터를 올리기 전에 새 작업 정의를 생성한다.
FARGATE는 관리형 인프라로 EC2 인스턴스를 따로 올리지 않고 작업 진행이 가능하다.
편리하게 FARGATE 유형으로 선택한다.
태스크 정의의 이름을 지정해주고, 운영 체제는 Linux를 선택했다.
작업의 크기는 메모리, CPU 둘 다 최소한의 크기를 선택했다.
그 다음 바로 밑에 있는 컨테이너 추가 버튼을 눌러 컨테이너를 설정해주는데,
먼저 ECR에서 올릴 이미지의 URI를 복사해온다.
그런 다음 이미지 칸에 붙여넣는다.
그런 다음 컨테이너 이름과 메모리 제한 크기를 지정해준 후 컨테이너의 포트를 지정해준다.
그럼 이렇게 태스크 정의가 생성된 것을 볼 수 있다.
2. 클러스터
클러스터 생성을 해준다. 이 또한 FARGATE로 템플릿 선택을 했다.
그런 다음 클러스터의 이름만 지정해주면 된다.
클러스터를 만들었으니 이제 서비스를 생성한다.
그럼 다음 서비스명을 기입해주어야 한다.
알아보기 쉽게 작성하면 된다.
다음은 클러스터를 올릴 VPC를 선택해주고 프라이빗 서브넷을 선택해준다.
서브넷 구성을 2개 이상 했다면 만들어진 서브넷을 다 선택해준다.
프라이빗 서브넷을 이용할 예정이기 때문에 자동 할당 퍼블릭 IP는 필요없다.
보안 그룹은 편집을 눌러 새 보안 그룹 생성을 선택 후
소스 그룹에서 사전에 만들었던 로그 밸런서 보안 그룹을 선택해준다.
로드 밸런서의 유형을 Application Load Balancer를 선택하면
상태 검사 유예 기간을 정할 수 있다.
사전에 만든 로드 밸런서가 있다면 자동으로 역할이 선택된다.
마지막으로 로드 밸런서에 추가 버튼을 누르면
이렇게 세부 입력 창이 펼쳐지고, 여기서 기존에 만들어 두었던 대상 그룹을 선택하면
알아서 기입된다.
선택 사항으로 오토 스케일링을 정할 수 있지만
지금은 딱히 필요가 없어서 기본값으로 생성했다.
그럼 이제 제대로 서비스가 돌아가는지 확인할 차례
1. ECS 세부 정보
대상 그룹과 로드밸런서가 제대로 연결됐는지 확인 가능하다.
2. ECS 작업
현재 클러스터에 올라간 작업 상태를 확인 할 수 있다.
CloudWatch를 통해 로그 확인을 할 때 이 작업 번호로 확인 가능하다.
3. ECS 배포
현재 배포 중인 서비스 정보를 확인할 수 있다.
이제 제대로 배포가 되었는지 확인을 위해 CloudWatch에서 로그를 확인한다.
4. CloudWatch
로그 그룹 메뉴에서 배포했던 task 명을 찾아 들어가면
이렇게 배포된 작업 번호 별로 로그 스트림이 쌓인다.
여기서 배포되고 있는 작업 번호를 찾아 클릭하면
이렇게 실시간으로 쌓이는 로그를 확인 가능하고, 로그 분석도 가능하다.
5. Postman
마지막으로 로드 밸런서 DNS로 API를 쏴보면
이렇게 제대로 응답을 하는 것을 확인할 수 있다.
[AWS] ECS 올리기 - 1. VPC (https://a-half-human-half-developer.tistory.com/158)
[AWS] ECS 올리기 - 2. ECR (https://a-half-human-half-developer.tistory.com/159)
[AWS] ECS 올리기 - 3. ALB & Target Group (https://a-half-human-half-developer.tistory.com/160)
[AWS] ECS 올리기 - 4. ECS (https://a-half-human-half-developer.tistory.com/161)
[AWS] ECS 올리기 - 5. 도메인 연결 및 SSL 인증서 적용 (https://a-half-human-half-developer.tistory.com/162)
'AWS' 카테고리의 다른 글
[AWS] RestTemplate 504 (Gateway Time-out) 해결 (0) | 2022.04.22 |
---|---|
[AWS] ECS 올리기 - 5. 도메인 연결 및 SSL 인증서 적용 (0) | 2022.03.29 |
[AWS] ECS 올리기 - 3. ALB & Target Group (1) | 2022.03.25 |
[AWS] ECS 올리기 - 2. ECR (0) | 2022.03.25 |
[AWS] ECS 올리기 - 1. VPC (0) | 2022.03.25 |