목차
1. NCP 콘솔에서 스토리지 생성
2. fdisk를 이용한 디스크 파티션 생성
3. 파티션 포맷
4. 스토리지 마운트
5. 마운트 정보 유지 설정
6. 권한 이슈 해결하기
1. NCP 콘솔에서 스토리지 생성
스토리지를 부여할 서버를 선택한다.
상단에 “서버 관리 및 설정 변경” → “스토리지 생성” 클릭
위의 캡처와 같이 스토리지 이름과 용량을 입력하고 추가를 누르면 스토리지가 추가된다.
마지막으로 내용을 확인하고 확인 버튼을 클릭한다.
아래의 캡처를 보면 콘솔에 서버 상세내역을 보면 스토리지 부분에 생성한 스토리지가 보인다.
서버에 연결은 되어있지만 파티션이나 파일시스템이 만들어지지 않은 상태라 사용할 수가 없기 때문에 따로 작업을 해줘야 정상적으로 사용할 수 있다.
여기서 연결정보 /dev/xvdd를 잘 기억해두어야한다.
2. fdisk를 이용한 디스크 파티션 생성
디스크 리스트 조회
터미널로 해당 서버에 접속한다.
아래의 명령어로 sudo로 root 권한을 우선 얻는 다음 fdisk 명령어로 디스크(스토리지)를 확인한다.
sudo su
fdisk -l
명령어를 입력하면 위와 같이 현재 서버의 모든 디스크의 정보가 출력된다.
현재 총 4개의 디스크가 서버에 연결되어있으며
휜색박스는 OS가 설치된 /dev/xvda에 2개의 파티션이 존재한다.
두번째는 500GB /dev/xvdb에 리눅스 파일시스템 파티션이 1개 존재한다.
세번째는 500GB /dev/xvdc에 동일하게 리눅스 파일시스템 파티션이 1개 있다.
그리고 제일 마지막 빨간 박스는 이번에 생성한 /dev/xvdd 디스크이며 보다시피 디스크만 있고
파티션과 파일시스템이 존재하지 않는다.
특정 디스크 설정으로 들어가기
아래의 명령어로 /dev/xvdd 디스크 설정으로 들어간다.
fdisk /dev/xvdd
그럼 아래와 같이 뜬다. 여기서는 디스크에 관련된 여러가지 명령어를 지원한다.
(참고로 fdisk는 종료나 저장 명령을 하지 않으면 프로그램이 종료되지 않고 계속 반복적으로 command를 입력받는 형태이다.)
아래와 같이 m을 입력하면 각 알파벳 명령어별 액션 도움말을 볼 수 있다.
우리는 파티션을 생성해야하므로 위의 명령어 중에서 n를 사용하는 것이 핵심이 되겠다.
파티션 조회 p
우선 p를 입력하여 해당 디스크(/dev/xvdd)의 파티션을 조회한다.
보다시피 디스크만 뜨고 아래 표에는 아무것도 안뜬다. 즉, 파티션이 없다.
파티션 생성 n
n을 입력하여 새로운 파티션을 생성한다.
n을 입력하면 옵션을 입력하라는게 4가지가 나온다.
- 파티션 타입(default p)
- 파티션 넘버(default 1)
- 첫번째 섹터(default 디스크의 첫번째)
- 마지막 섹터(default 디스크의 마지막)
4가지 값을 모두 입력하지 않고 default로 건너뛰었다.
그러면 파티션 1개가 생성되었다.
내용 저장 w
아직 생성한 파티션이 저장된 상태가 아니다. w를 마지막으로 저장한다.
파티션이 성공적으로 적용되었다는 문구와 fdisk가 종료된다.
3. 파티션 포맷하기
다시 디스크 정보를 조회한다.
fdisk -l
맨 처음과는 달리 /dev/xvdd 디스크에 /dev/xvdd1 파티션이 보여진다.
파티션이 정상적으로 있는 것을 확인했고
그러면 이제 아래의 명령어로 /dev/xvdd1 파티션에 xfs 파일시스템으로 포맷한다.
mkfs.xfs /dev/xvdd1
위와 같이 출력되면 정상적으로 포맷되었다.
4. 스토리지 마운트
마운트할 경로 디렉토리를 생성한다.
mkdir /mnt/mysql
만들었던 파티션을 해당 디렉토리에 마운트한다.
mount /dev/xvdd1 /mnt/mysql
정상적으로 마운트되었는지 확인한다.
df -k
5. 마운트 정보 유지 설정
파티션을 mount 명령어로 마운트하면 서버가 재부팅되면 다시 마운트를 해줘야하기 때문에
재부팅을 하더라도 다시 스토리지를 마운트할 수 있도록 설정해줘야한다.
vi /etc/fstab
아래와 같이 맨 마지막 로우에 마운트 정보를 추가한다. (**tab이 아니라 space로 공백을 입력해야한다)
#
# /etc/fstab
# Created by anaconda on Mon Aug 31 14:44:01 2020
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=0692fdb8-bb3c-4094-83f0-fe95a339b8c1 / xfs defaults 0 0
UUID=f95bed0a-11af-4b2c-bfcc-4afb91a68fc1 /boot xfs defaults 0 0
/dev/xvdc1 /mnt/oracle xfs defaults 0 0
/dev/xvdb1 /mnt/mongo xfs defaults 0 0
/dev/xvdd1 /mnt/mysql xfs defaults 0 0
6. 권한 이슈 해결하기
root가 아닌 duser로 스토리지에 디랙토리를 만드려고하는데 아래와 같이 권한이 없다고 출력된다.
mkdir: cannot create directory ‘data’: Permission denied
마운트 된 폴더에 소유권한 부여하면 정상적으로 생성할 수 있다.
sudo chmod 755 -R /mnt/mysql
sudo chown duser:duser /mnt/mysql
'devops' 카테고리의 다른 글
Docker 설치하기 (0) | 2023.07.07 |
---|---|
GitLab 레포지토리 마이그레이션 (0) | 2023.07.07 |
GitLab-Runner Helm Installation (0) | 2023.07.06 |
docker-compose Gitlab 백업 구축하기 (0) | 2023.07.06 |
docker-compose Gitlab Installation (0) | 2023.07.06 |