AWS EC2 인프라 철수기 - 1. 현황 분석 및 문제 제기

4 분 소요


사내 MLOps 시스템을 운영하면서 AWS EC2 인프라 철수를 결정하기까지의 과정을 기록한다. 이 글에서는 현재 AWS 사용 현황을 분석하고, 왜 철수를 고민하게 되었는지 문제를 제기한다.


TL;DR

  • AWS EC2를 1년간 운영하며 월 약 80만 원 비용 발생
  • 클라우드 핵심 가치(탄력성, 글로벌 확장성)를 활용하지 못하고 있었음
  • 현재 워크로드 특성상 온프레미스가 더 적합하다고 판단


배경

원대한 시작

2024년 12월, 사내 MLOps 프로젝트를 시작할 때 AWS 인프라 도입을 검토했다. 당시에는 일반 사용자를 대상으로 하는 클라우드 서비스로 기획되었다. 클라우드에서 구동되는 MLOps 플랫폼을 목표로 했고, 초기 비즈니스 모델을 탐색하는 단계에서 클라우드 환경을 미리 경험해 보자는 의도도 있었다.


1년이 지나고

약 1년이 지났다. 서비스 형상이 여러 차례 바뀌었고, 현재는 사내 AI 엔지니어들이 주로 사용하는 서비스 형태로 정착했다. 일반 사용자 대상 클라우드 서비스라는 초기 기획과는 많이 달라진 상황이다.

그런데 매달 청구되는 AWS 비용을 보면서 의문이 들기 시작했다. 12월 기준으로 월 약 80만 원 정도가 과금되고 있었다. 환율이 높아진 요즘, 우리는 이 비용만큼의 가치를 누리고 있는 것일까?


현황

리소스 구성

현재 AWS에서 사용 중인 주요 리소스는 다음과 같다.

리소스 상세 용도
EC2 c5.4xlarge (16 vCPU, 32GB) Frontend 서빙, 공인 IP 접근
EBS gp2, 512GB EC2 인스턴스 스토리지
Elastic IP 1개 고정 공인 IP
Site-to-Site VPN IPSec 기반 사내망-AWS 연결


EC2 인스턴스는 사내 쿠버네티스 클러스터에 노드로 조인되어 있다. 사내망과 AWS VPC는 IPSec VPN으로 연결되어 있어, 마치 하나의 네트워크처럼 운영된다.

$ kubectl get nodes
NAME              STATUS                     ROLES                       AGE    
aws-node-01       Ready,SchedulingDisabled   <none>                      347d  
onprem-master-01  Ready                      control-plane,etcd,master   33d    
onprem-gpu-01     Ready                      <none>                      317d   
# ... 기타 사내 노드들

현재 AWS 노드는 SchedulingDisabled 상태로 cordon해 놓은 상태다. 철수를 고려하면서 새로운 파드가 스케줄링되지 않도록 조치한 것이다.


실제 사용 현황

AWS 노드에서 실행 중인 파드를 확인해 보면, 핵심 워크로드는 Frontend뿐이다.

$ kubectl get pods -A -o wide --field-selector spec.nodeName=aws-node-01
NAMESPACE   NAME                              READY   STATUS    RESTARTS   AGE
mlops       mlops-front-9675544cc-4dl87       1/1     Running   0          17d
mlops       mlops-front-9675544cc-n88k4       1/1     Running   0          17d
mlops       mlops-front-9675544cc-prtrd       1/1     Running   0          17d
# 나머지는 모니터링, 시스템 관련 DaemonSet

Backend는 이미 온프레미스 클러스터로 이전한 상태다. AWS 노드에는 Frontend 3개 레플리카만 남아 있다.

그 외에 AWS 리소스를 활용하는 것이 하나 더 있다. 사내망에 있는 MinIO의 공인 IP 접근이다. 외부 Edge 장비에서 Triton Model Repository에 접근해야 하는데, 이를 위해 AWS Elastic IP를 사용하고 있다.


비용 분석

비용 분석에 앞서 한 가지 언급할 것이 있다. 리셀러를 통해 AWS를 사용하고 있어서, AWS 대시보드에서 Cost Management나 Billing 관련 메뉴에 접근할 수 없었다. 따라서 세부적인 사용량 분석에는 한계가 있었고, 청구서를 기반으로 대략적인 비용 구조만 파악할 수 있었다.


월별 비용 추세

2025년 1월부터 10월까지의 비용 추세를 살펴보면 다음과 같다.

기간 대략적 비용 비고
2025년 1월 약 20만 원 초기 저사양 운영 추정
2025년 3월~ 월 약 80만 원 이상 본격 운영 시작
연간 총액 약 1,000만 원 수준 환율 변동에 따라 증감

