3.4 KiB
3.4 KiB
| id | created | tags |
|---|---|---|
| ECS 태스크 정의 20260305 | 2026-03-05 09:20 |
X86_64 (인텔/AMD 계열) vs ARM64 (AWS Graviton 계열)
- 무엇이 달라지나: * 호환성: 내 도커 이미지를 어떤 CPU용으로 빌드했느냐에 따라 선택해야 합니다. (잘못 선택하면 실행 시
exec format error가 나며 죽습니다.)
- 성능: ARM64(Graviton) 기반 인스턴스는 최신 세대 가상 머신을 사용하여 가성비가 매우 좋습니다.
- 💰 비용 차이: 매우 중요합니다. 일반적으로 ARM64 아키텍처를 선택하면 x86보다 약 20% 정도 저렴합니다. 똑같은 태스크를 돌려도 아키텍처 설정만 바꾸면 돈을 아낄 수 있습니다. (단, 이미지 빌드도 ARM용으로 해야 함)
2. 네트워크 모드 (Network Mode)
파게이트(Fargate)를 사용하신다면 사실상 awsvpc 모드로 고정되지만, EC2(Elastic Compute Cloud) 기반에서는 선택지가 나뉩니다.
-
awsvpc 모드 (Fargate 기본): * 특징: 각 태스크가 자신만의 고유한 Private IP를 가집니다. 마치 VPC 안에 EC2 인스턴스가 하나 더 들어온 것처럼 행동합니다.
- 장점: 보안 그룹(Security Group)을 태스크 단위로 촘촘하게 걸 수 있습니다. (A 태스크는 DB 접근 가능, B 태스크는 불가 등)
-
Bridge / Host 모드 (EC2 전용): * 특징: 호스트 EC2의 IP와 포트를 공유해서 씁니다.
-
💰 비용 차이: 네트워크 모드 자체로 돈을 더 받지는 않지만,
awsvpc모드 사용 시 발생하는 **데이터 전송 비용(Data Transfer Out)**이나 가용 영역(AZ) 간 통신 비용이 실질적인 비용 차이를 만듭니다.
3. 리소스 할당 (CPU & Memory)
파게이트(Fargate) 비용의 핵심입니다. "사용량만큼 낸다"는 말의 정확한 의미는 **"내가 설정한 CPU/메모리 사양만큼 예약해서 낸다"**입니다.
-
착각하기 쉬운 점: 태스크가 실제로 CPU를 1%만 쓰고 있어도, 설정(예약)을 1 vCPU로 했다면 1 vCPU만큼의 비용이 꼬박꼬박 나갑니다. * 차이: * 설정값: 0.25 vCPU / 0.5 GB 로 설정하면 가장 저렴합니다.
-
비용 구조:
(vCPU 가격 * 시간) + (GB당 메모리 가격 * 시간). -
따라서 실제 사용량보다 너무 과하게 설정하면 서버리스인데도 돈이 많이 나올 수 있습니다.
-
📝 노트
[!note] 무엇을 선택해야 유리할까?
| 설정 항목 | 추천 선택지 | 비용/효율 영향 |
|---|---|---|
| 아키텍처 | ARM64 | 약 20% 저렴하며 성능도 우수 (강력 추천) |
| 네트워크 모드 | awsvpc | 보안 관리가 쉬워지나, ENI 할당 등 관리 요소 발생 |
| CPU/메모리 | 최소 필요량 | 설정한 수치에 비례해서 초 단위로 과금됨 |