AWS Solutions 기본 용어
이 문서에서는 AWS Solutions 시험에서 자주 등장하는 용어들을 정리합니다.
다음 용어와 개념들에 대해 간략히 알아보겠습니다.
- EC2
- RDS
- S3
- Route53
- ELB
- CloudFront
- Lambda
- 리전(Region)
- 가용성(Availability)
- 가용 영역(Availability Zone)
- 다중 AZ(Multi-AZ)
- 단일 AZ(Single-AZ)
- 온프레미스(On-premise)
- 마이그레이션(Migration)
EC2(Elastic Compute Cloud)
컴퓨터를 빌려서 원격으로 접속해 사용하는 서비스
EC2 = 아마존 클라우드에서 대여하는 컴퓨터를 의미합니다.
RDS(Relational Database Service)
관계형 데이터베이스 서비스
MySQL, MariaDB 등 여러 관계형 데이터베이스 서비스를 AWS로부터 빌려서 사용합니다.
S3(Simple Storage Service)
스토리지 서비스
사진, 동영상 같은 미디어 파일부터 로그 파일까지 다양한 파일들을 저장할 수 있습니다. S3를 사용하여 HTML/JS/CSS와 같은 정적 에셋을 저장하고, 서빙하여 "정적 웹 사이트 호스팅"도 가능합니다.
Route 53
도메인을 발급하고 관리해주는 서비스
Route 53은 DNS(Domain Name System) 서비스입니다. 함께 알아야 할 개념 및 주요 Route53 기능은 다음과 같습니다.
- DNS: 도메인과 IP 주소를 매핑해주는 서비스
- 레코드: 도메인과 IP 주소를 매핑한 데이터
- 다중 응답 라우팅: 여러 개의 IP 주소를 반환하는 라우팅
- 지리적 위치 기반 라우팅: 사용자의 위치에 따라 IP 주소를 반환하는 라우팅
- 지연 시간 기반 라우팅: 사용자의 지연 시간에 따라 IP 주소를 반환하는 라우팅
- 가중치 기반 라우팅: 가중치에 따라 IP 주소를 반환하는 라우팅
- 장애 조치 라우팅: 장애 발생 시 IP 주소를 변경하는 라우팅
- 헬스 체크: IP 주소의 상태를 확인하는 기능
DNS(Domain Name System)
DNS란 도메인과 IP 주소를 매핑해주는 서비스입니다.
- 도메인(Domain) 특정 컴퓨터와 통신하기 위해서 IP 주소(ex.12.134.122.11)를 사용했습니다.
- 이 IP는 특정 컴퓨터를 가리키는 주소의 역할을 합니다.
- IP 주소는 많은 숫자들로 이루어져 있어서 일일이 외우기 어려웠습니다.
- 기억하기 쉬운 문자로 컴퓨터의 주소를 표현하기에는 한계가 있었습니다.
- 컴퓨터가 처리하기 쉬운 값의 형태는 문자가 아니라 숫자이기 때문입니다.
- 이를 해결하기 위해 문자를 IP 주소로 변환해주는 하나의 시스템(서버)을 만들게 됐습니다.
- 이게 바로 DNS(Domain Name System)입니다.
출처 : What is a DNS Server? | What They Are & How They Work
ELB(Elastic Load Balancer)
트래픽(부하)을 적절하게 분배해주는 장치
트래픽(부하)를 적절하게 분배해주는 장치를 보고 전문적인 용어로 로드밸런서(Load Balancer)라고 부른다. 서버를 2대 이상 가용할 때 ELB를 사용합니다.
ELB의 종류는 다음과 같습니다. ELB 종류를 분류하는 기준은 OSI 계층입니다.
- ALB(Application Load Balancer): HTTP/HTTPS 프로토콜을 지원하며, OSI 7계층(애플리케이션 계층)에서 작동
- NLB(Network Load Balancer): TCP/UDP 프로토콜을 지원하며, OSI 4계층(전송 계층)에서 작동
- GLB(Gateway Load Balancer): IP 프로토콜을 지원하며, OSI 3계층(네트워크 계층)에서 작동
보통 네트워크 앞단에 ELB를 배치하고, 그 뒤에 EC2 인스턴스를 배치합니다.
CloudFront
컨텐츠(파일, 이미지, 동영상 등)를 빠르게 전송하게 해주는 서비스 = CDN = 엣지 로케이션
AWS CloudFront는 일반적인 CDN 서비스로 이해할 수 있습니다.
컨텐츠 전송을 위해 S3 스토리지에 저장된 컨텐츠와도 연동할 수 있습니다.
뿐만 아니라 CloudFront는 AWS의 여러 서비스와도 연동할 수 있습니다.
- EC2
- ALB
- ELB
- API Gateway
- Lambda
예시
us-west-2에 EC2를 생성하고,ap-northeast-2에 CloudFront를 생성하면ap-northeast-2에 있는 사용자가us-west-2에 있는 EC2에 접속하는 것보다ap-northeast-2에 있는 CloudFront에 접속하여 속도를 개선할 수 있습니다.
AWS Lambda
서버리스(Serverless) 컴퓨팅 서비스
서버리스 = 서버가 없다?
- 서버가 없는 것이 아님.
- 서버를 직접 생성·관리하지 않아도 되는 구조이다.
| 기존 방식 (EC2) | AWS Lambda 방식 |
|---|---|
| 서버 인스턴스를 직접 생성 | 서버 생성 불필요 |
| OS 및 환경 설정 필요 | 환경 설정 자동 관리 |
| 확장(Scale) 직접 관리 | 트래픽에 따라 자동 확장 |
| 패치 및 유지보수 필요 | 인프라 유지보수 불필요 |
| 실행 여부와 관계없이 인스턴스 비용 발생 | 실행한 만큼만 비용 지불 |
핵심 특징
- 완전 관리형(Managed Service)
- 이벤트 기반 실행(Event-driven)
- 자동 스케일링
- 짧은 실행 시간에 적합 (최대 15분)
즉, AWS Lambda는 서버를 신경 쓰지 않고 코드 실행에만 집중할 수 있는 서비스입니다.
리전(Region)
AWS 인프라의 가장 큰 지리적 단위
- 전 세계 여러 지역에 리전이 존재
- 각 리전은 물리적으로 분리된 여러 개의 가용 영역(Availability Zone, AZ) 으로 구성
- 리전 간에는 서로 독립적
- 데이터와 리소스는 기본적으로 리전 단위로 관리
- 리전 선택은 지연 시간(Latency), 비용, 법적 규제 등을 고려하여 결정
- 하나의 리전 내 여러 가용 영역(AZ)을 활용하면 고가용성(HA) 구성 가능
가용성(Availability)
가용성(Availability) = 시스템이 서비스를 정상적으로 제공할 수 있는 가능성
- 가용성은 서비스의 정상 가동률(%)로 표시됩니다.
- 장애가 발생할 가능성이 극히 작은 시스템 = 가용성이 높은(고가용성) 시스템
- 반대로 서비스가 다운되는 시간이 긴 시스템을 가용성이 낮은 시스템입니다.
가용 영역 (Availability Zone, AZ)
하나의 리전(Region) 내에서 물리적으로 분리된 데이터 센터 묶음
- 하나의 리전 안에는 여러 개의 AZ가 존재
- 각 AZ는 물리적으로 분리된 위치에 존재
- 독립적인 전원, 네트워크, 냉각 시스템을 보유
- 다른 AZ와는 고속 네트워크로 연결
사용 목적
- 자연재해, 정전, 장애 등으로부터 서비스 보호
- 여러 AZ에 리소스를 분산 배치하여 고가용성(High Availability) 확보 가능
다중 AZ (Multi-AZ)
| 구분 | 단일 AZ (Single-AZ) | 다중 AZ (Multi-AZ) |
|---|---|---|
| 배치 방식 | 하나의 AZ에만 리소스 배치 | 서로 다른 여러 AZ에 분산 배치 |
| 목적 | 비용 절감, 단순한 구조 | 고가용성(HA) 확보 |
| 장애 대응 | 해당 AZ 장애 시 서비스 중단 가능 | 한 AZ 장애 시 다른 AZ에서 지속 운영 |
| 가용성 수준 | 낮음 | 높음 |
| 비용 | 상대적으로 저렴 | 추가 인프라로 인해 비용 증가 |
| 아키텍처 복잡도 | 단순 | 상대적으로 복잡 |
| 운영 난이도 | 낮음 | 장애 조치(Failover) 고려 필요 |
| 유즈 케이스 | 개발/테스트 환경 비핵심 내부 시스템 일시적 프로젝트 | 운영(Production) 환경 고가용성이 필요한 서비스 금융/이커머스 등 중단 허용이 어려운 서비스 |
| 트레이드오프 | 비용 ↓ 대신 가용성 ↓ | 비용 ↑ 대신 가용성 ↑ |
다중 AZ는 고가용성(High Availability)을 위한 구성 방식
다중 AZ(Multi-AZ)란 하나의 리전 내 서로 다른 가용 영역(AZ)에 시스템을 분산 배치하는 아키텍처를 의미합니다.
같은 서비스의 구성 요소를 여러 AZ에 배치하여, 특정 AZ에 장애가 발생하더라도
서비스가 중단되지 않도록 하는 것이 목적입니다.
- 하나의 리전 내에서만 구성
- AZ 간 물리적으로 분리되어 있다고 합니다.
- 장애 발생 시 자동 또는 빠른 장애 조치(Failover) 가능
- 고가용성(HA) 보장을 위해 사용
- EC2 인스턴스를 서로 다른 AZ에 배치 + 로드 밸런서 연결
- RDS Multi-AZ 구성 (기본 DB + 대기 DB 자동 동기화)
온프레미스 On-premise와 마이그레이션 Migration
클라우드의 맥락에서 마이그레이션(Migration)은 특정 환경에서 다른 환경으로 이동하는 걸 의미합니다.
- 온프레미스 환경은 일반적으로 회사에서 직접 서버와 인프라를 구축하고 운영하는 환경을 의미합니다.
- 따라서 온프레미스 환경에서 AWS 환경으로 마이그레이션하는 것은 온프레미스 환경의 서버와 인프라를 AWS 클라우드 환경으로 이동하는 것을 의미합니다.
온프레미스에서 AWS로 마이그레이션할 때 사용하는 AWS 서비스와 상황은 다음과 같습니다:
| 서비스 | 설명 | 주요 유즈케이스 |
|---|---|---|
| AWS Application Migration Service (MGN) | 온프레미스 서버를 AWS로 리프트 앤 시프트(Lift & Shift) 방식으로 마이그레이션 | 기존 물리/가상 서버를 EC2로 그대로 이전 데이터센터 폐쇄(DC Exit) 대규모 서버 이전 프로젝트 |
| AWS Database Migration Service (DMS) | 데이터베이스를 안전하게 AWS로 이전하거나 서로 다른 DB 엔진 간 마이그레이션 지원 | 온프레미스 DB → RDS/Aurora 이전 상용 DB → 오픈소스 DB 변환 최소 다운타임 DB 이전 |
| AWS DataSync | 온프레미스 스토리지와 AWS 스토리지(S3, EFS 등) 간 대용량 데이터 전송 자동화 | 파일 서버 → S3 이전 백업 데이터 이전 지속적 데이터 동기화 |
| AWS Snow Family (Snowball, Snowmobile 등) | AWS에서 제공하는 물리 장비를 이용해 대용량 데이터를 오프라인으로 전송 | 수십~수백 TB 이상 데이터 이전 네트워크 대역폭이 부족한 환경 원격 지역 데이터 이전 |