1월과 3월 사이에 비용이 급증한 것을 볼 수 있다. 초기에 저사양 인스턴스로 시작했다가 서비스 안정성을 위해 c5.4xlarge로 업그레이드한 것으로 보인다. 당시에는 빠른 실행과 안정성이 우선이었다.


비용 구성 요소

청구서를 분석해 보면, 주요 비용 구성은 다음과 같다.

  • EC2 인스턴스: 가장 큰 비용 요소. c5.4xlarge On-Demand 24시간 운영
  • EBS 볼륨: 512GB gp2 스토리지
  • Site-to-Site VPN: 시간당 과금으로 월 고정 비용 발생
  • 기타: Data Transfer, Cost Explorer 등

EC2 인스턴스가 전체 비용의 대부분을 차지한다. On-Demand 방식으로 24시간 운영하고 있어, Reserved Instance나 Savings Plan을 적용했다면 비용을 상당히 절감할 수 있었을 것이다.


문제 제기

클라우드 이점 활용 여부

클라우드 서비스의 핵심 가치는 무엇일까?

  • 탄력성(Elasticity): 트래픽에 따라 리소스를 자동으로 확장/축소
  • 글로벌 확장성: 전 세계 리전에 손쉽게 배포
  • 매니지드 서비스: 인프라 관리 부담 경감
  • 종량제 비용 모델: 사용한 만큼만 지불


현재 우리가 AWS를 어떻게 사용하고 있는지 돌아보았다.

  • EC2를 24시간 풀가동하고 있다. Auto Scaling이나 탄력적 리소스 활용이 없다.
  • 사내 엔지니어들이 주로 사용하는 서비스다. 지금 단계에서 글로벌 확장까지 고려할 필요는 없다.
  • 트래픽이 예측 가능하다. 수 시일 내에 급격한 확장 가능성도 낮다.
  • 매니지드 서비스를 거의 활용하지 않는다. EC2에 직접 배포하고 있다.


결론적으로, 클라우드가 제공하는 핵심 가치를 거의 활용하지 못하고 있다.


비용 대비 효용

현재 AWS로부터 얻는 핵심 가치는 두 가지다.

  1. Frontend 서빙을 위한 컴퓨팅 리소스
  2. 공인 IP를 통한 외부 접근

이 두 가지 가치가 월 약 80만 원의 가치가 있는가?

사내에는 이미 충분한 컴퓨팅 리소스가 있다. 공인 IP도 사내 인프라에서 확보 가능하다. 굳이 클라우드를 사용해야 할 명확한 이유가 없어 보인다.


현재 워크로드에 적합한 인프라인가?

현재 상황을 정리해 보면, 어떻게 봐도 현재 단계에서는 온프레미스 운영이 더 유리해 보인다.

항목 현재 상태 클라우드 적합성
사용자 사내 연구자 온프레미스 적합
트래픽 패턴 예측 가능, 안정적 온프레미스 적합
확장 필요성 낮음 온프레미스 적합
인프라 역량 사내 보유 (K8s 클러스터 운영 중) 온프레미스 적합


클라우드를 사용해야 하는 경우 vs 온프레미스가 유리한 경우

일반적으로 정리해 보면 다음과 같다.

  • 클라우드가 적합한 경우:
    • 예측 불가능한 트래픽 급증 가능성
    • 글로벌 서비스 필요
    • 빠른 실험과 반복 (스타트업 MVP 단계)
    • 인프라 관리 인력 부족
    • 피크 타임과 일반 시간의 차이가 큰 경우
  • 온프레미스가 유리한 경우:
    • 예측 가능한 안정적인 워크로드
    • 보안/규제 요구사항으로 데이터 외부 반출 제한
    • 일정 규모 이상에서 자체 운영이 더 저렴
    • 인프라 관리 가능한 기술 역량 보유
    • 사내 연구/개발 목적

현재 우리 케이스는 온프레미스가 유리한 조건을 대부분 만족한다.


마무리

이 글에서는 AWS EC2 사용 현황을 분석하고, 왜 철수를 고민하게 되었는지 문제를 제기했다. 요약하면:

  1. 월 약 80만 원의 AWS 비용이 발생하고 있다.
  2. 클라우드의 핵심 가치(탄력성, 글로벌 확장성)를 활용하지 못하고 있다.
  3. 현재 워크로드 특성상 온프레미스 운영이 더 적합해 보인다.

다음 글에서는 구체적인 대안을 분석하고, 최종 결정을 내리기까지의 과정을 다룬다. EC2 인스턴스 Right-sizing, 타 클라우드 전환, 온프레미스 이전 등 여러 대안을 비교하고, Model Repository 외부 접근 문제를 어떻게 해결할지 S3 비용 예측과 함께 살펴본다.



hit count

댓글남기기