Sarebbe possibile distribuire immagini desktop sulle workstation dell'ufficio da MAAS?
Mi piacerebbe vedere uno scenario in cui le workstation hanno una shell grafica e alcune istanze KVM di avvio PXE pronte per essere distribuite. Capisco che esiste la possibilità che si verifichino gravi penalizzazioni delle prestazioni per alcuni processi come forse la GUI stessa, ma al momento non mi interessa.
Posso immaginare alcuni percorsi da percorrere e darvi un'impressione:
- Crea un'immagine di distribuzione personalizzata. E distribuiscilo in un cluster.
- Aggiungi alcuni dettagli extra allo script di messa in servizio/distribuzione.
- Crea un charm juju che contenga un desktop e assegnalo a ogni macchina all'interno della zona maas.
Ma queste sono solo idee. Come potrei procedere?
Risposta accettata:
curtinator
[a] potrebbe aiutarti a personalizzare le immagini desktop di Ubuntu che potrebbero essere distribuite da MAAS.
Vai su [a] e scarica il curtinator
fonte di bzr
. Il README
dell'origine del progetto curtinator dovrebbe essere sufficiente per guidare l'utente a creare un'immagine desktop Ubuntu distribuibile tramite MAAS ed essere importata da MAAS. Tuttavia, lascia che ti illustri i passaggi "troppo dettagliati"[b] secondo il README. Ho testato questi passaggi su MAAS 2.1.3 con le immagini desktop di Ubuntu Xenial 16.04.1. Puoi saltare i seguenti passaggi se pensi che il README ti basti.
Preparare l'ambiente
- Ho testato questi passaggi sul mio sistema desktop Ubuntu Xenial 16.04.1.
sudo apt-get install qemu-kvm libvirt-bin virt-viewer genisoimage
- Riavvia il sistema dopo aver installato i pacchetti di cui sopra.
bzr branch lp:curtinator
per recuperare il sorgente di curtinator (potrebbe essere necessario installare bzr tramitesudo apt-get install bzr
) da qualche parte, dì<curtinator root>
- Scarica un'immagine desktop di Ubuntu. In questo caso, scegliamo
ubuntu-16.04.1-desktop-amd64.iso
e inseriscilo in<curtinator root>
Usa curtinator
- Vai al sorgente curtinator scaricato
<curtinator root>
- In
<curtinator root>
, esegui./scripts/curtinator ubuntu-16.04.1-desktop-amd64.iso
- Se tutto funziona bene, otterrai un tarball
ubuntu-16.04.1-desktop-amd64.iso.tar.gz
in<curtinator root>
.
Il messaggio della console è simile a:
$ ./scripts/curtinator ubuntu-16.04.1-desktop-amd64.iso
Extracting ubuntu-16.04.1-desktop-amd64.iso to ubuntu-16.04.1-desktop-amd64
Creating ubuntu-16.04.1-desktop-amd64/casper/preseed.cfg
Patching ubuntu-16.04.1-desktop-amd64/casper/initrd.lz with ubuntu-16.04.1-desktop-amd64/casper/preseed.cfg
Creating ubuntu-16.04.1-desktop-amd64/root.qcow2
Creating ubuntu-16.04.1-desktop-amd64/libvirt.xml
Starting domain ubuntu-16.04.1-desktop-amd64
Domain ubuntu-16.04.1-desktop-amd64 defined from ubuntu-16.04.1-desktop-amd64/libvirt.xml
Domain ubuntu-16.04.1-desktop-amd64 started
Installing, run this command for progress:
# virt-viewer ubuntu-16.04.1-desktop-amd64
Compressing tarball
Finished ubuntu-16.04.1-desktop-amd64.iso.tar.gz
Tieni presente che il percorso relativo è importante durante l'esecuzione di curtinator.
Carica l'immagine desktop personalizzata di Ubuntu 16.04.1
scp ubuntu-16.04.1-desktop-amd64.iso.tar.gz <your MAAS server>
- Sul tuo server MAAS (il mio è MAAS 2.1.3.x), esegui
maas $YOUR_MAAS_PROFILE boot-resources create -d name=<YOUR_CUSOMIZED_ISO_NAME> architecture=amd64/generic filetype=tgz [email protected]=<where your ubuntu-16.04.1-desktop-amd64.iso.tar.gz is>
.
Nel mio caso, lo è
maas askubuntuprofile boot-resources create -d name=custome_desktop_16-04-01 architecture=amd64/generic filetype=tgz [email protected]=/home/ubuntu/ubuntu-16.04.1-desktop-amd64.iso.tar.gz
YOUR_CUSOMIZED_ISO_NAME
è un nome di etichetta che verrà visualizzato sul dashboard MAAS quando selezioni l'immagine che desideri distribuire. Nel mio caso, è custome_desktop_16-04-01
. Puoi vedere che c'è un'immagine personalizzata che si sta sincronizzando nella seguente schermata del dashboard MAAS.
Attendi qualche minuto finché non viene sincronizzato.
Ora puoi distribuire questa immagine desktop personalizzata come al solito. Seleziona la scheda Custom
e il nome dell'immagine desktop personalizzato in questo modo:
[a] https://launchpad.net/curtinator
[b] Troppo dettagliato quindi non aggiornerò il README; )