Dove è documentato l'utilizzo dell'immagine guest cloud di Ubuntu su OpenStack?


8

Ogni volta che imposto una distribuzione devstack o OpenStack, voglio aggiungere l'ultima immagine del server Ubuntu LTS. Ci sono riuscito diverse volte in passato e credo che possa essere realizzato con qualcosa del tipo:

wget http://uec-images.ubuntu.com/releases/12.04.2/release/ubuntu-12.04.2-server-cloudimg-amd64-disk1.img
glance image-create --is-public true --disk-format qcow2 --container-format bare --name "precise" < ubuntu-12.04.2-server-cloudimg-amd64-disk1.img

Mi chiedo, tuttavia, dove posso trovare la documentazione ufficialmente supportata per farlo? Come posso contribuire ad esso? A volte ho problemi e senza istruzioni ufficiali non sono mai sicuro se si tratta del comando sopra o della mia distribuzione. Ho provato ad aggiungere queste istruzioni ai documenti ufficiali di OpenStack e / o ai commenti di accompagnamento di Disqus in due occasioni, ma questi sarebbero stati rimossi e non riesco a trovare un manuale coerente e supportato per fare questo, mi aspetterei una procedura molto semplice.

Inoltre, che dire delle elusive opzioni cloud-init per le immagini degli ospiti? Dove posso trovare le istruzioni su come usarli? Dal terminale e dall'interfaccia utente Web? Una volta ho dovuto andare a pescare queste informazioni nel codice sorgente.

Quello che ho trovato finora è il sito che elenca le immagini disponibili , ma uno che non indica quali sono i formati delle immagini - devo sempre cercare su Google per queste informazioni. C'è il wiki UEC che elenca molte ricette su come creare le tue immagini, ma non su come usare quelle esistenti (o le immagini cloud ubuntu premade). Poi c'è la categoria "cloud" più facilmente reperibile su ubuntu.com che si collega solo ad alcuni opuscoli promozionali e all'elenco non informativo delle immagini cloud.

So che questo è un rapporto semi-bug (che vorrei vedere risolto o aiutare a risolvere :)), ma vorrei anche conoscere le risposte alle domande che ho posto.


+1 da me, se provo a caricare il file .tar.gz scaricato da Ubuntu, non si avvia (nessun dispositivo avviabile), presumo il formato QCOW2 quando compilo il modulo di caricamento. Devo tornare al cli per ottenere un'immagine funzionante.
Chris White,

Risposte:


5

Avevo lo stesso problema, quindi ho finito per scaricare tutte le immagini con prefisso "trusty-server-cloudimg-amd64". C'era un tar che quando decompresso conteneva un file README.files che forniva alcune informazioni:

Questo archivio tar compresso contiene file rilevanti per questa immagine della macchina. Ogni nome file è preceduto da una stringa costante che indica le informazioni sulla versione e sull'architettura. Il prefisso, ad esempio, può essere "maverick-server-cloudimg-amd64", nel qual caso i file verranno denominati come maverick-server-cloudimg-amd64.img maverick-server-cloudimg-amd64-vmlinuz-virtual

Tutti o alcuni dei seguenti file possono essere presenti nell'archivio:

  • .img Questo file è un'immagine di partizione. Può essere raggruppato, caricato e registrato su EC2, Eucalyptus o OpenStack come Amazon Machine Image (ami / emi).

  • -disk1.img Questa è un'immagine del disco compresso qcow2. Può essere caricato su OpenStack o avviato direttamente tramite kvm. Probabilmente dovresti decomprimere l'immagine (qemu-img convert) prima dell'uso in un ambiente non di prova.

  • -uefi1.img Questa è un'immagine del disco compresso qcow2 che ha il partizionamento GPT e un bootloader UEFI. È avviabile tramite UEFI, BIOS / GPT e PVGRUB (con supporto per le tabelle delle partizioni GPT. È avviabile in OpenStack o direttamente tramite kvm. Probabilmente dovresti decomprimere le immagini (qemu-img convert) prima di usarlo in un ambiente non di test .

  • -root.tar.gz Questo è un file tar compresso contenente i contenuti del filesystem di root. In sostanza, 'tar cpzf - /'.

  • -vmlinuz-virtual Questo è un kernel Linux. Può essere raggruppato, caricato e registrato UEC come Amazon Kernel Image (aki / eki). La stringa '-virtual' rappresenta il pacchetto Ubuntu Linux da cui proviene questo kernel. Potrebbe essere potenzialmente '-server' o un'altra stringa.

  • -initrd-virtual Questo è un initrd di Linux. Può essere raggruppato, caricato e registrato UEC come Amazon Ramdisk Image (ari / eri). Non tutte le immagini richiedono un initrd e quindi questo file potrebbe non essere presente. Se non è presente, l'immagine deve essere registrata senza un ramdisk.

  • -loader Questo file è un'immagine compatibile multiboot in grado di caricare l'immagine guest. Nelle installazioni UEC in cui il sistema operativo host è 10.10 o successivo (LP: # 611144), questo può essere registrato come kernel (eki). Fornisce una funzione simile alla funzione rilasciata da Amazon "Abilitazione dei kernel forniti dall'utente". Quando il caricatore viene utilizzato per avviare un'istanza, un aggiornamento del kernel eseguito all'interno dell'istanza avrà effetto sugli avvii successivi.

  • -floppy Questo file è un'immagine del disco floppy. Non è utile o rilevante per l'esecuzione all'interno di EC2 o UEC. Lo scopo di questo file è consentire l'avvio di .img al di fuori di un cloud. Per eseguire l'avvio al di fuori di un ambiente cloud (dove non è presente un servizio metadati), è possibile utilizzare la seguente riga di comando kvm: kvm -boot a -fda -floppy -drive file = .img, if = virtio Non è necessario, e generalmente obsoleto, se -disk1.img è disponibile.


1

puoi trovare il formato di un'immagine usando:

# qemu-img info image_filename.

Questo ti dirà se è grezzo o qcow2 e di quale dimensione è.


Come posso installarlo?
Lucio,

OK, ma presumo che ciò sia possibile solo dopo aver scaricato l'immagine. Questo è utile, ma stavo chiedendo di più sulla documentazione per circa 12 immagini che sono elencate sul sito UEC. Non voglio davvero scaricarli tutti e decodificare le informazioni su di loro :)
Metakermit,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.