Amazon’s Werner Vogels, a.k.a. Santa For Nerds, has posted about the newly added capability to boot an Elastic Compute Cloud instance using an Elastic Block Store volume (i.e. network storage) instead of an Amazon Machine Image (which uses local storage). He lists several advantages, chief among them the much-asked-for ability to have an instance’s root volume persist across a stop and restart, but he doesn’t mention what might be another important advantage: performance. In some of my tests, EBS outperformed instance storage by a considerable margin, and that advantage should extend to an EBS root volume. I guess I’ll have to re-run some of my tests now.

Another set of issues here has to do with multiple instances from a single EBS snapshot. With the AMI infrastructure, it’s easy for EC2 to reach in and do instance-specific customization before you boot. Since the EBS snapshots are basically opaque to EC2, though, every instance is going to come up with exactly the same configuration. Therefore, instead of relying on EC2 to do this customization, users will have to do it themselves using many of the techniques familiar from diskless booting – e.g. looking up configuration based on MAC or IP address (which will be unique per instance). It’s not all that hard, but I’ll bet some people will get caught by this the first time.