为什么EC2 AWS实例显示额外的块设备?

我正在使用aws cli的autoscaling创buildEC2实例。 尽pipe在我的启动configuration中只有两个设备映射,但由此产生的实例还有一个额外的设备。 相关地图Json:

"BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "VolumeSize": 32, "VolumeType": "gp2", "DeleteOnTermination": true } }, { "DeviceName": "/dev/sdb", "Ebs": { "VolumeSize": 64, "VolumeType": "gp2", "DeleteOnTermination": true } } ] 

出乎意料的是,这个例子有三个:

 $ sudo lsblk | grep disk xvda 202:0 0 32G 0 disk xvdb 202:16 0 64G 0 disk xvdc 202:32 0 37.5G 0 disk 

经调查,EC2元数据显示了一个额外的短暂映射:

 $ curl -s http://169.254.169.254/latest/meta-data/block-device-mapping/ ami ebs1 ephemeral1 

通过读取实例块设备映射 ,事实certificate:

默认情况下,启动的实例包括在启动实例的AMI的块设备映射中指定的任何存储设备。 您可以在启动实例时指定对实例的块设备映射的更改,这些更新将覆盖或合并AMI的块设备映射。

查看 AMI映射的内容,并在configuration中用NoDevice参数覆盖额外的映射,解决了后续实例的问题。