사용하기 쉬운 ECS
오늘은 사용법을 알려드릴께요!
건축물
![](https://s1.md5.ltd/image/da8942c1951db4cc37f3c68a0f9ce0cd.png)
아래와 같이 여러 단계가 있으며 모든 소스 코드는 내 github repo(infrastructure 및 golang-web )에 있습니다.
전제 조건
AdministratorAccess
권한으로 aws account 생성설정 환경
Terraform은 모든 변경 사항을
*.tfstate
파일에 저장하므로 로컬 시스템 대신 *.tfstate
에 aws s3 bucket
를 저장하는 것이 좋습니다. 이 단계에서는 aws s3 bucket
파일을 저장할 *.tfstate
파일을 빌드합니다.먼저 다운로드infrastructure
$ cd setup
$ terraform init
$ terraform apply
aws region code
와 같이 us-east-1
를 입력하라는 메시지가 표시됩니다. 그런 다음 나열된 리소스가 크레이트인지 확인한 다음 yes
를 입력해야 합니다.아래에서 출력
s3_bucket_terraform_state
을 볼 수 있습니다.Outputs:
s3_bucket_terraform_state = "**********-us-east-1"
리소스 구축
이제 VPC, 서브넷, ECS 및 파이프라인을 포함한 리소스를 구축하기 시작합니다.
$ cd ../region/virginia
그런 다음
s3
파일에서 providers.tf
의 블록을 업데이트합니다.backend "s3" {
bucket = "**********-us-east-1"
key = "terraform/backend.tfstate"
region = "us-east-1"
encrypt = "true"
}
다음 사항을 수정해야 할 수 있습니다.
bucket
를 s3_bucket_terraform_state
의 출력으로 설정key
을 저장할 경로로 *.tfstate
를 설정합니다.region
로 업데이트encrypt
를 true
로 설정필요에 따라
main.tf
파일의 구성을 수정한 후 다음 명령을 실행할 수 있습니다.$ terraform init
$ terraform apply
나열된 리소스를 확인한 후
yes
를 입력하라는 메시지가 표시됩니다.![](https://s1.md5.ltd/image/94e0db992b4ec91b386c005d166eeafa.png)
10분 후에 모든 리소스가 생성됩니다.
![](https://s1.md5.ltd/image/0afce84f71c9941b6902cf6383b6e8d7.png)
코드 배포
먼저 golang-web을 다운로드한 다음 아래와 같이 git remote를 설정합니다.
$ git remote add aws ssh://git-codecommit.us-east-1.amazonaws.com/v1/repos/golang-web
$ git remote -v
![](https://s1.md5.ltd/image/89150091805ffbedff7fde2d50aabf37.png)
$ git push aws master:master
Enumerating objects: 62, done.
Counting objects: 100% (62/62), done.
Delta compression using up to 12 threads
Compressing objects: 100% (55/55), done.
Writing objects: 100% (62/62), 25.36 KiB | 6.34 MiB/s, done.
Total 62 (delta 26), reused 3 (delta 0), pack-reused 0
To ssh://git-codecommit.us-east-1.amazonaws.com/v1/repos/golang-web
* [new branch] master -> master
이제 모든 작업이 완료되었으므로 aws의 출력을 살펴보겠습니다.
출력
먼저 VPC와 서브넷이 생성된 것을 확인할 수 있습니다.
![](https://s1.md5.ltd/image/ecdc9afeceb56310aab755db60c461ff.png)
![](https://s1.md5.ltd/image/f1dff024310a182440bb3721fb96fcc4.png)
그런 다음 코드 파이프가 빌드되었습니다.
![](https://s1.md5.ltd/image/a5382c8bb540d7d3e75a17afbe8a4bfc.png)
![](https://s1.md5.ltd/image/3a9ab80f172653199fe0414dcd1c62c3.png)
![](https://s1.md5.ltd/image/73b8d77a1df9bcd4dac3a8fae7d0ae07.png)
![](https://s1.md5.ltd/image/a86b824aa16ff647243c854e5c052b59.png)
![](https://s1.md5.ltd/image/69855ea15bd923a1fb36b0e4dc785b94.png)
또한 공용 끝점이 생성된 것을 볼 수 있습니다.
![](https://s1.md5.ltd/image/cebb6db8ff2016e61cabb0740ebb226e.png)
![](https://s1.md5.ltd/image/4bd909440b6907ad47df29252dd20a6f.png)
자, 이제 CES를 볼 시간입니다.
![](https://s1.md5.ltd/image/259af919ee616f3245bc97c19b66dedd.png)
![](https://s1.md5.ltd/image/1b6b3db723448910d4d52f9f409b8645.png)
![](https://s1.md5.ltd/image/75c5cccac6988f1a190a551f0b1bab4d.png)
![](https://s1.md5.ltd/image/5283d2a3b57f0305c4960a0e7b4d6b1d.png)
확인
![](https://s1.md5.ltd/image/085306d423519c002769668512e925ec.png)
액세스
start
api가 CPU 리소스 서비스 시간을 소진합니다.![](https://s1.md5.ltd/image/9e938117a1021a84fdb1353170453314.png)
그런 다음 Cloud watch에서 모니터를 봅니다.
![](https://s1.md5.ltd/image/cb8787bc8f2fe96fefc140878c43df88.png)
ecs가 2개의 새로운 작업을 생성했습니다.
![](https://s1.md5.ltd/image/e96ebb310b07024842fbf6a7fa99b751.png)
액세스
stop
api가 CPU 리소스 서비스 시간을 해제합니다.![](https://s1.md5.ltd/image/827f3529202135a36731ce8919bc6848.png)
그런 다음 Cloud watch에서 모니터를 봅니다.
![](https://s1.md5.ltd/image/6f7a9f6f93ba580baa6af2e6c5c9d801.png)
ecs는 작업을 소모하고 있습니다.
![](https://s1.md5.ltd/image/61595e3bea78f9818966c523d666b0c6.png)
Reference
이 문제에 관하여(사용하기 쉬운 ECS), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/aws-builders/easy-to-use-ecs-2700텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)