Nube-listas han sido personalizado por el fabricante de distribución para funcionar bien bajo un hipervisor como OpenStack, EC2, KVM, y LXC (no es estrictamente un hipervisor) en lugar de en hardware físico. Esto implica eliminar paquetes que solo se necesitan en entornos físicos como controladores inalámbricos, etc., y agregar paquetes que son útiles en un entorno de nube. Por ejemplo, durante el proceso de arranque, las imágenes listas para la nube descargan metadatos del entorno, como el nombre de host y la información de red. Esta información se usa para "personalizar" una nueva instancia cuando se inicia por primera vez.
Si realmente quiere entrar en detalles, el Ubuntu UEC Images page tiene muchos detalles sobre la composición de las imágenes de la nube de Ubuntu y otra información, como cómo construir uno usted mismo.
Estoy seguro de que puede crear una máquina virtual que ejecute el escritorio de Windows, pero nunca tuve la oportunidad de hacerlo. Si nos fijamos en el Amazon page about Windows, todo se trata de ejecutar aplicaciones de servidor como SQL Server y ASP.NET.
Uno de los paquetes más útiles a los que alude Tim (para Ubuntu) es la batalla probada CloudInit https://help.ubuntu.com/community/CloudInit Si proporciona su instancia con userdata en el arranque, este paquete tomará eso userdata y configure su instancia con él. –
Gracias @EverettToews. CloudInit realmente rockea por todos lados. –