Amazon Elastic Compute Cloud
Linux 인스턴스용 사용 설명서

Amazon Elastic File System (Amazon EFS)

Amazon EFS는 Amazon EC2에서 사용할 수 있는 확장 가능한 파일 스토리지를 제공합니다. EFS 파일 시스템을 만든 후 파일 시스템을 마운트하도록 인스턴스를 구성할 수 있습니다. 하나의 EFS 파일 시스템을 여러 인스턴스에서 실행하는 워크로드 및 애플리케이션에 대한 공통 데이터 소스로 사용할 수 있습니다. 자세한 내용은 및 Amazon Elastic File System 상품 페이지를 참조하십시오.

이 자습서에서는 하나의 EFS 파일 시스템과, 이 파일 시스템을 사용하여 데이터를 공유할 수 있는 두 개의 Linux 인스턴스를 만듭니다.

중요

Amazon EFS는 Windows 인스턴스에서 지원되지 않습니다.

사전 조건

  • EC2 인스턴스 및 EFS 탑재 대상과 연결할 보안 그룹(예: efs-sg)을 생성하고 다음 규칙을 추가합니다.

    • 컴퓨터에서 인바운드 SSH로 EC2 인스턴스에 연결하도록 허용합니다(소스는 네트워크의 CIDR 블록).

    • 이 보안 그룹과 연결된 EC2 인스턴스에서 인바운드 NFS로 EFS 탑재 대상을 통해 파일 시스템에 연결하도록 허용합니다(소스는 보안 그룹 자체). 자세한 내용은 Amazon EFS 규칙Amazon Elastic File System 사용 설명서Amazon EC2 인스턴스 및 탑재 대상을 위한 보안 그룹 관련 문서를 참조하십시오.

  • 키 페어를 생성합니다. 인스턴스를 구성할 경우 키 페어를 지정해야 하며, 키 페어를 지정하지 않으면 연결할 수 없습니다. 자세한 내용은 키 페어 생성 단원을 참조하십시오.

1단계: EFS 파일 시스템 만들기

Amazon EFS를 사용하면 여러 인스턴스에서 마운트하고 동시에 액세스할 수 있는 파일 시스템을 만들 수 있습니다. 자세한 내용은 Amazon Elastic File System 사용 설명서에서 Amazon EFS용 리소스 만들기를 참조하십시오.

파일 시스템을 만들려면

  1. https://console.aws.amazon.com/efs/에서 Amazon Elastic File System 콘솔을 엽니다.

  2. Create file system을 선택합니다.

  3. 파일 시스템 액세스 구성 페이지에서 다음을 수행합니다.

    1. VPC에서 인스턴스에 사용할 VPC를 선택합니다.

    2. 탑재 대상 생성에서 가용 영역을 모두 선택합니다.

    3. 각 가용 영역에 대해 보안 그룹사전 조건에서 만든 보안 그룹인지 확인합니다.

    4. 다음 단계를 선택합니다.

  4. 선택적 설정 구성 페이지에서 다음을 수행합니다.

    1. 키=이름 태그의 경우 에 파일 시스템 이름을 입력합니다.

    2. 성능 모드 선택에서 기본 옵션인 범용을 그대로 사용합니다.

    3. 다음 단계를 선택합니다.

  5. 검토 및 생성 페이지에서 파일 시스템 생성을 선택합니다.

  6. 파일 시스템이 생성되면 파일 시스템 ID를 나중에 참조할 수 있도록 기록해 둡니다.

2단계: 파일 시스템 마운트

다음 절차를 수행하여 t2.micro 인스턴스 두 개를 실행합니다. 사용자 데이터 스크립트는 인스턴스 실행 시 파일 시스템을 두 인스턴스 모두에 마운트하고, /etc/fstab를 업데이트하여 파일 시스템이 인스턴스가 재부팅된 후 다시 마운트되도록 합니다. T2 인스턴스는 반드시 서브넷에서 시작되어야 합니다. 기본 VPC 또는 기본이 아닌 VPC를 를 사용할 수 있습니다.

참고

이미 실행 중인 인스턴스에 마운트하는 등, 다른 방법으로 볼륨을 마운트할 수 있습니다. 자세한 내용은 Amazon Elastic File System 사용 설명서에서 파일 시스템 마운트를 참조하십시오.

