[AWS] EFS 파일 시스템 생성

HYEOB KIM·2022년 7월 1일
1

aws

목록 보기
54/62

이전 내용: [AWS] EFS에 대하여

1. EFS 파일 시스템 생성

  1. EFS 콘솔 > [파일 시스템] > [파일 시스템 생성]

  2. 파일 시스템 이름과 VPC를 선택합니다. 가용성 및 내구성은 표준 클래스이냐 원 존 클래스이냐를 선택하는 부분입니다. 원 존 클래스를 선택했다면 파일 시스템이 생성될 가용 영역을 선택해주어야 합니다.

  3. 생성 버튼 옆에 사용자 지정 버튼을 누르면 좀 더 세부 사항을 설정할 수 있는 페이지가 나타납니다.

  4. 자동 백업의 활성화 여부를 선택합니다. 수명 주기 관리를 통해 자주 액세스 하지 않는 데이터에 대해 IA 스토리지로 전송할 수 있습니다. 성능 모드에서 범용 모드 또는 최대 I/O 모드 중 하나를 선택합니다.

  5. 탑재 대상(NFSv4 엔드포인트)이 생성될 서브넷을 선택하고 보안 그룹을 선택합니다.
    보안 그룹의 경우 인바운드 규칙에 이후에 생성할 EC2 인스턴스에 적용될 보안 그룹 ID에 대해서 NFS 프로토콜(2049번 포트)을 허용하거나 아니면 모든 IP, 트래픽에 대해 허용해줘도 됩니다.

  6. 파일 시스템 정책을 작성합니다. 정책 옵션을 선택하면 정책 편집기에 해당 정책에 대한 JSON이 자동으로 작성됩니다. 여기서 기본적으로 루트 액세스 금지를 선택해서 정책을 적용하게 되면 EC2 인스턴스에서 파일 시스템에 루트 권한(sudo)으로 파일을 쓸 수 없게 됩니다. 익명 액세스 금지를 선택하면 이후에 EC2 인스턴스에서 탑재 대상에 마운트할 때 액세스 거부가 발생할 수 있습니다. 저는 아무 정책도 생성하지 않았습니다.

2. EC2 인스턴스 생성

EFS 파일 시스템을 생성할 때 탑재 대상이 생성되는 곳으로 지정했던 VPC와 서브넷에 EC2 인스턴스를 생성합니다.

3. 인스턴스에 파일 시스템 마운트 후 테스트

NFS 클라이언트를 설치합니다.
(인스턴스가 아마존 리눅스인 경우는 NFS 클라이언트가 설치되어 있으므로 생략해도 됩니다.)

% sudo yum -y install nfs-utils

마운트할 폴더를 생성합니다.

% mkdir ~/efs

이제 폴더에 EFS를 마운트합니다.

# DNS로 마운트 하는 방법
% sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport <탑재 대상 DNS>:/   ~/efs
# 탑재 대상(mount target)의 IP 주소로 마운트 하는 방법
% sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport <탑재 대상 ip>:/  ~/efs

꿀팁!
콘솔에서 생성한 파일 시스템을 선택하고 연결을 누르면 자동 완성된 명령어가 나타납니다.

efs 폴더에 마운트되었는지 확인합니다.

% df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        474M     0  474M   0% /dev
tmpfs           483M     0  483M   0% /dev/shm
tmpfs           483M  408K  483M   1% /run
tmpfs           483M     0  483M   0% /sys/fs/cgroup
/dev/xvda1      8.0G  1.6G  6.5G  20% /
tmpfs            97M     0   97M   0% /run/user/1000
x.x.x.x:/		8.0E     0  8.0E   0% /home/ec2-user/efs

파일 시스템으로 들어갑니다.

% cd efs

기본적으로 파일 시스템의 루트 디렉토리는 루트 사용자가 소유하고 쓰기가 가능합니다. 따라서 파일을 추가하려면 권한을 변경해주어야 합니다.

% sudo chmod go+rw .

이후에 파일을 생성하면 생성 되어집니다.

% touch test.txt

4. 파일 시스템 삭제

파일 시스템을 삭제하기 전에 마운트된 EC2 인스턴스에서 EFS를 언마운트합니다.

% sudo umount <마운트한 폴더 경로>

그리고 EFS 콘솔 > [파일 시스템] 에서 삭제할 파일 시스템을 선택하고 삭제 버튼을 누릅니다.

profile
Devops Engineer

0개의 댓글