I'm curious if anyone out there has figured out how to launch an Amazon EC2 instance with just a ramdrive. I am looking at a scenario where I do not need/want any instance storage (all my data is stored as s3 objects). All I want is to launch a micro instance to perform computation.
Perhaps I need to create a tiny AMI - one that can fit in a ramdisk carved out of the instance's 613mb of ram. Creating the AMI is straightforward, but I don't know what commands will load that AMI into ram. And to my eye, nothing in the ec2-run-instances documentation looks relevant.
t1.micro instances have no instance or ephemeral storage.
t1.micro instances boot from an EBS volume as the root device.
The AMI image is stored on an EBS snapshot.
The standard Ubuntu EBS boot AMI root volume is 8G, or $0.80 per month (plus IO charges).
The smallest EBS volume allowed for an EBS boot AMI/instance is 1G, or $0.10 per month.
You cannot detach the root EBS volume and keep the instance running.
You could build an AMI that creates a ramdisk on boot and loads whatever you want there, but the EBS volume will remain attached and will be charged.
Just remember how little memory t1.micro has. Not much is going to fit.
Well, the problem in fact rely with the I/O charges not with root EBS being alloted. Basically you need to be able to load only a kernel with a ramdisk and that is it. For a monitoring app for example where I don't want to store data, I only want to initiate connections or send some packets to a destination a root on an ramdisk should be sufficient. I also don't want to waste stuff I don't use (like disk space or disk I/O).
Also, bear in mind that 612Mb of RAM is really really HUGE for an embedded system.