두 개의 인스턴스를 실행하여 하나의 EFS 파일 시스템을 마운트하려면

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 인스턴스 시작을 선택합니다.

  3. Amazon 머신 이미지 선택 페이지에서 Amazon Linux AMI와 HVM 가상화 유형을 선택합니다.

  4. 인스턴스 유형 선택 페이지에서 기본 인스턴스 유형인 t2.micro를 그대로 사용하고 Next: Configure Instance Details(다음: 인스턴스 세부 정보 구성)를 선택합니다.

  5. 인스턴스 세부 정보 구성 페이지에서 다음을 수행합니다.

    1. 인스턴스의 수에 2를 입력합니다.

    2. [기본 VPC] 기본 VPC가 있는 경우 네트워크의 기본값이 됩니다. 기본 VPC와 서브넷의 기본값을 그대로 유지하여 Amazon EC2에서 인스턴스에 대해 선택한 가용 영역의 기본 서브넷을 사용합니다.

      [기본이 아닌 VPC] 네트워크에서 해당 VPC를 선택하고 서브넷에서 퍼블릭 서브넷을 선택합니다.

    3. [기본이 아닌 VPC] 퍼블릭 IP 자동 할당에서 활성화를 선택합니다. 그렇지 않으면 인스턴스가 퍼블릭 IP 주소 또는 퍼블릭 DNS 이름을 받지 못합니다.

    4. 고급 세부 정보에서 텍스트를 선택하고 사용자 데이터에 다음 스크립트를 붙여 넣습니다. FILE_SYSTEM_ID를 사용자 파일 시스템의 ID로 업데이트합니다. 원한다면 MOUNT_POINT를 탑재된 파일 시스템의 디렉터리로 업데이트할 수 있습니다.

      #!/bin/bash yum update -y yum install -y nfs-utils FILE_SYSTEM_ID=fs-xxxxxxxx AVAILABILITY_ZONE=$(curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone ) REGION=${AVAILABILITY_ZONE:0:-1} MOUNT_POINT=/mnt/efs mkdir -p ${MOUNT_POINT} chown ec2-user:ec2-user ${MOUNT_POINT} echo ${FILE_SYSTEM_ID}.efs.${REGION}.amazonaws.com:/ ${MOUNT_POINT} nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,_netdev 0 0 >> /etc/fstab mount -a -t nfs4
    5. 마법사의 6단계로 진행합니다.

  6. Configure Security Group(보안 그룹 구성) 페이지에서 Select an existing security group(기존 보안 그룹 선택)을 선택하고 사전 조건에서 생성한 보안 그룹을 선택한 다음, Review and Launch(검토 후 시작)를 선택합니다.

  7. 인스턴스 시작 검토 페이지에서 시작을 선택합니다.

  8. Select an existing key pair or create a new key pair(기존 키 페어 선택 또는 새 키 페어 생성) 대화 상자에서 Choose an existing key pair(기존 키 페어 선택)를 선택하고 키 페어를 선택합니다. 승인 확인란을 선택하고 인스턴스 시작을 선택합니다.

  9. 탐색 창에서 인스턴스를 선택하여 인스턴스의 상태를 확인합니다. 처음에 인스턴스 상태는 pending입니다. 이 상태가 running으로 변경되면 인스턴스를 사용할 수 있습니다.

3단계: 파일 시스템 테스트

인스턴스에 연결하여 지정한 디렉터리(예: /mnt/efs)에 해당 파일 시스템이 마운트되었는지 확인할 수 있습니다.

파일 시스템이 마운트되었는지 확인하려면

  1. 인스턴스에 연결합니다. 자세한 내용은 Linux 인스턴스에 연결 단원을 참조하십시오.

  2. 각 인스턴스의 터미널 창에서 df -T 명령을 실행하여 EFS 파일 시스템이 마운트되었는지 확인합니다.

    $ df -T Filesystem Type 1K-blocks Used Available Use% Mounted on /dev/xvda1 ext4 8123812 1949800 6073764 25% / devtmpfs devtmpfs 4078468 56 4078412 1% /dev tmpfs tmpfs 4089312 0 4089312 0% /dev/shm efs-dns nfs4 9007199254740992 0 9007199254740992 0% /mnt/efs

    예제 출력에 나와 있는 파일 시스템 이름 efs-dns의 형식은 다음과 같습니다.

    file-system-id.efs.aws-region.amazonaws.com:/
  3. (선택 사항) 한 인스턴스의 파일 시스템에서 파일을 하나 생성한 후 다른 인스턴스에서 해당 파일이 보이는지 확인합니다.

    1. 첫 인스턴스에서 다음 명령을 실행하여 파일을 생성합니다.

      $ sudo touch /mnt/efs/test-file.txt
    2. 둘째 인스턴스에서 다음 명령을 실행하여 파일을 봅니다.

      $ ls /mnt/efs test-file.txt

4단계: 정리

이 자습서를 마치면 인스턴스를 종료하고 파일 시스템을 삭제해도 됩니다.

인스턴스를 종료하려면

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 인스턴스를 선택합니다.

  3. 종료할 인스턴스를 선택합니다.

  4. 작업, 인스턴스 상태, 종료를 차례로 선택합니다.

  5. 확인 메시지가 나타나면 예, 종료를 선택합니다.

파일 시스템을 삭제하려면

  1. https://console.aws.amazon.com/efs/에서 Amazon Elastic File System 콘솔을 엽니다.

  2. 삭제한 파일 시스템을 선택합니다.

  3. 작업, 파일 시스템 삭제를 차례로 선택합니다.

  4. 확인 메시지가 표시되면 파일 시스템 ID를 입력하고 파일 시스템 삭제를 선택합니다.