>>Andrew: how do you specify the block storage to Amazon? 1: when you create an AMI (Amazon Machine Image, which is like a configuration blueprint for creating VM's) OR 2: when you launch an AMI from the command line you can override the device mappings for that AMI
It is possible to override the device mappings when launching a VM using one of the various command line tools such as ec2-run-instances. This link http://docs.aws.amazon.com/AWSEC2/latest/CommandLineReference/ApiReference-cmd-RunInstances.html explains the --block-device-mapping parameter. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html The above link says: "A block device mapping defines the block devices (instance store volumes and EBS volumes) to attach to an instance. You can specify a block device mapping as part of creating an AMI so that the mapping is used by all instances launched from the AMI. Alternatively, you can specify a block device mapping when you launch an instance, so this mapping overrides the one specified in the AMI from which you launched the instance.” also: "Each instance that you launch has an associated root device volume, either an Amazon EBS volume or an instance store volume. You can use block device mapping to specify additional EBS volumes or instance store volumes to attach to an instance when it's launched. You can also attach additional EBS volumes to a running instance;” *****Device naming Amazon uses block device names of the form /dev/sdX the root device is /dev/sda1 However, in many cases the kernel renames the device names from /dev/sdX to the form /dev/xvdX (XVD being Xen Block Device). This may well be the case for what we are doing but I haven’t found the hard evidence yet. Further reading: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/RootDeviceStorage.html http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/device_naming.html
