sungwony

[AWS]EC2 - 1/2 본문

cloud & devops/amazon web service

[AWS]EC2 - 1/2

일상이상삼상 2019. 11. 25. 00:39

이 글은 Udemy의 AWS Certified Solutions Architect - Associate 2019 강의를 개인 학습용도로 정리한 글입니다


EC2란 무엇인가?

 

Amazon Elastic Compute Cloud(Amazon EC2)는 클라우드 상의 컴퓨터 용량을 가변적으로 제공하는 웹 서비스이다. Amazon EC2는 새로운 서버 인스턴스를 획득하는거나 실행하는데 필요한 시간을 줄이고 서버의 용량을 신속하게 확장시키거나 축소시킨다.

 

EC2의 가격 모델

 

On Demand

: 시간별(또는 초 단위)로 고정된 비율을 지불한다.

- 선불 또는 장기 약정없이 Amazon EC2의 저렴한 비용과 유연성을 원하는 사용자

- 갑작스럽거나 예측할 수 없는 부하 발생에도 중단할 수 없는 어플리케이션

- Amazon EC2에서 처음으로 개발 또는 테스트하는 어플리케이션

 

Reserved

: 예약된 용량을 제공하며 인스턴스의 시간별 과금을 확연히 줄여준다. 1년 또는 3년 기간으로 계약한다.

- 꾸준하고 사용량을 예측할 수 있는 어플리케이션

- 사용량 예약이 필요한 어플리케이션

- 사용자는 선결제를 통해 비용을 절감

- Standard Reserved instances

  : 최대 75%까지 절감된 on demand 인스턴스를 제공한다. 선불지급이 크고 계약기간이 길 수록 디스카운트도 커진다.

- Convertible Reserved Instances

  : 교환으로 인해 가치가 동일하거나 더 높은 예약 인스턴스가 생성되는 한 RI 속성을 변경할 수있는 온 디맨드 기능을 최대 54% 할인

- Scheduled Reserved Instances

  : 타임 창을 통해 예약 실행. 이 옵션은 예측가능한 반복적인 스케쥴에 사용량 예약을 매칭하도록 허용한다.

 

Spot

: 용량에 대해 원하는 가격으로 입찰 할 수 있으므로 응용 프로그램에 유연한 시작 및 종료 시간이있는 경우 훨씬 더 많은 비용을 절약 할 수 있다.

- 유연한 시작과 종료 시간을 갖는 어플리케이션

- 매우 낮은 컴퓨팅 가격에서 실현가능한 어플리케이션

- 방대한 추가 사용량이 긴급하게 필요한 사용자

 

Dedicated Hosts

: 사용자 전용의 물리적인 EC2 서버이다. 서버 바운드 소프트웨어 라이센스를 사용할 때 비용을 절감할 수 있게 해준다.

- 멀티 테넌트 가상화를 지원하지 않을 수 있는 규제 요구 사항에 유용

- 멀티 테넌트 또는 클라우드 배포를 서포트하지 않는 라이센스에 유용

- 온디멘드로 구매할 수 있다.

- 온디멘드 대비 최대 70% 할인하여 예약 구매할 수 있다.

 

EC2 인스턴스 타입

 

F1 - Field Programmable Gate Array

I3 - High Speed Storgae

G3 - Graphics Intensive

H1 - High Disk Throughput

T3 - Lowest Cost, General Purpose

D2 - Dense Storage

R5 - Memory Optimized

M5 - General Purpose

C5 - Compute Optimized

P3 - Graphics/General Purpose GPU

X1 - Memory Optimized

Z1D - High compute capacity and a high memory footprint

A1 - Arm-based workloads

U-6tb1 - Bare Metal

 

Termination Protection은 최초 꺼져있으며 반드시 이것을 켜두어야 한다.

EBS-backed 인스턴스에서 인스턴스가 종료 될 때 루트 EBS 볼륨을 삭제하는 것이 기본 동작이다. 이것을 변경해서 계속해서 유지시킬 수 있다.

기본 AMI인 EBS Root volume은 암호화 할 수 없다. 써드파티 도구(bit locker 등과 같은)를 이용해서 root volume을 암호화 할 수 있고 또한 AWS 콘솔 에서 AMI를 생성할 때 또는 API를 사용할 때 가능하다.

추가된 볼륨은 암호화가 가능하다.

 

Security Group

 

모든 인바운드 트래픽은 기본적으로 블락된다.

모든 아웃바운드 트래픽은 기본적으로 허용된다.

Security Group 변경은 즉시 반영된다.

Security Group에서 EC2 인스턴스를 얼마든지 가질 수 있다.

EC2 인스턴스에 다수의 security group을 설정할 수 있다.

Security Group은 STATEFUL하다.

트래픽을 허용하는 인바운드 규칙을 만들면 해당 트래픽이 자동으로 다시 허용된다.

Security Group을 사용하여 특정한 IP 주소를 블락할 수 없다. 그 대신 네트워크 ACL(Access Control Lists)를 사용하여 특정한 IP 주소를 블락할 수 있다.

허용에 대한 규칙을 명시할 수 있지만 반대로는 할 수 없다.

 

EBS란 무엇인가?

 

Amazon Elastic Block Store(EBS)는 AWS 클라우드의 Amazon EC2 인스턴스에서 사용할 수 있는 영구적인 블럭 저장소 볼륨을 제공한다. 각각 Amazon EBS 볼륨은 컴포넌트 실패를 방지하기 위해 사용가능한 Zone에 자동으로 복제되어 고 가용성과 내구성을 제공한다.

 

