글 작성자: 만렙개발자

EC2를 사용하다가 용량이 부족할 때(EC2는 기본적으로 EBS를 사용합니다.),

EBS 용량을 확장하고 싶을 때 이 포스트를 참고하시면 좋습니다.

 

 

Amazon Elastic Block Store(EBS)는 대규모로 처리량과 트랜잭션 집약적인 워크로드 모두를 지원하기 위해 Amazon Elastic Compute Cloud(EC2)에서 사용하도록 설계된 사용하기 쉬운 고성능 블록 스토리지 서비스입니다. 관계형 및 비관계형 데이터베이스, 엔터프라이즈 애플리케이션, 컨테이너화된 애플리케이션, 빅 데이터 분석 엔진, 파일 시스템 및 미디어 워크플로와 같은 다양한 워크로드가 Amazon EBS에 널리 배포됩니다.

 

확장성 또한 EBS의 장점 중 하나입니다!

 

용량을 늘리는 방법은 간단합니다.

 

1. AWS에서 EBS 볼륨 크기 수정

2. bash에서 파티션크기 조정 및 파일시스템 확장 (적용)

1. AWS에서 EBS 볼륨 크기 수정

 

AWS -> EC2 -> Elastic Block Store -> 볼륨(1) -> 원하는 볼륨 클릭 후(2) -> 작업(3) -> 볼륨 수정(4) -> 크기 변경 -> 수정(5)

 

그러면 상태가 노란불(6)로 바뀌면서, modifying, optimizing 과 같은 과정을 거칩니다.

완료가 되는데 시간이 좀 많이 (기존 사용량 440GiB 기준 몇시간;; 8GiB 였을 때는 몇 분?) 소요되었던것 같습니다.

 

완료가 된 후에 2번을 수행합니다.

2. bash에서 파티션크기 조정 및 파일시스템 확장 (적용)

- 파티션 블록이 어떻게 구성되어있는지 확인

lsblk

  (혹시 원하는 EBS가 나타나지 않는 경우, 마운트 필요)

  sudo file -s /dev/xvdf

  sudo mkfs -t xfs /dev/xvdf <- 데이터가 없는 경우에만!

  sudo mkdir /data

  sudo mount /dev/xvdf /data

 

- 파티션 크기 조정
  (여기서는 디바이스 이름과 파티션 번호를 구분해서 입력해야하기 때문에, /dev/xvdf와 1사이에 공백이 있어야합니다!)

sudo growpart /dev/xvdf 1

  (혹시 위의 과정 혹은 파일 시스템 확장에서 에러가 발생할 경우 이 링크 참조: https://stackoverflow.com/questions/24014493/unable-to-resize-root-partition-on-ec2-centos)

  (위 방법으로도 안될 경우 `sudo xfs_growfs -d /data` 시도)

 

- 파티션 블록이 확장되었는지 확인

lsblk

- 파일 시스템 확장
  (여기서는 디바이스 이름과 파티션번호가 연결된 파티션 자체를 입력합니다!)

sudo resize2fs /dev/xvdf1

- EC2에서 인식하는 디스크 용량이 확장되었는지 확인

df -h