개요
이번 프로젝트에 인프라를 담당하면서 Docker부터 해서 AWS까지 하나하나씩 알아가야 할 필요가 있었다. 일단 AWS의 EC2를 통해 클라우드 기반의 가상서버를 구축할 필요가 있어서 EC2에 대한 내용을 먼저 정리하고자 한다.
1. EC2란?
AWS EC2(Elastic Compute Cloud)는 아마존 웹 서비스에서 제공하는 클라우드 기반의 가상 서버이다.
즉, 사용자가 직접 물리적인 서버를 구매하거나 구축하지 않고! 클라우드 상에서 손쉽게 서버를 생성하고 관리할 수 있도록 하는 서비스이다.
EC2를 이용하면 컴퓨팅 자원을 탄력적으로 늘이고, 줄일 수 있으며 이렇게 사용한 만큼만 비용을 지불하는 온디맨드형 인프라의 구축이 가능하다.
2. EC2 특징
1) 탄력적 확장성(Elasticity)
-> 애플리케이션의 트래픽이 증가하거나 감소하는 상황에 맞춰서 서버 인스턴스의 규모를 조정할 수 있다.
-> 자동 스케일링 기능과 로드 밸런싱을 함께 활용하면, 사용자는 서버 자원을 필요에 따라 동적으로 늘리거나 줄일 수 있어서 인프라 운영의 효율성이 극대화된다.
2) 다양한 인스턴스 타입
-> EC2는 CPU, 메모리, 스토리지, GPU 등 다양한 자원 구성비를 가진 인스턴스 타입을 제공한다.
-> 예를 들면, 일반적인 웹 애플리케이션 서버에는 범용 타입인 t2, t3 시리즈/ 머신러닝&딥러닝 연산에는 GPU 기반 p 시리즈를 선택할 수 있다.
-> 다양한 인스턴스 타입을 바탕으로 애플리케이션 특성에 맞는 서버 자원을 유연하게 선택할 수 있도록 한다.
3) 온디맨드, 예약, 스팟 등 유여한 과금 방식
-> 온디맨드(On-Demand)
: 필요한 시간만큼만 비용을 지불하는 방식, 초기 비용 없이 유연하게 시작 가능하다.
-> 예약 인스턴스
: 특정 기간 동안 인스턴스를 예약함으로써 장기 사용 시 저렴한 비용을 얻을 수 있다.
-> 스팟 인스턴스
: AWS의 유휴 컴퓨팅 파워를 경매 방식으로 저렴하게 활용하는 방법이다.
4) 광범위한 글로벌 인프라
-> AWS는 전 세계에 분산된 리전과 가용 영역을 보유하고 있다. 이를 통해 지리적으로 분산된 인프라 설계, 재해 복구, 낮은 지연시간 확보, 지역별 법규 및 규제 준수 등이 가능해진다.
5) 보안과 컴플라이언스
-> AWS는 보안에 대한 책임 공유 모델을 운영한다.
-> IAM, Security Groups, NACL, Key KMS 등 다양한 보안 서비스와 기능을 지원한다.
3. EC2의 주요 구성 요소
1) 인스턴스
-> 실제 동작하는 가상 서버로, 선택한 AMI(Amazon Machine Image)를 기반으로 생성된다.
2) AMI
-> EC2 인스턴스 실행에 필요한 OS, 애플리케이션, 설정 등이 미리 포함된 템플릿이다.
-> AWS가 제공하는 기본 AMI, 서드파티 제공 AMI, 사용자가 직접 만든 커스텀 AMI 등을 사용할 수 있다.
3) 스토리지 옵션
-> EBS(Elastic Block Store)나 EC2 인스턴스 스토어를 통해 스토리지를 할당받을 수 있다.
-> EBS는 네트워크로 연결되는 블록 스토리지로, 스냅샷 백업과 크기 조정이 가능하며 인스턴스 종료 후에도 유지가 가능하다.
-> 인스턴스 스토어는 인스턴스의 물리적 호스트에 직접 연결된 일시적 스토리지로, 고성능이지만 인스턴스 중단 시 데이터가 소실될 수 있으니 주의해야 한다.
4) 네트워킹
-> VPC(Virtual Private Cloud) 안에서 인스턴스를 배치하고, 서브넷, 라우팅 테이블, 인터넷 게이트웨이, NAT 게이트웨이 등을 통해 세분화된 네트워크 아키텍처를 구성할 수 있다.
'Infra > AWS' 카테고리의 다른 글
[AWS] Elastic Network Interface & Elastic IP (0) | 2025.01.04 |
---|