kui-vault/02.Volume/AWS/ECS 서비스 만들기.md

65 lines
2.9 KiB
Markdown

---
id: 서비스 만들기 20260305
created: 2026-03-05 08:38
tags:
---
> [!abstract]
> [[클러스터(Cluster)]] 내부에서 동작하는 서비스를 만듭니다.
> ECS 서비스는 **"데이터 플레인 위에서 태스크가 잘 돌아가게 감시하는 역할"**을 합니다.
> [!check]
> - **개수 유지:** "태스크 3개를 항상 띄워줘"라고 설정하면, 하나가 죽었을 때 데이터 플레인(서버) 위에 새로운 태스크를 다시 올립니다.
>
> - **로드 밸런싱:** 들어오는 트래픽을 여러 태스크에 골고루 나눠줍니다.
>
> - **배포 관리:** 새로운 버전의 태스크 정의가 나오면, 기존 태스크를 하나씩 끄고 새 버전으로 교체합니다.
>
## 🔢 목록
#### 1. 서비스의 [[태스크(Task)]] 정의
![[Pasted image 20260305084812.png]]
만약 정의한 [[태스크(Task)]]가 없다면 태스크부터 정의해야 합니다.
[[ECS 태스크 만들기]]
태스크를 기반으로 ECS의 서비스가 가동되어집니다.
> [!question]
> [[태스크 정의 패밀리]]가 뭐지?
태스크 정의 패밀리를 선택하면 그 패밀리의 최신 버전이 자동으로 태스크 정의 개정에 등록됩니다.
서비스 이름을 마저 지정합니다.
#### 2. 컴퓨팅 구성 선택
![[Pasted image 20260305102304.png]]
클러스터명은 변경할 수 없어서 비활성화 되어있는 것
[[시작 유형(Launch Type)과 용량 공급자 전략(Capacity Provider Strategy)의 차이]]
참고해서 설정하면 됩니다.
#### 3. 문제 해결 구성 설정
> [!info] 개발(Dev)이나 스테이징(Staging) 환경에서는 무조건 켜두시고, 운영(Prod) 환경에서는 보안 승인을 받은 사람만 쓸 수 있게 [[IAM(Identity and Access Management)]]으로 꽉 잠가두고 켜두시는 것을 추천
![[Pasted image 20260305104853.png]]
#### 4. 배포 구성은 그대로 놔둡니다.
정확한 사용법을 확인하지 못했음.
#### 5. 네트워킹
[[VPC(Virtual Private Cloud)]]와 [[서브넷(Subnet)]], [[보안 그룹(Security Group)]]을 설정합니다.
필요한대로, 원하는대로 설정해줍니다.
#### 6. 로드밸런싱 선택
태스크로의 로드밸런싱이 필요한 경우 체크하고 사용합니다.
여기서 추가해주지 않으면 중간에 추가할 수 없어서 태스크를 새로 만들어야 합니다.
![[Pasted image 20260305110136.png]]
**자동 등록 (Target Group):** 새로운 태스크가 실행되면 ECS 서비스가 알아서 로드 밸런서의 **'대상 그룹(Target Group)'**에 해당 태스크의 IP를 등록해줍니다.**
로드 밸런싱 사용을 체크하지 않을 경우 자동 등록이 되지 않습니다.
서비스를 만들고 나면 서비스 태스크가 정상적으로 실행되기를 기다려야합니다.
![[Pasted image 20260305110258.png]]
만약 태스크 실행이 실패하였다면 태스크정보에서 로그 탭을 확인해야 합니다.
![[Pasted image 20260305111038.png]]