DevOps/AWS3 [AWS] ECR + ECS + ALB + Route53 + Spring + Github Actions - 3 AWS에 ECS로 배포하기의 마지막 포스팅인Github Actions를 활용한 `ECS` `CI/CD` 배포에 관해 알아보려 한다.name: CI-CD PortNumber Back-End Serviceon: push: branches: - BEjobs: deploy: runs-on: ubuntu-latest env: AWS_REGION: ap-northeast-2 ECS_CLUSTER_NAME: {ECS 클러스터 이름} ECR_REPOSITORY_NAME: {ECS 레포지토리 이름} ECS_SERVICE_NAME: {ECS 서비스 이름} ECS_CONTAINER_NAME: {ECS 컨테이너 이름} TASK_DEFINITIO.. 2024. 8. 25. [AWS] ECR + ECS + ALB + Route53 + Spring + Github Actions - 2 우리는 저번 포스팅에서 네트워크 구성까지 진행해 보았다. 이제는 `ALB`와 Route53을 이용한 인증서 설정을 구현해보자. 로드 밸런서를 사용하는 이유는 뭘까?앞 포스팅에서 ECS 클러스터 및 서비스를 생성하며 느낄 수 있었겠지만,`AWS ECS Fargate` 사용시 아주 쉽게 무중단 배포가 가능해지며 원하는 태스크, 컨테이너, 서비스를 생성할 수 있다. 즉, `Scale-Out`이 굉장히 간단하게 구현이 된다는 것을 알 수 있다. 하지만, `Scale Out`만 잘돼선 의미가 없다. 결국 다양한 서비스 및 컨테이너가 효율적으로 사용이 되며, 트래픽 분산이 되고, 무중단 배포를 구현하려면`ALB`와 같은 로드 밸런서가 필요하다. 만약, Spring 서버를 `Scale-Out`을 했다고 가정하자... 2024. 8. 23. [AWS] ECR + ECS + ALB + Route53 + Spring + Github Actions - 1 사이드 프로젝트에 참가하게 되어 기존의 `EC2`를 사용한 방법대신 `ECS`를 사용한 배포를 진행했다. 우선, `Amazon ECS on Fargate`가 뭘까?AWS Fargate는 EC2 인스턴스와 달리 서버리스 방식으로 Amazon ECS에서 컨테이너를실행할 수 있도록 도와주는 서비스이다. Amazon ECS on Fargate를 사용하면 컨테이너를 실행하기 위해 가상 머신 서버의 클러스터를`프로비저닝`하거나 구성하고, 관리할 필요가 없다. 또한, 서버 사용량을 고려하여 유형을 선택하거나, 클러스터를 조정해야 할 시점을 고민하거나 클러스터 패킹을최적화 할 필요가 없어지는 AWS 컨테이너 생성 및 관리 서비스이다. 무중단 배포(블루/그린, 롤링)도 알아서 해주기에 굉장히 편리하다는 장점이 있다... 2024. 8. 22. 이전 1 다음