Devops

AWS EC2 볼륨 연결

Prower 2023. 4. 26. 19:13
728x90
반응형

ec2 인스턴스에 볼륨을 추가하는 방법을 공유합니다.

볼륨 추가 방법

1. 볼륨 생성

EC2 메뉴 -> EBS -> 볼륨 추가

생성하고자 하는 볼륨의 크기와 유형 등 기본 설정을 입력하여 추가하고자 하는 볼륨을 생성합니다.

연결할 볼륨 생성

2. 볼륨 연결

EBS -> 연결하고자 하는 볼륨 선택 -> 작업 -> 볼륨 연결

생성된 볼륨을 EC2에 연결합니다.

볼륨을 EC2에 연결

디바이스 이름은 기본 루트 볼륨의 이름을 피해 지정하여 입력합니다.

3. 볼륨 마운트

볼륨은 EC2인스턴스에 연결(매핑) 되었지만, 시스템에 마운트 되지는 않은 상태이므로 추가적으로 마운트 하는 과정이 필요합니다.

  • 마운트: 물리적인 디바이스를 특정 디렉토리에 연결하는 작업

즉 디바이스(물리 장비) 자체는 EC2에 연결이 되었지만, OS에서 접근은 불가능한 상태입니다.

lsblk: 연결된 스토리지 디바이스 정보 확인

NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0  30G  0 disk
└─xvda1 202:1    0  30G  0 part /
xvdf    202:80   0  10G  0 disk

명령어를 통해 확인한 결과입니다. xvda는 기존에 연결된 루트 볼륨이며, xvdf는 새로 연결된 볼륨입니다.

MOUNTPOINT를 보면 새로 연결된 볼륨은 아직 마운트 되지 않은 것을 볼 수 있습니다.

df -hT: 마운트된 디스크의 여유 공간 확인

Filesystem     Type      Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs  474M     0  474M   0% /dev
tmpfs          tmpfs     483M     0  483M   0% /dev/shm
tmpfs          tmpfs     483M  480K  482M   1% /run
tmpfs          tmpfs     483M     0  483M   0% /sys/fs/cgroup
/dev/xvda1     xfs        30G  7.4G   23G  25% /
tmpfs          tmpfs      97M     0   97M   0% /run/user/0
tmpfs          tmpfs      97M     0   97M   0% /run/user/1000

디스크의 여유 공간을 확인해보면 루트 볼륨은 마운트 되어 사용 가능하지만, 새로 연결한 볼륨은 아직 접근이 불가능한 상황입니다.

디스크를 연결하기 위해서는 다음과 같은 과정이 필요합니다.

  1. 디스크에 파일 시스템 생성(포맷)
  2. 디렉토리 생성
  3. 디렉토리와 디바이스 연결

파일 시스템 생성

볼륨에 파일 시스템을 생성합니다. 디스크로만 존재하던 볼륨에 파일시스템을 지정하여 OS에서 사용할 수 있도록 합니다.

기존 루트 볼륨의 파일 시스템이 xfs 이므로 동일하게 생성합니다.

mkfs -t xfs /dev/xvdf

디렉토리 생성

생성된 볼륨이 탑재될 디렉토리를 생성합니다. 볼륨에 파일 시스템을 지정한 이후, 접근할 디스크를 생성하여 연결합니다.

mkdir /data

디렉토리와 디바이스 연결

생성된 볼륨과 디렉토리를 연결하여 OS에서 디스크에 접근할 수 있도록 합니다.

mount /dev/xvdf /data

lsblk로 연결 확인

NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0  30G  0 disk
└─xvda1 202:1    0  30G  0 part /
xvdf    202:80   0  10G  0 disk /data

확인 결과 MOUNTPOINT가 /data로 지정되어 마운트가 된 것을 확인할 수 있습니다.

디스크의 여유 공간 확인

Filesystem     Type      Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs  474M     0  474M   0% /dev
tmpfs          tmpfs     483M     0  483M   0% /dev/shm
tmpfs          tmpfs     483M  480K  482M   1% /run
tmpfs          tmpfs     483M     0  483M   0% /sys/fs/cgroup
/dev/xvda1     xfs        30G  7.4G   23G  25% /
tmpfs          tmpfs      97M     0   97M   0% /run/user/0
tmpfs          tmpfs      97M     0   97M   0% /run/user/1000
/dev/xvdf      xfs        10G   43M   10G   1% /data

파티션을 생성하여 마운트

  • 파티션: 논리적으로 디스크 공간을 분할하는 것

디스크를 파티션으로 나눠 관리하면 각 디스크 공간을 침범하지 않으며 데이터를 저장할 수 있으며, 종류별로 데이터를 구분하여 저장할 수 있습니다.

앞서, 디스크 연결을 위해 3단계를 언급했는데 그 이전에 파티션을 생성하여 마운트 하는 과정을 알아봅니다.

먼저 연결했던 디스크를 마운트 해제합니다.

umount /dev/xvdf

파티션 생성

예시로 파티션을 2개 생성하여 연결합니다.

파티션 생성 모드 진입

fdisk /dev/xvdf

해당 명령어로 파티션 생성 모드에 진입합니다. 대화형으로 파티션 생성, 확인 등을 진행할 수 있습니다.

명령어 예시

  • p: 파티션 상태 출력
  • n: 파티션 생성
  • d: 파티션 삭제
  • w: 저장 후 종료
  • q: 취소 후 종료

파티션 생성 진입

Command (m for help): n
Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p

파티션 생성을 선택하여 진입한 상태입니다. 파티션 유형을 선택 p를 선택하여 주 파티션 생성, e를 선택하여 확장 파티션 영역을 t생성합니다.

파티션 생성 및 사이즈 지정

Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-20971519, default 2048): 2048
Last sector, +sectors or +size{K,M,G,T,P} (2048-20971519, default 20971519): 10485760
​
Created a new partition 1 of type 'Linux' and of size 5 GiB.
​
Command (m for help):  n
Partition type
   p   primary (1 primary, 0 extended, 3 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 2
First sector (10485761-20971519, default 10487808): 10487808
Last sector, +sectors or +size{K,M,G,T,P} (10487808-20971519, default 20971519): 20971519
​
Created a new partition 2 of type 'Linux' and of size 5 GiB. 

파티션 생성 확인

NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0  30G  0 disk
└─xvda1 202:1    0  30G  0 part /
xvdf    202:80   0  10G  0 disk
├─xvdf1 202:81   0   5G  0 part
└─xvdf2 202:82   0   5G  0 part

마운트

파일 시스템 생성

mkfs -t xfs /dev/xvdf1
mkfs -t xfs /dev/xvdf2

디렉토리 생성 및 마운트

mount /dev/xvdf1 /data
mount /dev/xvdf2 /data2

마운트 확인

Filesystem     Type      Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs  474M     0  474M   0% /dev
tmpfs          tmpfs     483M     0  483M   0% /dev/shm
tmpfs          tmpfs     483M  488K  482M   1% /run
tmpfs          tmpfs     483M     0  483M   0% /sys/fs/cgroup
/dev/xvda1     xfs        30G  7.4G   23G  25% /
tmpfs          tmpfs      97M     0   97M   0% /run/user/0
tmpfs          tmpfs      97M     0   97M   0% /run/user/1000
/dev/xvdf1     xfs       5.0G   38M  5.0G   1% /data
/dev/xvdf2     xfs       5.0G   38M  5.0G   1% /data2
728x90
반응형