.NET에서 클라우드로 – AWS 엔지니어 여정 (2일차: EC2 심층 탐구)
Source: Dev.to

.NET 개발에서 클라우드 엔지니어링으로 체계적으로 전환하는 과정의 일환으로 Amazon EC2 (Elastic Compute Cloud)—Amazon Web Services의 핵심 컴퓨팅 서비스 중 하나—를 살펴보았습니다. EC2를 이해하는 것은 확장 가능하고 프로덕션 수준의 클라우드 시스템을 설계하는 데 중요한 단계입니다.
Amazon EC2란?
Amazon EC2는 클라우드에서 크기 조정이 가능한 가상 서버를 제공합니다. 물리적 하드웨어를 관리하지 않고도 필요에 따라 컴퓨팅 용량을 프로비저닝할 수 있게 해줍니다. 바로 여기서 애플리케이션이 AWS 인프라에서 실행됩니다.
실습을 통해 얻은 주요 학습 내용
가상 서버 시작
- 다양한 AMI를 사용해 EC2 인스턴스를 생성했습니다:
- Amazon Linux
- Ubuntu
- 전체 시작 워크플로우를 따라 진행했습니다: AMI → 인스턴스 유형 → 키 페어 → 보안 그룹 → 스토리지 → 시작.
인스턴스 유형 및 사이징 전략
- 인스턴스 패밀리를 탐색했습니다:
- 범용(General Purpose)
- 컴퓨트 최적화(Compute Optimized)
- 메모리 최적화(Memory Optimized)
- 올바른 인스턴스 유형 선택이 성능과 비용 최적화에 어떻게 영향을 미치는지 배웠습니다.
보안 액세스 및 네트워킹
- SSH 인증을 위한 키 페어를 구성했습니다.
- 보안 그룹(방화벽 규칙)을 설정했습니다.
- 터미널을 통해 SSH 연결을 연습했습니다.
- 인바운드와 아웃바운드 트래픽 규칙의 차이를 이해했습니다.
EBS를 활용한 스토리지
- EBS 볼륨 유형을 학습했습니다.
- 볼륨을 연결하고 분리했습니다.
- 루트 볼륨과 추가 스토리지의 차이를 구분했습니다.
- 인스턴스를 중지/종료한 후의 영속성 동작을 배웠습니다.
Elastic IP 및 모니터링
- 정적 공용 주소를 위한 Elastic IP를 탐색했습니다.
- 기본 모니터링 개념을 다루었습니다.
- 자동 복구 메커니즘에 대해 배웠습니다.
얻은 기술적 인사이트
애플리케이션 개발 배경에서 EC2를 통해 시스템 수준 관점에서 인프라를 바라볼 수 있게 되었습니다:
- 애플리케이션은 컴퓨트(EC2) 위에서 실행됨
- 스토리지는 EBS에 영속적으로 저장됨
- 접근은 IAM을 통해 제어됨
- 트래픽은 VPC와 보안 그룹을 통해 흐름
- 가용성을 위해 모니터링 및 복구 계획이 필요함
클라우드 엔지니어링은 단순히 배포가 아니라 아키텍처 사고입니다.
회고
AWS를 배우면 배울수록 뛰어난 클라우드 엔지니어는 단순히 코드를 작성하지 않는다는 것을 깨닫게 됩니다. 그들은 기본적으로 확장 가능하고, 보안적이며, 복원력이 있는 시스템을 설계합니다. 한 걸음씩 기반을 다져 나가고 있습니다. 일관성이 진정한 슈퍼파워입니다 💪🐧