EC2 인스턴스에 인스턴스 스토어 볼륨 추가 - Amazon Elastic Compute Cloud

EC2 인스턴스에 인스턴스 스토어 볼륨 추가

NVMe 인스턴스 스토어 볼륨이 있는 인스턴스 유형의 경우 지원되는 모든 인스턴스 스토어 볼륨이 시작 시 인스턴스에 자동으로 연결됩니다. 자동으로 열거되고 인스턴스 시작 시 디바이스 이름이 할당됩니다.

C1, C3, M1, M2, M3, R3, D2, H1, I2, G2, X1, X1e 등의 비 NVMe 인스턴스 스토어 볼륨이 있는 인스턴스 유형의 경우 시작 시 연결할 인스턴스 스토어 볼륨에 대한 블록 디바이스 매핑을 수동으로 지정해야 합니다. 블록 디바이스 매핑은 인스턴스 시작 요청 또는 인스턴스 시작에 사용되는 AMI에서 지정할 수 있습니다. 블록 디바이스 매핑에는 디바이스 이름과 매핑된 볼륨이 포함됩니다. 자세한 내용은 블록 디바이스 매핑 섹션을 참조하세요.

중요

시작할 때만 인스턴스에 인스턴스 스토어 볼륨을 연결할 수 있습니다. 인스턴스를 실행한 이후에는 인스턴스 스토어 볼륨을 연결할 수 없습니다.

인스턴스를 실행한 후에는 인스턴스에 대한 인스턴스 스토어 볼륨이 사용하기에 앞서 포맷되고 마운트되었는지 확인해야 합니다. 인스턴스 스토어 지원 인스턴스의 루트 볼륨은 기본적으로 마운트됩니다.

루트 볼륨에 대한 고려 사항

블록 디바이스 매핑은 항상 인스턴스에 대한 루트 볼륨을 지정합니다. 루트 볼륨은 Amazon EBS 볼륨 또는 인스턴스 스토어 볼륨 중 하나입니다. 루트 볼륨은 자동으로 마운트됩니다. 루트 볼륨에 대한 인스턴스 스토어 볼륨이 있는 인스턴스의 경우, 볼륨의 크기는 AMI에 따라 다르지만 최대 크기는 10GB입니다. 자세한 내용은 루트 디바이스 스토리지 단원을 참조하십시오.

AMI에 인스턴스 스토어 볼륨 추가

인스턴스 스토어 볼륨을 포함하는 블록 디바이스 매핑으로 AMI를 생성할 수 있습니다.

인스턴스 스토어 볼륨 블록 디바이스 매핑을 지정하는 AMI를 사용하여 비 NVMe 인스턴스 스토어 볼륨을 지원하는 인스턴스를 시작하는 경우 인스턴스에 인스턴스 스토어 볼륨이 포함됩니다. AMI의 인스턴스 스토어 볼륨 블록 디바이스 매핑 수가 인스턴스에 사용 가능한 인스턴스 스토어 볼륨 수를 초과하면 추가 인스턴스 스토어 볼륨 블록 디바이스 매핑이 무시됩니다.

인스턴스 스토어 볼륨 블록 디바이스 매핑을 지정하는 AMI를 사용하여 NVMe 인스턴스 스토어 볼륨을 지원하는 인스턴스를 시작하면 인스턴스 스토어 볼륨 블록 디바이스 매핑이 무시됩니다. NVMe 인스턴스 스토어 볼륨을 지원하는 인스턴스는 인스턴스 시작 요청 및 AMI에 지정된 블록 디바이스 매핑에 관계없이 지원되는 모든 인스턴스 스토어 볼륨을 가져옵니다.

고려 사항
  • M3 인스턴스의 경우 AMI가 아닌 인스턴스의 블록 디바이스 매핑에 인스턴스 스토어 볼륨을 지정합니다. Amazon EC2가 AMI의 인스턴스 스토어 볼륨 블록 디바이스 매핑을 무시할 수 있습니다.

  • 인스턴스를 실행할 때 AMI 블록 디바이스 매핑에서 지정된 비 NVMe 인스턴스 스토어 볼륨을 생략하거나 인스턴스 스토어 볼륨을 추가할 수 있습니다.

New console
콘솔을 사용하여 Amazon EBS 지원 AMI에 인스턴스 스토어 볼륨을 추가하려면
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

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

  3. 작업(Actions), 이미지 및 템플릿(Image and templates), 이미지 생성(Create image)을 차례로 선택합니다.

  4. [이미지 생성(Create image)] 페이지에서 이미지 이름 및 설명을 입력합니다.

  5. 추가할 각 인스턴스 스토어 볼륨에서 [볼륨 추가(Add volume)]를 선택한 다음 [볼륨 유형(Volume type)]에서 인스턴스 스토어 볼륨을 선택하고 [디바이스(Device)]에서 디바이스 이름을 선택합니다. (자세한 내용은 Linux 인스턴스의 디바이스 이름 섹션을 참조하세요.) 사용할 수 있는 인스턴스 스토어 볼륨의 개수는 인스턴스 유형에 따라 다릅니다. NVMe 인스턴스 스토어 볼륨이 있는 인스턴스의 경우, 이러한 볼륨의 디바이스 매핑은 운영 체제가 볼륨을 열거하는 순서에 따라 다릅니다.

  6. 이미지 생성(Create image)을 선택합니다.

AWS CLI
명령줄을 사용하여 AMI에 인스턴스 스토어 볼륨을 추가하려면

다음 명령 중 하나를 사용할 수 있습니다. 명령줄 인터페이스에 대한 자세한 내용은 Amazon EC2 액세스 단원을 참조하세요.

