부팅 디스크 크기 확장: GCP

Last Updated on 2023-11-05 by BallPen

GCP VM 인스턴스의 부팅 디스크 크기 확장 방법입니다.

GCP VM 인스턴스의 부팅 디스크 크기 확장 방법을 소개합니다. GCP를 사용하다보면 간혹 VM 인스턴스의 부팅 디스크 용량이 가득차 갑작스런 문제들이 발생할 수 있어요.

예를 들어 부팅 디스크 용량이 부족하면 워드프레스 등의 업데이트가 중단될 수 있어요. 또한 새로운 프로그램을 설치할 때 에러를 출력하며 중단되기도 합니다.

문제는 이러한 현상이 발생할 때 VM 인스턴스의 용량이 가득차서 발생한 문제임을 파악하는데는 많은 시간이 걸립니다. 더욱이 디스크 용량을 어떻게 늘리면 되는지 난감하기도 하죠.

그래서 이번 글에서는 GCP VM 인스턴스의 부팅 디스크 크기 확장 방법을 소개합니다.

이를 위해서는 스냅샷으로 부팅디스크 용량 확대 방법을 적용할 수도 있어요. 아니면 직접 크기를 늘려줘도 되는데요. 이번글에서는 용량을 직접 늘리는 방법을 소개합니다.

아래는 이번 글의 목차입니다.

1. 프로그램 설치중 에러 발생

최근 VM 인스턴스에 anaconda라는 수많은 파이썬 패키지들이 모여 있는 프로그램을 설치하고 있었어요. 그런데 설치 도중에 아래 [그림 1]과 같이 에러가 발생하며 설치가 갑자기 중단되는 거에요.

[그림 1] GCP VM 인스턴스에 anaconda 프로그램을 설치하는 과정 중에 발생한 에러
[그림 1] GCP VM 인스턴스에 anaconda 프로그램을 설치하는 과정 중에 발생한 에러

출력하는 에러는 “Failed to execute script ‘entry_point’ due to unhandled exception!” 입니다. 에러 내용만 보아서는 에러의 원인을 직접적으로 찾기 힘들어요.

그래서 이 문제 때문에 그날 밤에 거의 잠을 못잤어요.

1-1. 문제의 원인은 부팅 디스크 용량 부족

문제의 원인은 anaconda가 설치되는 도중에 부팅 디스크 용량이 모두 가득 차버렸기 때문이라는 것을 알게 되었어요.

아래 [그림 2]는 VM 인스턴스 SSH 터미널에서 ‘df -h’ 명령어로 디스크 용량을 확인한 화면입니다.

df -h
[그림 2] 부팅 디스크 크기 /dev/sda1의 용량이 9.7GB 중19MB만 남아있고 디스크 사용비율이 100% 임을 알 수 있어요.
[그림 2] 부팅 디스크 크기 /dev/sda1의 용량이 9.7GB 중19MB만 남아있고 디스크 사용비율이 100% 임을 알 수 있어요.

/dev/sda1의 용량이 19 MB만 남아 있고 사용비율이 100%입니다. 저는 디스크 용량이 충분히 많이 있을거라고 생각했는데, 그렇지 않았어요. 그래서 anaconda 설치 도중에 에러가 발생한 거에요.

이제 문제 진단이 되었으니 문제를 해결하면 되는데요. 그 방법은 부팅디스크 용량을 늘려주면 됩니다. 그러니까 저의 경우에는 /dev/sda1이 현재 9.7GB로 할당되어 있는데 이를 늘려주어야 해요.

2. 부팅 디스크 크기 확대

저의 경우 GCP VM 인스턴스의 총 디스크 용량은 10GB 입니다. 이를 2배 늘려서 20GB로 만들고자 해요.

이제부터 따라 하시면 됩니다.

구글 클라우드 플랫폼의 대시보드에서 ‘Compute Engine \rightarrow디스크’로 이동합니다.

그러면 여러분들이 운영하고 있는 디스크 목록이 나오는데요. 용량을 확대하고자 하는 디스크의 이름을 클릭하세요.

[그림 3] 부팅 디스크 크기 확대를 위해 디스크 세부 정보 화면에서 '수정' 버튼을 클릭하세요.
[그림 3] 부팅 디스크 크기 확대를 위해 디스크 세부 정보 화면에서 ‘수정’ 버튼을 클릭하세요.

그러면 [그림 3]의 세부정보 화면이 나오는데요. 우측 상단을 보면 ‘수정’ 버튼이 있습니다. 클릭하세요.

[그림 4] 늘리고자 하는 부팅 디스크 크기 값을 입력하고 제일 아래에 있는 '저장' 버튼을 클릭합니다. 저는 종전 10GB에서 20GB로 늘렸습니다.
[그림 4] 늘리고자 하는 부팅 디스크 크기 값을 입력하고 제일 아래에 있는 ‘저장’ 버튼을 클릭합니다. 저는 종전 10GB에서 20GB로 늘렸습니다.