5가지 타입의 EBS 저장소

 

General Purpose (SSD)

: 다양한 트랜젝션 업무를 위한 가성비가 좋은 SSD 볼륨

Provisioned IOPS (SSD)

: 미션 크리티컬한 어플리케이션을 위해 디자인된 고성능 SSD 볼륨

Throughput Optimised Hard Disk Drive

: 빈번한 접근과 집중처리를 위한 저 비용의 HDD 볼륨

Cold Hard Disk Drive

: 낮은 접근빈도 업무를 위해 고안된 가장 낮은 비용의 HDD 볼륨

EBS Magnetic

: 이전 세대의 HDD

 

Volume & Snapshot

 

Volume은 EBS에 존재하며 EBS를 가상 하드디스크로 생각하자.

Snapshot은 S3에 존재하며 Snapshot을 디스크의 이미지로 생각하자.

Snapshot은 특정 시간에서의 Volume의 복사본이다.

Snapshot은 증가한다(체크섬). 이것의 의미는 이전 Snapshot을 만들고 다시 Snapshot을 만들 때 오직 변화된 블럭만이 S3로 이동된다. 그렇기 때문에 만약 첫번째 스냅샷이라면 생성에 어느정도 시간이 소요된다.

Root device 역할을 하는 Amazon EBS volume을 위해 Snapshot을 생성하려면 Snapshot을 생성하기 전에 인스턴스를 종료해야 한다. 작업에 영향을 받을 수 있기 때문이다. 그러나 인스턴스가 동작하는 동안 Snapshot을 생성하는 것도 가능하다.

AMI(Amazone Machine Image)는 Volume과 Snapshot으로 부터 생성할 수 있다.

EBS volume 크기 변화는 즉시 가능하다. 크기와 스토리지 타입 변화 모두 인스턴스의 종료 없이 가능하다.

Volume은 항상 EC2 인스턴스와 동일한 zone에 존재한다.

* EC2 Volume을 이동시키는 방법 

1) EC2 volume을 zone에서 다른 zone으로 이동시키기 위해 Snapshot을 생성하고 Snapshot으로 부터 AMI를 생성한 뒤 새로운 zone에서 AMI를 사용하여 EC2 인스턴스를 실행한다.

2) EC2 volume을 하나의 region에서 다른 region으로 이동시키기 위해 Snapshot을 생성하고 Snapshot으로 부터 AMI를 생성한 뒤 AMI를 현재 region에서 다른 region으로 복사한다. 그런뒤 복사된 AMI를 실행하여 EC2 인스턴스를 새로운 region에서 실행한다.

 

AMI 타입 (EBS vs Instance Store)

 

AMI 기본 선택요소

Region(Region과 사용가능한 Zone)

운영체제

아키텍처(32 bit or 64 bit)

실행 권한

Root Device 저장소(Root Device 볼륨)

- 인스턴스 저장소(단기 저장소)

- EBS Backed 볼륨

 

AMI는 Amazon EBS에 의한 backed와 Instance Store에 의한 backed 모두 분류된다.

EBS Volume : AMI에서 시작한 인스턴스의 루트 디바이스는 Amazon EBS 스냅 샷에서 생성 된 Amazon EBS 볼륨이다.

Instance Store Volume : AMI에서 시작한 인스턴스의 루트 디바이스는 Amazon S3에 저장된 템플릿으로 부터 생성된 Instance Store 볼륨이다.

 

인스턴스 저장소(Instance Store) 볼륨은 임시 저장소(Ephemeral Storage)라고도 불린다.

인스턴스 저장소 볼륨은 멈출(stop)수 없다. 만약 호스트 실패가 발생하면 데이터를 잃게된다.

EBS backed 인스턴스는 멈출수 있다. 만약 멈추더라도 인스턴스의 데이터가 사라지지 않는다.

인스턴스 저장소와 EBS Backed 인스턴스 모두 재기동(reboot) 할 수 있으며 데이터를 잃지 않는다.

기본적으로 ROOT 볼륨은 중단(terminate)될 경우 삭제된다. 그러나 EBS 볼륨은 AWS로 하여금 root device volume을 유지시키도록 할 수 있다.

 

Root Device 볼륨 암호화 & 스냅샷

 

암호화된 볼륨의 스냅샷은 자동으로 암호화된다.

암호화된 스냅샷에서 복원한 볼륨은 자동으로 암호화된다.

스냅샷을 공유는 오직 암호화 되지 않은 상태에서만 가능하다.

이런 스냅샷은 다른 AWS 계정 또는 일반 사용자에게 공유할 수 있다.

EC2 인스턴스를 생성하여 root device 볼륨을 암호화 할 수 있다.

- 암호화 되지않은 root device 볼륨의 스냅샷을 생성한다.

- 스냅샷을 복사하고 암호화 옵션을 선택한다.

- 암호화된 스냅샷으로 부터 AMI를 생성한다.

- AMI를 사용하여 암호화된 인스턴스를 새로 실행한다.

'cloud & devops > amazon web service' 카테고리의 다른 글

[AWS] Database  (0) 2019.12.20
[AWS] EC2 2/2  (0) 2019.12.07
[AWS] S3  (0) 2019.11.17
[AWS] IAM(Identity Access Management)  (0) 2019.11.17
[AWS] Solution Architect Associate 자격증 준비  (0) 2019.10.16