실행 중에 EC2 인스턴스에 인스턴스 저장 볼륨 추가하기
실행 중에 EC2 인스턴스에 인스턴스 저장 볼륨 추가하기 (Add instance store volumes to an EC2 instance during launch)
C1, C3, M1, M2, M3, R3, D2, H1, I2, X1, X1e 같은 비-NVMe 인스턴스 저장 볼륨이 있는 인스턴스 유형을 실행할 때는 실행 시 연결하려는 인스턴스 저장 볼륨의 블록 디바이스 매핑을 지정해야 해요. 블록 디바이스 매핑은 인스턴스 실행 요청이나 인스턴스를 실행하는 데 사용되는 AMI에 지정되어야 해요.
출처: 문서
본문
AMI에 인스턴스 저장 볼륨의 블록 디바이스 매핑이 포함되어 있다면, AMI에 포함된 것보다 더 많은 인스턴스 저장 볼륨이 필요하지 않는 한 실행 요청에 블록 디바이스 매핑을 지정할 필요가 없어요. AMI에 인스턴스 저장 볼륨의 블록 디바이스 매핑이 포함되어 있지 않다면 반드시 실행 요청에 지정해야 해요.
NVMe 인스턴스 저장 볼륨이 있는 인스턴스 유형의 경우 지원되는 모든 인스턴스 저장 볼륨이 실행 시 자동으로 연결돼요.
고려 사항:
- 사용 가능한 인스턴스 저장 볼륨의 수는 인스턴스 유형에 따라 달라요.
- 각 블록 디바이스에 대해 디바이스 이름을 지정해야 해요.
- M3 인스턴스의 경우 블록 디바이스 매핑에 지정하지 않아도 인스턴스 저장 볼륨을 받을 수 있어요.
인스턴스 실행 요청에 블록 디바이스 매핑 지정하기
콘솔:
- Amazon EC2 콘솔을 엽니다.
- 대시보드에서 Launch instance를 선택해요.
- Application and OS Images 섹션에서 사용할 AMI를 선택해요.
- Configure storage 섹션의 Instance store volumes에서 인스턴스에 연결할 수 있는 인스턴스 저장 볼륨이 나열돼요.
- 연결할 각 인스턴스 저장 볼륨에 대해 Device name에서 사용할 디바이스 이름을 선택해요.
- 나머지 인스턴스 설정을 구성하고 Launch instance를 선택해요.
AWS CLI:
run-instances 명령을 --block-device-mappings 옵션과 함께 사용해요.
--block-device-mappings file://mapping.json
다음 블록 디바이스 매핑은 인스턴스 저장 볼륨 두 개를 추가해요.
[
{
"DeviceName": "/dev/sdc",
"VirtualName": "ephemeral0"
},
{
"DeviceName": "/dev/sdd",
"VirtualName": "ephemeral1"
}
]
PowerShell:
New-EC2Instance cmdlet을 -BlockDeviceMapping 옵션과 함께 사용해요.
$bdm = @()
$sdc = New-Object -TypeName Amazon.EC2.Model.BlockDeviceMapping
$sdc.DeviceName = "/dev/sdc"
$sdc.VirtualName = "ephemeral0"
$bdm += $sdc
$sdd = New-Object -TypeName Amazon.EC2.Model.BlockDeviceMapping
$sdd.DeviceName = "/dev/sdd"
$sdd.VirtualName = "ephemeral1"
$bdm += $sdd