AWS ECS/Fargate 작업 기억
네이밍의 일관성이 없는 것은 애교w
※2018/10/3 추기 : 본제에 들어가기 전에 ECR/ECS의 전체적인 흐름을 그림으로 해 보았습니다
기타 정보를 추가했습니다.
전체 흐름
ECR : AWS에서 자체 리포지토리를 만들 때까지
ECS : Cluster를 만들고 실행 환경을 구축 할 때까지 (ELB에 대해서는 할애)
이것을 근거로, 실제로 구축해 봅시다.
ECR에 이미지 등록
여기 ecraisi로 작성 : XXXXX.dkr.ecr.us-east-1.amazonaws.com/ecraisi
사용 권한으로 대상 IAM에 대한 사용 권한을 추가해야 합니다.
docker login 명령 얻기
$aws ecr get-login --no-include-email --region us-east-1
docker login -u AWS -p eyJwYXl....NDIzMTkxMn0= htps : // 홉 x. dkr. 에cr. 으아아 st-1. 아마조나 ws. 이 m
↑에서 얻은 docker login 명령을 복사하여 실행
$ sudo docker login -u AWS -p eyJwYXl....NDIzMjM2Mn0= htps : // 홉 x. dkr. 에cr. 음 음 st-1. 아마조나 ws. 이 m
시도에 docker.io/nginx를 기반으로 Hello world를 시도하십시오.
$ sudo docker image pull nginx
Dockerfile 및
index.html 만들기
build
$ sudo docker build -t mynginx.
리포지토리 ecraisi로 이미지를 푸시 할 수 있도록 이미지에 태그 지정
$ sudo docker image tag mynginx XXXXX.dkr.ecr.us-east-1.amazonaws.com/ecraisi:mynginx
새로 생성된 AWS 리포지토리에 이 이미지를 푸시
$ sudo docker image push XXXXX.dkr.ecr.us-east-1.amazonaws.com/ecraisi:mynginx
ECS 리포지토리에 등록되어 있는지 확인합시다.
로드 밸런서 생성
* LB 신규 작성
-로드 밸런서 메뉴에서 "NLB"(Network Load Balancer) 생성
이름은 이번 ECSLB로 설정되었습니다.
- 타겟 그룹의 명칭 설정
여기서는 AISITG , 타겟 유형 = ip, port = 80
※ "리스너 설정", "타겟 등록"은 이 시점에서는 필요하지 않습니다만
ECS에서 클러스터를 만들 때 풀다운에서 선택할 수 있으므로 설정하는 것이 좋습니다.
※Fargate 한다면 리스너 설정/타겟 그룹은 여기서 일단 삭제해, "서비스 작성"의 단계에서
새로 설정하는 것이 더 쉽습니다.
※컨테이너 서비스에의 액세스는 로드 밸런서의 DNS명으로 액세스합니다(EIP 불필요)
ECS/Fargate 설정
(ECR에서 containar 등록하지 않으면 후술하는 ECR 설정을 먼저 실행)
-Fargate 선택
여기에서 작업 이름 : MyTask
- 컨테이너 ecraisi:mynginx 추가
- 포트 매핑을 tcp:80으로 설정
- 클러스터를 "Networking Only"로 생성
여기서는 클러스터 이름 : MyECS입니다.
클러스터의 "서비스"탭에서 생성
- FARGATE 선택
- 작업 정의 : MyTask 선택
- 서비스 이름: MyService
- 태스크 수를 설정 (서비스를 삭제할 때는 태스크 수 = 0으로 하는 것)
- VPC/Subnet/SG 선택
- ELB는 당연히 NLB 선택 > ECSLB 선택
- 대상 컨테이너를 ELB에 추가
- 리스너 포트 port=80을 선택하면 타겟 그룹명으로 "AISITG"가 자동 선택
(리스너 포트/TG 함께 삭제하면 여기에서 신규 등록으로 OK)
서비스의
"자세히"로로드 밸런스 TG = AISITG로 설정
"작업"에 MyTask가 등록
되어 있는지 확인
몇 분 기다리면 대상 AISITG에 시작된 컨테이너의 각 IP가 자동으로 할당되므로
http://NLB의 FQDN에서 액세스 할 수 있으면 완성!
Reference
이 문제에 관하여(AWS ECS/Fargate 작업 기억), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/asato-san/items/a4bd69a6cd30f795201c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)