ECS+EC2에서 실행 중인 서비스를 Fargate로 교체
이 기사에서는 ECS+EC2에서 실행 중인 서비스를 ECS+Fargate로 교체할 때 수행한 작업을 소개합니다.
또한 작업에 AWS Management Console을 사용합니다.
현재 구성 정보
구성으로서는 아래와 같이
현재 ECS+EC2에서 실행 중이므로 이미 이미지 및 작업 등록이 완료되었습니다.
응용 프로그램 내에서 사용하기 위해 RDS 및 Elasticache와 함께 작동합니다.
작업 편집
먼저 작업을 편집합니다.
1. Requires compatibilities 변경
FARGATE에 체크 표시
체크를 하면 경고가 나옵니다
경고 내용
The selected network mode is not compatible with Fargate.
Fargate requires the awsvpc network mode.
awsvps
로 네트워크 모드를 변경하라는 것No Task execution role specified
Task execution role is required for logging and private image pulls for Fargate tasks. Failure to specify the role may lead to task failure or missing logs.
작업에
logging
와 private image
를 사용한다면 role을 설정하라는 것이번 프로젝트에서는 private image를 사용하므로 설정합니다.
2. 네트워크 모드 변경
awsvpc
를 선택합니다.3. Task execution role 변경
ecsTaskExecutionRole
를 설정했습니다.4. Task size 설정
5. 저장
저장
컨테이너 내용에 대해서는 이번에는 특별한 변경이 없으므로 그대로
Fargate용 서비스 추가
서비스 추가
1. 만들기 버튼을 누릅니다.
2. 서비스 설정하기
항목을 입력합니다.
Launch Type
에 FARGATE
를 선택합니다.3. 네트워크 구성
VPC와 서브넷은 적절히 설정
보안 그룹 설정
보안 그룹도 적절하게 설정합니다.
기본적으로 새로 만들어져 있습니다.
편집을 누르면 다음 화면이됩니다.
Elastic Load Balancing 설정
EC2 구성 시에도 Elastic Load Balancing을 이용하고 있었으므로 이번에도 설정합니다.
ELB 타입 선택
Application Load Balancer
를 선택합니다.부하 분산 용 컨테이너 설정
ELB에 추가
ELBへの追加
를 선택합니다.리스너 포트 선택
80:HTTP
를 선택합니다.대상 그룹의 항목 설정
Fargate에 대한 대상 그룹을 설정합니다.
패스 패턴은 부하 분산의 전략에 의한다고 생각합니다만, 이번은 Fargate를 사용하기 위해
/*
次のステップへ
를 선택하고 다음으로 이동합니다.Auto Scaling 설정
Auto Scaling의 설정도 할 수 있는 것 같습니다만, 나에게는 지금까지 필요 없기 때문에 날렸습니다
확인 및 작성
サービスの作成
를 선택하여 만듭니다.일어날 때까지 기다리다
아래와 같이 상황이
ACTIVE
가 될 때까지 기다립니다아래쪽의 서비스가 EC2에서 움직이고 있던 서비스가 됩니다.
이상으로 작업 완료
감상
끝내 보면 의외로 간단했습니다.
앞으로 Fargate로 바꾸려고하는 분의 참고가 되시면 감사하겠습니다.
Reference
이 문제에 관하여(ECS+EC2에서 실행 중인 서비스를 Fargate로 교체), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kytiken/items/ba442596554bfe5403cb텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)