Creare una partizione con i Logical Domain (LDom)
Sui sistemi CoolThreads (come i Sun Fire T1000 e T2000) Sun ha reso gratuitamente disponibile i Logical Domain (LDom), una tecnologia che permette di partizionarr logicamente le risorse. All'interno di tali partizioni è possibile installare un sistema su tutti i sistemi, sia in architettura SPARC che x86/x64.
Per predisporre un sistema e scaricare il software di gestione degli LDom è sufficiente seguire questo link.
Installati l'LDom Manager ed il Security Toolkit, si può partire con il partizionamento. Il primo passo è di ridurre le risorse associate al dominio principale (l'unico ad oggi presente sul sistema) per renderle disponibili per le nuove partizioni.
# pkgadd SUNWldm
# svcadm ldmd start
Quando l'LDom Manager è attivo si possono cominciare ad utilizzare i comandi di gestione:
# ldm list
Ora vi è solo un dominio attivo e tale dominio utilizza tutte le risorse disponibili. Per iniziare aggiungiamo i servizi di base del Control Domain, ovvero un Disk Server, un Virtual Switch ed una Virtual Console:
# ldm add-vdiskserver primary-vds0 primary
Il Disk Server pemette la condivisione di device virtuali ai domini guest, che utilizzeranno in questa configurazione un I/O virtualizzato attraverso il Control Domain.
# ldm add-vswitch net-dev=e1000g0 primary-vsw0 primary
Il Virtual Switch crea un canale di comunicazione Layer 2 tra i guest domain. Serve un Virtual Switch per ogni rete (logica) aggiunta all'interno del sistema.
# ldm add-vconscon port-range=5000-5100 primary-vcc0 primary
Le console per i domini guest sono fornite come un servizio del Control Domain e le porte di rete sono assegnate in modo sequenziale nel range deinito, quindi in questo caso il primo guest domain userà la porta 5000.
Adesso assegnamo un insieme ridotto di risorse al dominio primario (il Control Domain). Tutte le risorse non assegnate faranno parte di un pool disponibile per gli altri domini (guest).
# ldm set-crypto 1 primary
# ldm set-vcpu 4 primary
# ldm set-mem 1g primary
Con questi comandi abbiamo assegnato al Control Domain 1 MAU (acceleratore crittografico), 4 vCPU (4 hardware thread dei 32 disponibili su un sistema con 1 processore UltraSPARC T1) ed 1 GB di memoria (RAM).
# ldm add-config initial
In questo modo abbiamo salvato la configurazione attuale nel Service Processor del sistema e possiamo riavviarlo per attivare i cambiamenti ed attivare i servizi di Virtual Terminal.
# shutdown -i6 -g0 -y
# svcadm enable vntsd
Al termine del reboot il sistema avrà 4 CPU ed 1 GB RAM. Possiamo ora definire il primo guest domain utilizzando le risorse disponibili:
# ldm create domain1
# ldm set-vcpu 2 domain1
# ldm set-mem 2g domain1
Questo dominio avrà quindi 2 CPU e 2 GB RAM.
# ldm add-vnet vnet1 primary-vsw0 domain1
Il dominio è ora connesso al Virtual Switch precedentemente creato.
# ldm add-vdiskserverdevice /dev/dsk/<some_device> vol1@primary vds0
# ldm add-vdisk vdisk0 vol1@primary-vds0 domain1
Dobbiamo ora fornire un device da utilizzare come disco di boot per il nuovo dominio. Possiamo utilizzare un disco intero (interno o esterno), uno slice di un disco, un volume ZFS o anche un file (come immagine di un disco). Su tale device sarà poi possibile installare Solaris (o Linux). Per i successivi domini sarà possibile copiare/clonare tale device in modo da rendere ancora più rapida l'installazione (e usare il clone di ZFS per risparmiare spazio).
Per poter utilizzare il nuovo dominio è necessario effettuare il "bind" delle risorse, in modo da riservarle per un uso esclusivo anche se il dominio non è ancora attivo.
# ldm bind domain1
E' possibile salvare la configurazione attuale con un altro nome, ed avere differenti configurazioni in modo da poter passare dall'una all'altra:
# ldm add-config config1
Per attivare il dominio, il comando è il seguente:
# ldm start domain1
Ora possiamo entrare in console nel dominio, effettuare il boot su un immagine esistente o installare il sistema oprativo tramite Jumpstart. Si possono anche configurare le variabili dell'open boot, come il boot device, l'auto boot del dominio, ecc. Ulteriori informazioni sono indicate nell'Administration Guide.
E' importante sottolineare che è possibile aggiungere o rimuovere vCPU a caldo da un dominio attivo (sia il primario che quelli creati in seguito) con il comando:
# ldm {add-vcpu|remove-vcpu} <number> domain1
Posted at 05:58PM set 14, 2007
by danilop in Sun |