AWS EC2 용량 부족 디스크 확장

denver·2021년 12월 3일
2

간혈적으로 서비스 되고 있는 웹 사이트가 뻗는 경우가 있음.
다양한 원인이 있지만(보안그룹 이라던지.. 등) 지금의 경우에는
서버 디스크 용량이 꽉 차서 해당 웹 서버가 뻗어 버리는 경우.

그래서 어떻게 하면 될까?

AWS EC2 - Elastic Block Store - 볼륨 - 해당 인스턴스 볼륨 수정

원하는 볼륨 크기 지정

리스트에서 늘어난 크기로 적용 됐는지 확인 후, 인스턴스 서버에 접속
일반적으로 운영체제를 설치 시, 파티션을 나누는데
예를 들어 하드가 50G 였는데 50G를 추가로 늘렸다고 해서
현재 인스턴스 용량이 늘어난건 아니다.
쓰고 있는 드라이브가 D드라이브 라고 가정을 한다면
추가로 들어온 50G를 적절히 할당을 해주어야 사용이 가능하다

서버에 접속을 해서 아래 명령어를 쳐보면
xvda 디스크가 16G로 늘어나 있는 것을 볼 수 있다
이제 현재 사용 중인 xvda1에도 디스크 할당을 해주자!

$ lsblk

명령어로 확장하자
⚠️  xvda1에 사용가능 용량이 없는 경우에는 에러가 날 수 있다.
df -h 명령어로 용량 확인 해보고 용량이 부족하다면 필요 없는 로그 같은 파일을
제거하여 용량을 일단 확보하여야 한다
(필요 없는 파일 제거 관련된 부분은 아래 참고)

다시 lsblk 명령어를 치면
xvda랑 xvda1 이랑 크기가 16gb로 똑같아진 걸 볼 수 있다
명령어로 확장하자
⚠️  xvda1에 사용가능 용량이 없는 경우에는 에러가 날 수 있다.
df -h 명령어로 용량 확인 해보고 용량이 부족하다면 필요 없는 로그 같은 파일을
제거하여 용량을 일단 확보하여야 한다
(필요 없는 파일 제거 관련된 부분은 아래 참고)

다시 lsblk 명령어를 치면
xvda랑 xvda1 이랑 크기가 16gb로 똑같아진 걸 볼 수 있다

$ sudo resize2fs /dev/xvda1

파일시스템 재할당 작업을 시작하자
그러면 df -h 명령어로
xvda1 크기가 커진걸 확인 할 수 있다

* 루트 폴더 용량이 꽉 차서 용량 확보가 필요하다면?!

$ cd /var/log
$ ls -la

// 파일 데이터만 삭제! 아래는 예시
$ sudo sh -c 'cat /dev/null > /var/log/syslog'

[참조] LVM 경우

$ sudo growpart /dev/xvdf 1

위 명령어로 용량을 할당 후 1T→ 2T로 변경된것을 확인

pvresize 명령어로 VG 그룹에 디스크 할당

$ pvresize /dev/xvdf 1

아래화면에서 FREE 용량이 1T가 생긴것을 확인 할 수 있다.

→ 논리 디스크에 프리사이즈를 할당해야 한다.

$ lvextend -r -l +100%FREE /dev/mapper/datavg-data

→ 할당이후 아래와 같이 해당 디스크가 용량이 증가한것을 볼수있다.

$ df -h

profile
Python, AWS, Node, PHP, Git Developer

2개의 댓글

comment-user-thumbnail
2022년 1월 5일

차근 차근 따라 해보기 좋네요 사진도 있어서 더 따라하기 편한거 같아요~

1개의 답글