그러면 [그림 4]의 화면이 나옵니다. 제일 위에 크기 설정 화면이 있는데요. 저는 20G 바이트를 입력했습니다.

나머지 항목은 그대로 두고 하단에 있는 ‘저장’ 버튼을 클릭하세요.

그러면 부팅 디스크 용량이 확대되는데요. 이것으로 끝난 것은 아닙니다. 왜냐면 늘려준 공간을 운영체제가 인식할 수 있도록 파티션 설정을 추가적으로 해주어야 해요.

3. 확대된 부팅 디스크의 파티션 설정

확대된 부팅 디스크의 파티션 설정을 위해서는 VM 인스턴스의 SSH 창으로 접속해야 합니다.

구글 클라우드 플랫폼의 대시보드에서 ‘Compute Engine \rightarrowVM 인스턴스’로 이동하세요.

그러면 아래 [그림 5]의 화면이 나옵니다.

[그림 5] VM 인스턴스 화면에서 SSH 버튼을 클릭하세요.
[그림 5] VM 인스턴스 화면에서 SSH 버튼을 클릭하세요.

확대된 부팅 디스크와 연결된 VM 인스턴스의 SSH 버튼을 클릭하세요.

그러면 SSH 터미널 창이 나옵니다.

이제부터는 파티션 설정 작업을 본격적으로 하면 되는데요. 그런데 아쉽게도 제가 관련 화면 캡쳐를 미처 하지 못했어요. 그래서 사용했던 명령어만 정리해 드립니다.

그리고 파티션 설정 작업은 구글 cloud의 ‘increase the size of a persistent disk“와 관련된 도움말을 참고하셔도 됩니다.

다시 한번 더 말씀드리면 이 글에서는 /dev/sda1 루트 파티션을 종전 10GB에서 20GB로 늘리는 내용임을 주지해 주세요.

일단 SSH 창에서 아래의 명령어를 입력해 현재 구성된 파티션 정보를 확인해 봅니다.

sudo parted -l

출력된 화면에서 ‘Disk Flags’ 부분이 있을거에요. 그곳에서 1번 number의 File system이 ext4인지, xfs인지, btrfs인지 확인해서 노트에 잠시만 적어 두세요. 아마도 ext4일 가능성이 많을거에요.

이제부터 아래의 명령어를 이용해 루트파티션의 크기를 조절하는 단계를 시작하세요.

sudo parted /dev/sda

그러면 (parted)라는 입력 화면이 나오는데요. 거기에 resizepart를 입력합니다.

resizepart

‘Partition number?’ 입력 화면이 나옵니다. 1번을 입력하세요.

1

/dev/sda1 파티션이 현재 사용중인데 계속 진행하겠느냐는 경고가 나옵니다. 계속 진행하기 위해 ‘yes’를 입력합니다.

yes

‘End’ 입력 화면이 나오는데요. 100%라고 입력합니다. 그러면 아까 위에서 확장한 공간을 모두 루트 파티션 쪽에 할당하라는 의미입니다.

100%

그러면 다시 (parted)라는 입력화면이 나타납니다. ‘quit’를 입력해서 빠져나오세요.

quit

파티션 크기가 달라졌음을 운영체제에 알려야 합니다. 아래의 명령어를 입력하세요.

sudo partprobe /dev/sda

마지막으로 파일시스템을 확장합니다. 위에서 1번 number의 File system이 ext4인지, xfs인지, btrfs인지 확인했잖아요.

그때 확인된 내용에 맞추어 아래 코드 중 하나를 복사해서 ssh 창에 입력하고 엔터를 치면 됩니다.

  • ext4 인 경우
sudo resize2fs /dev/sda1
  • xfs 인 경우
sudo xfs_growfs -d /
  • btrfs 인 경우
sudo btrfs filesystem resize max /

고생 많으셨어요. 그럼 마지막으로 정말 부팅디스크 용량이 확대되었는지 확인해 보겠습니다.

4. 부팅 디스크 크기 확대 확인

아래 [그림 6]은 부팅 디스크 크기 확대 이후 anaconda를 설치한 후에 ‘df -h’ 명령어로 디스크의 빈 공간을 조회한 화면입니다.

df -h
[그림 6] /dev/sda1의 디스크 용량이 종전 10GB에서 20GB로 늘어났어요.
[그림 6] /dev/sda1의 디스크 용량이 20GB로 늘어났어요.

그림과 같이 /dev/sda1의 총 용량이 종전 9.7GB에서 20GB로 변경된 것을 볼 수 있어요. 성공적으로 부팅 디스크의 크기가 확대된 것을 알 수 있습니다.

물론 anaconda를 설치하는 과정중에 에러도 발생하지 않았어요.

지금까지 부팅디스크의 용량 크기를 직접 늘리는 방법을 설명드렸습니다.

흥미롭고 도움이 되는 글이었나요? 리뷰를 부탁드립니다.
[Total: 2 Average: 5]

Leave a Comment