인스턴스에 비 NVME 인스턴스 스토어 볼륨 추가

비 NVMe 인스턴스 스토어 볼륨을 지원하는 인스턴스를 시작할 때 연결할 인스턴스 스토어 볼륨에 대한 블록 디바이스 매핑을 지정해야 합니다. 블록 디바이스 매핑은 인스턴스 시작 요청 또는 인스턴스 시작에 사용되는 AMI에서 지정해야 합니다.

AMI에 인스턴스 스토어 볼륨에 대한 블록 디바이스 매핑이 포함된 경우 AMI에 포함된 것보다 더 많은 인스턴스 스토어 볼륨이 필요한 경우가 아니면 인스턴스 시작 요청에서 블록 디바이스 매핑을 지정할 필요가 없습니다.

AMI에 인스턴스 스토어 볼륨에 대한 블록 디바이스 매핑이 포함되지 않은 경우 인스턴스 시작 요청에서 블록 디바이스 매핑을 지정해야 합니다.

고려 사항
  • M3 인스턴스의 경우, 인스턴스의 블록 디바이스 매핑에서 지정하지 않더라도 인스턴스 스토어 볼륨을 받을 수 있습니다.

인스턴스 시작 요청에서 블록 디바이스 매핑을 지정하려면 다음 방법 중 하나를 사용하세요.

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

  2. 대시보드에서 인스턴스 시작을 선택합니다.

  3. 애플리케이션 및 OS 이미지(Application and OS Images) 섹션에서 사용할 AMI를 선택합니다.

  4. 스토리지 구성 섹션의 인스턴스 스토어 볼륨 섹션에는 인스턴스에 연결할 수 있는 인스턴스 스토어 볼륨이 나열되어 있습니다. 사용할 수 있는 인스턴스 스토어 볼륨의 개수는 인스턴스 유형에 따라 다릅니다.

  5. 연결할 각 인스턴스 스토어 볼륨에 대해 디바이스 이름에서 사용할 디바이스 이름을 선택합니다.

  6. 필요에 따라 나머지 인스턴스 설정을 구성한 다음 인스턴스 시작을 선택합니다.

Command line

해당 옵션과 함께 다음 옵션 명령 중 하나를 사용할 수 있습니다.

  • run-instances(AWS CLI)를 사용한 --block-device-mappings

  • New-EC2Instance(AWS Tools for Windows PowerShell)를 사용한 -BlockDeviceMapping

인스턴스 스토어 볼륨을 인스턴스에서 사용 가능하도록 만들기

연결된 인스턴스 스토어 볼륨으로 인스턴스를 시작한 후에 먼저 볼륨을 마운트해야 볼륨에 액세스할 수 있습니다.

Linux 인스턴스의 경우 많은 인스턴스 스토어 볼륨이 ext3 파일 시스템으로 사전 포맷됩니다. SSD 기반 인스턴스 스토리지 볼륨(TRIM 명령 지원)은 어떤 파일 시스템으로도 사전 포맷되지 않습니다. 그러나 인스턴스를 시작한 후 볼륨을 원하는 파일 시스템으로 포맷할 수 있습니다. 자세한 내용은 인스턴스 스토어 볼륨 TRIM 지원 단원을 참조하십시오. Windows 인스턴스의 경우 인스턴스 스토어 볼륨을 NTFS 파일 시스템으로 다시 포맷합니다.

인스턴스에서 인스턴스 스토어 디바이스를 사용할 수 있는지의 여부는 인스턴스 메타데이터를 사용하여 확인할 수 있습니다. 자세한 내용은 인스턴스 스토어 볼륨용 인스턴스 블록 디바이스 매핑 보기 섹션을 참조하세요.

Linux 인스턴스의 경우 다음 절차에서 설명한 대로 인스턴스 스토어 볼륨을 보고 마운트할 수 있습니다.

Linux에서 인스턴스 스토어 볼륨을 사용 가능하게 만들려면
  1. SSH 클라이언트를 사용하여 인스턴스에 연결합니다. 자세한 내용은 Linux 인스턴스에 연결합니다 단원을 참조하십시오.

  2. df -h 명령을 사용하여 포맷되고 마운트된 볼륨을 봅니다.

    $ df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 3.8G 72K 3.8G 1% /dev tmpfs 3.8G 0 3.8G 0% /dev/shm /dev/nvme0n1p1 7.9G 1.2G 6.6G 15% /
  3. lsblk를 사용하여 시작 시에 매핑되지 않았지만 포맷되고 마운트된 볼륨을 봅니다.

    $ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme0n1 259:1 0 8G 0 disk ├─nvme0n1p1 259:2 0 8G 0 part / └─nvme0n1p128 259:3 0 1M 0 part nvme1n1 259:0 0 69.9G 0 disk
  4. 매핑된 인스턴스 스토어 볼륨만 포맷하고 마운트하려면 다음을 수행합니다.

    1. mkfs 명령을 사용하여 디바이스에서 파일 시스템을 생성합니다.

      $ sudo mkfs -t xfs /dev/nvme1n1
    2. mkdir 명령을 사용하여 디바이스를 마운트할 디렉터리를 생성합니다.

      $ sudo mkdir /data
    3. mount 명령을 사용하여 새로 생성한 디렉터리에 디바이스를 마운트합니다.

      $ sudo mount /dev/nvme1n1 /data

재부팅 후 연결된 볼륨을 자동으로 탑재하는 방법에 대한 자세한 내용은 재부팅 후에도 연결된 볼륨을 자동으로 탑재 섹션을 참조하세요.