EBS란?

Elastic Block Store : EC2 블록 스토리지 볼륨

EC2는 가상 서버라면 EBS는 가상 디스크 이다.

Amazon EBS는 스토리지 볼륨을 생성하고, 스토리지를 Amazon EC2 인스턴스에 연결할 수 있도록 해준다. 한번 연결되면 스토리지 볼륨 맨 위에 파일 시스템을 만들 수 있고, 데이터베이스를 실행할 수 있고, 블록 장치를 사용하는 다른 방법으로 사용할 수 있다. EBS 볼륨은 특정 가용영역에 위치한다. 단일 구성요소의 장애로부터 사용자를 보호하기 위해 자동으로 복제되는 위치에 위치한다. EBS 볼륨은 하나의 물리적 디스크에 저장되지 않는다.

  • EC2가 갖는 블록 형태의 스토리지
  • 애플리케이션의 기본 스토리지로 쓰거나 시스템 드라이브용으로 쓰기 적합
  • 인스턴스 생성시 루트 디바이스 볼륨이 생성되며 사용중에는 언마운트 할 수 없다
  • 인스턴스가 종료 시 루트 EBS 볼륨이 삭제되는 것이 디폴트이다
  • 인스턴스는 여러 볼륨을 마운트할 수 있고 추가 볼륨에 대해서는 사용중이라도 마운트/언마운트가 가능
  • 볼륨은 여러 인스턴스에 마운트할 수 없음
  • EBS를 특정 AZ에서 생성하더라도 다른 AZ의 인스턴스에 즉시 붙힐 수 있다
  • 인스턴스 스토어 볼륨과는 달리 EBS 기반 인스턴스는 중지/ 재시작이 가능함
  • 사용중인 EBS더라도 볼륨유형과 사이즈를 변경할 수 있다 (사이즈 축소는 불가)
  • EC2 인스턴스와 EBS 볼륨은 같은 가용영역에 있어야한다. 왜냐하면 EBS가 하드디스크인데 하드디스크가 멀리 떨어져있으면 딜레이가 생길 것이다

EBS 볼륨 유형

SSD

  • 범용 SSD (GP2) : 시스템 부트 사용가능, 대부분의 워크로드에서 사용
    • 범용, 가격과 성능의 균형을 유지한다
    • 최대 10,000 IOPS의 GB 당 3 IOPS 비율과 3334GiB 이상의 볼륨에 대해 장시간 동안 최대 3000IOPS까지 버스트 할 수있는 기능.
  • 프로비저닝된 IOPS SSD (IO1) : 낮은 지연 또는 높은 처리량 워크로드를 위한 고성능 SSD 볼륨
    • 대규모 관계형 또는 NoSQL 데이터베이스와 같은 I/O 집약적인 애플리케이션을 위해 설계되었다.
    • 10,000 IOPS 이상이 필요할 때 사용
    • 하나의 볼륨당 20,000 IOPS 이상 프로비저닝할수 있다.

Magnetic

  • Throughput Optimized HDD (ST1) : 자주 액세스하고 처리량이 많은 워크로드를 위해 설계된 저렴한 HDD 볼륨
    • 빅데이터
    • 데이터 warehouse
    • 로그 처리
    • 부트 볼륨이 될 수 없다
  • Cold HDD (SC1) : 자주 액세스하지 않는 워크로드를 위해 설계된 최저 비용의 HDD 볼륨
    • 드물게 접근하는 워크로드를 위한 낮은 비용의 저장소
    • 파일 서버
    • 부트 볼륨이 될 수 없다
  • Magnetic (Standard) : 부트 볼륨이 가능하다, 볼륨을 수정할 수 없다
    • 부팅 가능한 모든 EBS 볼륨 유형 중 기가 바이트 당 최저 비용. Magnetic 볼륨은 데이터에 자주 액세스하지 않는 워크로드와 최저 스토리지 비용이 중요한 애플리케이션에 이상적이다.

EBS 볼륨을 다른 가용영역으로 옮길 때

create snapshot을 해주고 —> create volume을 해줄 때 가용영역을 바꿔주면 된다.

스냅샷과 EBS

  • 볼륨은 EBS에 존재한다.

    가상 하드 디스크 - 루트 볼륨은 운영체제가 설치된 C드라이브 같은 곳

  • 스냅샷은 S3에 존재한다

  • 스냅샷은 한 시점의 볼륨의 복사본

  • 스냅샷은 증분할 수 있다 - 마지막 스냅샷 이후 변경된 블록만 추가적으로 S3에 저장된다.

  • 첫 번째 스냅샷일 경우 생성하는데 다소 시간이 걸릴 수 있다.

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

  • 암호화된 스냅샷에서 생성되는 볼륨은 자동으로 암호화된다

  • 암호화되지 않은 EBS에서 암호화된 스냅샷은 생성할 수 없다

  • 암호화되지 않은 스냅샷만 공유 가능하다

  • 루트 디바이스 역할을 하는 EBS 볼륨에 대한 스냅샷을 생성하려면 스냅샷을 생성하기 전에 인스턴스를 중지해야한다

  • 하지만 인스턴스가 실행중일경우 스냅을 할 수 있다

  • EBS 지원 인스턴스 및 스냅샷에서 AMI를 생성할 수 있다

  • 크키 및 스토리지 유형 변경을 포함하여 즉시 EBS 볼륨 크기를 변경할 수 있다

  • 볼륨은 항상 EC2 인스턴스와 동일한 가용영역에 있다

  • EC2 볼륨을 한 AZ/지역에서 다른 AZ/지역으로 이동하려면 스냅 또는 이미지를 촬영한 다음 새 AZ/지역에 복사한다.

RAID 구성

  • RAID 0 : I/O 성능이 내결함성보다 더 중요한 경우
  • RAID 1 : 내결함성이 I/O 성능보다 더 중요한 경우