본문 바로가기
🌴 DevOps/Cloud

[EBS] EBS 볼륨이란? 볼륨생성/연결하고, 루트 디바이스 정보확인

by 카프리썬_ 2020. 6. 8.
728x90

EBS (Elastic Block Store)

:EC2 인스턴스에서 디스크처럼 사용할 수 있는 '블록'수준 스토리지 

하나의 인스턴스 또는 여러개 인스턴스에 동시에 연결할 수 있는 AWS의 외장하드디스크

 

특징 

  • 필요한 용량에 맞게 구입/생성/제거 가능 (필요한 만큼 가상의 볼륨을 잡고 과금)
  • '스냅샷'  : EBS볼륨의 백업, AZ에 중복저장 가능 (증분식백업 : 마지막스냅샷 이후 변경된 볼륨의 블록만 저장)
  • '암호화' : AWS KMS 마스터키를 사용해서 암호화된 볼륨생성 가능
  • '지속성' : 인스턴스 수명에 관계없이 유지 (즉, 인스턴스 중지/종료해도 삭제해도 데이터유지가 기본)
  • 종료시 삭제 옵션 
    활성화 :인스턴스 종료시 연결된 볼륨도 같이 삭제
    비활성화 : 인스턴스 종료시 연결된 볼륨은 삭제되지 않고 분리됨(available상태)

 

 

언제 사용?

  • 데이터에 빠르게 액세스 해야하고, 장기간 지속하는 데이터를 저장해야할 경우
  • 인터넷에 대한 액세스가 제공되지 않는다 
  • USB처럼 EC2에 연결해서 사용가능
  • 사용자가 지우기 전 까지 영구적으로 보존

Volume

EBS로 생성한 디스크 하나하나 저장 단위

그래서 EBS가 하나의 디스크 디바이스라면, 그 단위를 볼륨이라고 부르기 때문에 EBS볼륨이라고 함
(디스크장치인 USB 하나가 시스템에 연결하면 볼륨으로 인식되는 것처럼)

 

그래서 EBS볼륨이라고 함

 

 스토리지(디스크)/ 파티션/볼륨/파일시스템 개념 보고오기 

https://pearlluck.tistory.com/179

 

디스크(Disk) /파티션(Partition) / 볼륨(Volum) 용어정리

1. 디스크(Disk) 시스템에 장착되어 있는 물리적인 저장장치(자기 디스크) 둥근원반에 자성을 가진 물체를 입히고, 표면에 자력을 이용해서 데이터를 기록하고, 자기장의 변화를 통해서데이터를 �

pearlluck.tistory.com

 

EBS (Elastic Block Store) 확인

1) 처음에 인스턴스 생성할때 -새볼륨추가

 

볼륨유형 : 인스턴스 스토어 vs EBS 

ebs 

영구적 스토리지

인스턴스의 수명과 무관하게 유지(인스턴스 Stop해도 유지, terminated 되면 데이터유지/삭제옵션 존재)

호스트 외부에 존재하는 스토리지

하나의 인스턴스에 attach EBS 볼륨을 분리해서 다른 인스턴스에 연결가능

인스턴스 스토어

휘발성 스토리지

인스턴스에 직접 연결되서 EBS보다 빠름

인스턴스가 활성화 되어 있는 동안에만 유지(인스턴스 stop/terminate 되면 데이터삭제)

호스트 로컬내부에 존재하는 스토리지

하나의 인스턴스가 가진 인스턴스 스토어를 분리해서 다른 인스턴스에 연결불가

 

 

[Step1. 볼륨생성]

(1) 볼륨유형

SSD

범용 SSD (gp2) : 3IOPS당 1GB 

프로비저닝된 IOPS(io1) : 내가 요구하는 IOPS를 수치로 적용하면 그에 맞는 IOPS제공 (디비같은 집중적인 app에 필요)

HDD

콜드 HDD(sc1)

