AWS(Amazon Web Service)
AWS(Amazon Web Service)는 아마존닷컴의 클라우드 컴퓨팅 서비스이다.
1. EC2(Elastic Compute Cloud)
EC2(Elastic Compute Cloud)는 AWS의 가상 서버 서비스로, 사용자가 원하는 크기와 성능의 가상 머신(VM, Virtual Machine)을 생성하고 관리할 수 있다.
EC2의 주요 특징:
- 확장성: 필요에 따라 서버의 크기(인스턴스 타입)을 조절할 수 있음
- 유연성: 다양한 운영체제를 선택할 수 있으며, 맞춤형 AMI(Amazon Machine Image)를 사용할 수 있음
- 결제 방식: 온디맨드, 예약 인스턴스, 스팟 인스턴스 등 다양한 결제 옵션을 제공
- 고가용성: 여러 리전과 가용 영역(Availablity Zone)을 활용하여 고가용성을 보장
*인스턴스(Instance): 가상 서버
EC2 구매 옵션
- On-Demand 인스턴스: 컴퓨팅을 사용한 만큼 비용 지불
- Reserved 인스턴스: 1년 또는 3년 단위 계약금 지불 / 한번에 전체 구매
- Spot 인스턴스: 사용되지 않는 EC2 용량 경매, 가격은 수요와 공급의 법칙에 따라 결정
2. VPC(Virtual Private Cloud)
VPC(Virtual Private Cloud)는 AWS에서 사용자에게 제공하는 가상 네트워크 환경이다.
VPC의 주요 특징:
- 네트워크 분리: 사용자만의 독립된 네트워크 공간을 구성할 수 있음
- 서브넷 구성: 퍼블릭 서브넷과 프라이빗 서브넷을 설정하여 인프라를 세분화할 수 있음
- 네트워크 제어: 보안 그룹과 네트워크 ACL(Access Control List)을 통해 트래픽을 제어할 수 있음
- VPN 연결: 온프레미스 네트워크와의 안전한 연결을 위해 VPN을 구성할 수 있음
VPC 생성 과정
1) Region, IP 대역 결정
Region 선택
- AWS는 전 세계 여러 지역에 리전을 운영하고 있다. 각 리전은 물리적으로 분리된 데이터 센터 클러스터를 의미한다.
- VPC를 생성한 리전을 선택한다. 일반적으로 사용자의 지리적 위치, 지연 시간 등을 고려해서 선택.
IP 대역(CIDR 블록) 결정
- VPC 내에서 사용할 IP 주소 범위를 CIDR(클래스 없는 도메인 라우팅) 형식으로 결정
- 예를 들어, '10.0.0.0/16'은 65,536개의 IP 주소를 포함하는 대역을 의미한다. 이는 VPC 내에서 사용할 수 있는 주소 공간을 정의.
2) 가용영역(AZ)에 서브넷(Subnet) 생성
가용영역(AZ) 선택
- 리전 내의 가용영역은 물리적으로 분리된 데이터 센터를 의미하며, 각 가용영역은 독립된 전력, 냉각, 네트워크를 갖추고 있음
- 고가용성을 위해 여러 가용영역에 서브넷을 분산하는 것이 일반적
서브넷 생성
- 서브넷(Subnet)은 VPC 내에서 IP 주소 범위를 더 작은 단위로 나누는 것.
- 퍼블릭 서브넷과 프라이빗 서브넷 생성
3) 라우팅 설정
라우팅 테이블 생성 및 설정
- 라우팅 테이블은 네트워크 트래픽이 어디로 가야하는지를 정의하는 규칙 모음이다.
- 기본 라우팅 테이블이 자동으로 생성되지만, 필요에 따라 추가 라우팅 테이블을 생성할 수 있음
퍼블릭 서브넷용 라우팅 테이블 설정
- 퍼블릭 서브넷의 경우, 인터넷 게이트웨이를 통해 인터넷과 연결됨
- 라우팅 테이블에 '0.0.0.0/0' (모든 IPv4 트래픽) 경로를 추가하고, 대상으로 인터넷 게이트웨이를 설정
프라이빗 서브넷용 라우팅 테이블 설정
- 프라이빗 서브넷은 인터넷 접근이 필요하지 않으므로, 기본 라우팅 테이블을 사용할 수 있음
- 필요에 따라 NAT 게이트웨이를 설정하여 아웃바운드 인터넷 접근을 허용할 수 있음
4) 트래픽 통제(In/Out)
보안 그룹(Security Group) 설정
- 보안 그룹은 인스턴스 레벨에서 트래픽을 제어한다.
- 인바운드(Inbound) 규칙과 아웃바운드(Outbound) 규칙을 정의하여 허용할 트래칙을 설정
네트워크 ACL(Access Control List) 설정
- 네트워크 ACL은 서브넷 레벨에서 트래픽을 제어한다.
- 보안그룹보다 더 구체적인 트래픽 제어가 가능하다.
3. EBS(Elastic Block Store)
EBS(Elastic Block Store)는 EC2 인스턴스에 연결할 수 있는 블록 스토리지 서비스이다.
EBS의 주요 특징:
- 지속성(비휘발성): 인스턴스가 종료되어도 데이터가 유지됨
- 성능 옵션: 다양한 성능 계층(범용 SSD, 프로비저닝된 IOPS SSD, 스루풋 최적화 HDD 등)을 제공
- 스냅샷: EBS 볼륨의 스냅샷을 생성하여 데이터 백업 및 복원을 쉽게 할 수 있음
- 암호화: 데이터 보안을 위해 EBS 볼륨에 암호화를 적용할 수 있음
AWS Storage Type
AWS Storage Service
Volume Type
볼륨(Volume): 가상 디스크
특성 | HDD | SSD |
속도 | 느림 | 빠름 |
가격 | 저렴 | 비쌈 |
내구성 | 충격에 민감 | 충격에 강함 |
소음 | 있음 | 없음 |
발열 | 상대적으로 많음 | 적음 |
수명 | 긴 수명 | 쓰기 사이클 제한 |
용량 | 대용량 제공 가능 (저렴한 비용) | 용량 대비 비용이 높음 |
EBS Snapshot
EBS 스냅샷은 Amazon EBS(Elastic Block Store) 볼륨의 특정 시점에 대한 백업이다. 스냅샷은 S3(Simple Storage Service)에 저장되며, EBS 볼륨의 데이터를 장기적으로 보관하고 복원하는 데 사용된다.
주요 특징
- 증분 백업: 최초 스냅샷 이후, 추가로 생성된 스냅샷은 변경된 데이터 블록만 저장한다. 이는 스토리지 공간을 절약하고 스냅샷 생성 시간을 단축한다.
- 복원 기능: EBS 스냅샷을 사용하여 새로운 EBS 볼륨을 생성하거나 기존 볼륨을 복원할 수 있다.
- 자동 스냅샷: AWS Data Lifecycle Manager를 통해 스냅샷 생성 및 삭제를 자동화할 수 있다.
사용 사례
- 백업 및 복구: 주기적으로 스냅샷을 생성하여 데이터 손실 시 복구할 수 있다.
- 데이터 이동: EBS 스냅샷을 통해 다른 리전으로 데이터를 쉽게 이동할 수 있다.
- 디버깅 및 테스트: 특정 시점의 데이터를 저장하여 테스트 환경을 구성할 수 있다.
AMI(Amazon Machine Image)
AMI는 EC2 인스턴스를 시작하는 데 필요한 정보를 포함하는 템플릿이다. 운영체제(OS) + System 서버 + Application이 묶여 있는 형태.
주요 특징
- 복제 및 배포: AMI를 사용하여 동일한 설정의 여러 인스턴스를 쉽게 시작할 수 있다. 이는 인프라 확장 시 유용하다.
- 유형: AMI는 크게 퍼블릭 AMI, 개인 AMI, 마켓플레이스 AMI로 나뉜다. 퍼블릭 AMI는 AWS에서 제공하거나 다른 사용자가 공유한 것이며, 개인 AMI는 사용자가 직접 생성한 것이다. 마켓플레이스 AMI는 AWS 마켓플레이스에서 구매할 수 있는 상용 소프트웨어를 포함한다.
- 생성 방법: 사용자는 실행 중인 인스턴스에서 AMI를 생성할 수 있다. 이는 현재 상태를 그대로 복제하여 새로운 인스턴스를 쉽게 시작할 수 있게 한다.
4. S3
S3는 AWS의 객체(Object) 스토리지 서비스로, 대용량 데이터를 안전하게 저장하고 관리할 수 있다.
S3의 주요 특징:
- 확장성: 사실상 무제한의 저장 공간을 제공
- 내구성: 매우 높은 내구성(99.999999999%)을 보장하여 데이터 손실 위험을 최소화
- 다양한 사용 사례: 데이터 백업, 빅 데이터 분석, 정적 웹사이트 호스팅, 파일 공유 등 다양한 용도로 사용할 수 있음
- 액세스 관리: 버킷 정책, IAM(Identity and Access Management) 정책을 통해 접근 제어를 할 수 있음
- 라이프사이클 관리: 객체의 라이프사이클 정책을 설정하여 자동으로 데이터를 아카이빙하거나 삭제할 수 있음
S3 Bucket
S3 Bucket은 Object를 저장하는 컨테이너로, 저장소 역할은 한다. Object는 반드시 하나의 Bucket에 속해야 하며, Bucket에 저장할 수 있는 Object는 무제한이다.
*Object(객체)
객체는 S3에서 저장되는 기본 단위로, 데이터 파일 자체와 그에 대한 메타데이터로 구성된다.
*Key(키)
키는 객체를 S3 버킷 내에서 고유하게 식별하는 문자열로, 키가 객체의 '이름'역할을 한다.
S3 스토리지 클래스
'IT 인프라' 카테고리의 다른 글
[클라우드] AWS 모니터링 - CloudWatch (0) | 2024.05.28 |
---|---|
[클라우드] AWS 고가용성 구현 - Region, AZ, ELB, ASG (0) | 2024.05.28 |
[클라우드] 가상화 및 클라우드 (0) | 2024.05.27 |
[IT 인프라] 클라우드(Cloud) (0) | 2024.05.13 |
[IT 인프라] 온프레미스(On-premise) (0) | 2024.05.13 |