안녕하세요.
오늘은 EBS Volume을 추가해 보겠습니다.
볼륨생성 & 연결
> 볼륨생성
볼륨은 10G로 생성했습니다. 또한 인스턴스가 위치한 가용영역에 해당 볼륨을 설정해 줍니다.
> 작업 > 볼륨연결
> 볼륨을 추가할 인스턴스를 선택해 줍니다.
연결이 완료되면 사용 중이라고 표시가 됩니다.
Volume 파일시스템 포맷
윈도우에서는 USB, 하드를 추가하면 바로 C, D... 드라이브로 인식되어 바로 사용할 수 있습니다.
리눅스에서는 볼륨을 추가했다고 추가한 볼륨이 바로 인식이 안됩니다. 추가로 파일시스템 포맷과 마운트 설정을 해줘야 추가나 증설된 볼륨을 사용할 수 있습니다.
파일 시스템(file system이란?
컴퓨터나 다른 전자 장치에서 데이터를 저장, 읽기, 검색, 공유할 수 있도록 관리하는 방법이나 구조입니다.
이 체계가 있어야만 리눅스에서 파일을 읽고 쓸 수 있습니다.
< 비 유 >
하드디스크 = 도서관
파일시스템 = 도서검색대
파일 = 책
데이터 = 원하는 내용
원하는 내용이 있는 책을 찾기 위해서 도서관에 있는 도서검색대 이용하듯이
원하는 데이터가 들어있는 파일을 찾기 위해 하드디스크 안에 파일시스템이 있어야 합니다.
※ EC2에서 인스턴스 타입에 따라 블록 스토리지의 디바이스 이름이 다를 수 있습니다.
1. NVMe 기반 스토리지
- 최신 인스턴스 타입들은 NVMe 기반의 스토리지를 사용하며, 이러한 인스턴스에서는 디바이스 이름이 nvme0n1, nvme1n1 등과 같이 나타납니다.
- NVMe 디바이스: nvme[0-9]n[1-9]
예: nvme0n1, nvme1n1, ..... nvme0n2.... 등
2. Xen 기반 스토리지
- 좀 더 오래된 인스턴스 타입들은 Xen 가상화를 사용하며, 이러한 인스턴스에서는 디바이스 이름이 xvda, xvdb 등과 같이 나타납니다.
- Xen 디바이스: xvd[a-z]
예: xvda, xvdb, xvdc..... 등
lsblk 명령어는 리눅스 디바이스 정보를 출력하는 명령어 입니다.
nvme0n1은 인스턴스를 생성할 때 기존에 생성된 볼륨입니다.
nvme1n1은 새로 추가해 준(10G) 볼륨입니다.
파일시스템이 없어서 새로 추가한 볼륨(nvme1n1)의 FSYPE목록이 비어있는 것을 확인할 수 있습니다
또한 UUID와 mountpoint도 지정이 안되어 있습니다.
※ lsblk 명령의 출력에서는 전체 디바이스 경로 중 맨 앞에 /dev/가 생략됩니다.
볼륨에 파일 시스템이 있는지 확인합니다.
기존의 볼륨은 파티션이 나뉘어 있고 새 볼륨처럼 "data"만 표시되면 파일시스템이 없는 것입니다.
// [/dev] 뒤에는 자신의 디바이스 명을 입력
file -s /dev/nvme0n1
file -s /dev/nvme1n1
주의!
기존 파일 시스템 위에 새 파일 시스템을 생성하면 해당 작업으로 데이터가 덮어쓰기 됩니다.
파일시스템 생성
새로 생성한 볼륨을 파일시스템으로 포맷
mkfs -t xfs /dev/nvme1n1
파일시스템이 생성된 것을 확인할 수 있습니다.
마운트 설정하기
볼륨에서 사용할 디렉터리(마운트 포인트)를 생성하고 마운트 설정을 합니다.
최종적으로 마운트설정과 위에서 포맷한 파일시스템 설정이 완료되었습니다.
재부팅 시에도 마운트가 해지 안되도록 설정하겠습니다.
수정 도중 실수로 이 파일이 손상되거나 삭제되는 경우에 대비하여 /etc/fstab 파일의 백업을 생성합니다.
cp /etc/fstab /etc/fstab.orig
해당 볼륨 디바이스에 UUID를 복사해 줍니다.
vim /etc/fstab
UUID=[복사한 UUID] /data xfs defaults,nofail 0 2
UUID / 마운트포인트 / 파일시스템을 입력해 줍니다.
테스트를 위해 마운트를 해지합니다.
/etc/fstab에 있는 파일시스템 전체를 mount
mount -a
이렇게 자동으로 마운트 되는 것을 확인할 수 있습니다
감사합니다.
'AWS > EBS' 카테고리의 다른 글
[ EBS ] 사용중인 EBS Volume 암호화 (0) | 2023.09.07 |
---|---|
[ EBS ] EBS Volume 확장 (0) | 2023.09.05 |