처리량에 최적화된 HDD(st1)

SSD에 비해 IOPS가 상대적으로 좋지 않음
속도는 상관없지만, 스토리지가 상대적으로 많이 필요할 때 사용

(2) 크기(GiB) 

1GiB당 3IOPS 

*IOPS : input/output per Second (초당 io 작업수)

볼륨이 지원하는 최대 IOPS : 3000 

(3) 가용영역 

단, EBS 볼륨을 연결하려는 인스턴스랑 새로 생성한 EBS볼륨이랑 같은 가용영역

(4) 스냅샷 : 볼륨 백업

 

볼륨상태

IN-USE : 볼륨생성하고 EC2에 Attach한 상태

Available : 볼륨을 새로 생성했지만, EC2에 연결하지 않은상태

 

[Step2. 볼륨연결]

인스턴스 : 볼륨을 mount 시킬 인스턴스 (같은 AZ)

디바이스 : 인스턴스에서 인식할 장치명

하나의 EBS 디스크 디바이스를 더 추가한다면 디스크에 따라서 xvda,xvdb,xvdc (a/b/c...)

디스크를 파티션으로 나눌꺼라면 파티션에 따라서 xvda1, xvda2, xvda3 (1/2/3..)

 

하지만, 볼륨을 연결했다고 해도 바로 df에서 확인할 수 없음

df 명령어는 파일시스템의 사용량 확인 명령어

볼륨을 처음 생성했을때는 파일시스템 조차도 없는 상태! 

 

그래서 지금까지 작업은 USB 같은 하나의 저장장치를 추가한 것 일뿐, USB 자체는 빈깡통

이제 USB가 데이터를 담을 수 있는 파일시스템을 만들어줘야 함 

 

 

루트 디바이스 정보확인

1) 현재 파일시스템 확인 (df -h)  

2) 현재 블록장치 목록확인 (lsblk)

 

EC2를 생성할때 EBS로 생성한 루트디바이스 (dev/xvda) 

디스크 하나의 분할 단위를 하나의 파티션으로 가지고 있음 (dev/xvda1)

 

3) 파티션 정보확인 (fdisk -l [장치명])

루트디바이스 전체(xvda)의 파티션정보

루트디바이스의 전체 파티션 정보  : linux 파일시스템을 위한 파티션 / 부팅을 위한 파티션

 

루트디바이스 파티션(xvda1)의 파티션정보

4) 파일시스템 내용확인(file) 

루트디바이스 전체(xvda)의 파일시스템

전체 루트디바이스 자체가 가지고 있는 파일시스템 : 인스턴스 부팅시 사용된 이미지 저장볼륨

 

루트디바이스 파티션(xvda1)의 파일시스템

파티션 하나가 가지고 있는 파일시스템 : 리눅스 파일시스템을 저장한 볼륨

 

 

 

 

 

 

출처) 인스턴스 스토어 vs 볼륨 차이

https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/RootDeviceStorage.html

정리) 리눅스명령어 : df/du -sh [디렉토리명] / fdisk -l [장치명]/ lsblk

https://hiseon.me/linux/linux-disk-size-check/

추가) 루트 디바이스 vs 블록 디바이스(ebs)

https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/ComponentsAMIs.html#storage-for-the-root-device

추가) 루트블록 사이즈 늘리기 가능? 블록디바이스 사이즈 늘리기 가능?

https://blog.lael.be/post/7735

 

 

출처

https://galid1.tistory.com/360?category=765372

 

AWS - EBS(Elastic Block Storage) 추가 및 사용방법

EBS란? - EBS란 Amazon EC2 인스턴스에 디스크처럼 사용할 수 있는 Block Storage이다. 자세한 내용 EBS란? - http://galid1.tistory.com/220 EBS 확인 1) EC2 대시보드의 좌측 하단의 ELASTIC BLOCK STORAGE탭을..

galid1.tistory.com

 

반응형