기존에 사용하던 인스턴스의 용량이 사용하다 보니 작아서 볼륨을 생성하여 인스턴스의 용량을 늘리고자 하였다. 이를 처음해보기에 나중에 해둘 때를 대비하여 글을 작성하고자 한다.
1. 볼륨 생성
EC2에 Elastic Block Store에 볼륨을 들어가거나 처음 EC2를 누르면 아래 하단과 같이 볼륨이 나오는데 이를 클릭한다.
그리고 볼륨탭에 들어가면 오른쪽 사단에 볼륨 생성을 클릭해 볼륨을 생성한다.
볼륨을 생성할 때는 어떤 유형과 크기를 생성할 것인지를 정해야 한다. 여기서 제일 중요한 것은 가용 영역이다. 내가 지금 하려는 것은 인스턴스와 볼륨을 연결해야 하므로 연결하고자 하는 인스턴스와 볼륨의 가용 영역이 같아야 한다.
위의 글과 같이 생성했을 경우 생성버튼을 눌러 생성하면 바로 생성이 된다.
2. 볼륨 연결
볼륨을 생성 후에 생성된 볼륨에 사용 가능이라고 뜨는지 본다. 만약 생성 중이라고 계속적으로 뜰 경우 새로 고침을 하고 다시 확인해준다. 이를 확인 후에 볼륨 리스트가 많으면 내가 붙일려는 볼륨이 무엇인지 헷갈리므로 이름을 지정해준다. 그리고 오른쪽 상단에 작업 버튼을 클릭한다.
이렇게 메뉴가 나온다. 그러면 볼륨 연결을 눌러 연결을 시도한다.
위에서 말한 것과 같이 선택한 볼륨과 동일한 가용 영역에 있는 인스턴스만 표시된다. 그래서 꼭 연결하고자 하는 인스턴스와 볼륨의 가용 영역을 맞춰줘야 한다. 연결하고자 하는 인스턴스를 지정하고 디바이스 이름으로 지정해주면 볼륨이 연결된다.
3. 인스턴스 스토어 볼륨 이용하기
이 부분이 제일 중요하다. 우선 서버로 들어간다.
1) lsblk로 사용가능한 스토리지 디바이스 확인
lsblk 명령어를 써서 보면 거의 맨 아래에 내가 생성한 볼륨이 보여진다.
2) df -h로 현재 사용중인 파일시스템 확인
dk -h 명령어로 인스턴스 스토어 볼륨이 있는지 확인한다. 사진에서 보면 알 수 있지만 지금은 인스턴스 스토어 볼륨이 없는 것을 확인할 수 있다. 그러므로 이를 파일 시스템에서 사용할 수 있도록 연결해줘야 한다.
3) fdisk로 파티션함
- 파티션이란?https://docs.aws.amazon.com/ko_kr/amazondynamodb/latest/developerguide/HowItWorks.Partitions.html
- 파티션이란 ? 파티션은 SSD(Solid State Drive)로 백업되는 테이블용 스토리지 할당으로, AWS 리전 내의 여러 가용 영역에 자동으로 복제됩니다.
- fdisk [디스크]명령어를 쓰면 디스크모드로 들어가 명령을 받게 된다.
- 파티션 관련 명령어
- n : 파티션 추가(네 개까지 무료)
- p:주 파티션
- e:확장 파티션(컨테이너를 위한 논리적인 파티션)
- p : 파티션 테이블 확인
- w : 저장하고 종료
- q : 저장안하고 종료
- n : 파티션 추가(네 개까지 무료)
3-1) 디스크모드로 들어가기
처음에 이렇게 해서 안 들어가져서 리눅스할 때마다 허락 거절이라는 단어가 나오면 이제는 자동으로 sudo 명령어를 쓴다.
그러면 디스크 모드로 들어갈 수 있게 된다. 디스크모드로 들어가야 하는 것은 볼륨 파일이름으로 들어가야 한다. xvdf라고 위에서 나와있었으니 /dev/에 파일이름을 쓰면 들어갈 수 있다.
3-2) 파티션에 용량 담기
위에서 설명해둔 파티션관련 명령어를 써서 차례대로
- n으로 파티션 추가한다.
- Partition number과 First sector, Last sector부분에 아무것도 쓰지 않고 엔터를 쓰면 넘어간다. 파티션을 구분하고자 하면 파티션 넘버를 써도 된다.
- p써서 주 파티션으로 생성한다. 그리고 나면 새로운 파티션이 생겼다고 문구가 나온다.
- p를 한번더 누르게 되면 파티션에 대한 정보가 나온다.
- w를 눌러 저장하고 종료한다.
3) 연결된 스토리지 확인
맨 밑에 볼륨 밑에 파티션이 생성된 것을 확인할 수 있다. 마운트 대상은 반드시 파티션이 되어야 한다.
4. 파일 시스템 생성 및 마운트
1) 파일 시스템 생성
mkfs -t ext4 /dev/<파티션이름>
sudo 명령어로 mkfs 파일시스템을 만들고 -t ext4 /dev/<파티션이름>을 써서 파일시스템을 작성한다. 여기서 ext4는 파일시스템 중 하나이다.
2) 마운트
mkdir /<마운트포인트>로 디렉토리 만들어서 마운트할 곳 생성하고,
mount <파티션> <마운트포인트>로 마운트를 한다.
5. 파일 시스템 확인
파티션이 추가된 것이 확인가능하다.
디스크(인스턴스 스토어 볼륨)를 운영체제에 연결(마운트)하기 위해 디스크를 파티션으로 나누고 그 파티션의 파일시스템(ext4)을 생성하고 디렉토리(마운트 포인트)에 연결한 것이다.
내가 설정할 때는 하나의 파티션만 생성하여 200기가 용량을 그곳에 다 넣어주었다. 파티션을 최대 4개까지 만드는 것이 가능하므로, 여러 개의 파티션을 생성하여 200기가 용량을 나눠 사용하면 효율적인 디스크이용이 가능할 듯하다.