A cloud image is a disk image with a Linux based OS installed in it that supports a wide range of virtual hardware and that automatically adapts to it.
Some common properties / features of cloud images are:
- They are mostly hardware agnostic, especially when it comes to disk and network drivers. You could take the same cloud image and boot it with a virtio disk or a SCSI disk and it would still work in exactly the same way. Same for the network drivers.
- Cloud images support injection of configuration via CloudInit. In particular, SSH keys and static networking can be configured automatically.
- Cloud images automatically resize the root file system on first boot. This means that the images themselves can be small, and that they adapt to whatever hard disk space is available.
Because cloud images are so flexible, they are ideally suited for the cloud and hence their name.
In Ravello, if you upload a cloud image as a disk image, you can add it to any VM with almost any configuration, and it will work out of the box.