lunedì 12 gennaio 2009

Hyper-V Script - Identificare le VM connesse ad una Virtual Network con Powershell

powersh Lavorando con una infrastruttura Virtuale abbastanza complessa, con diverse VM e Virtual Network, vi sarà sicuramente capitato di trovarvi nella situazione di dover eliminare una Virtual Network.
Se avete ben documentato la vostra infrastruttura virtuale saprete sicuramente quale VM erano/sono connesse alla Virtual Network che vi apprestate ad eliminare. Già adottare una chiara toponomastica aiuta molto.
Nel caso in cui non abbiate documentato la vostra infrastruttura, oppure vi troviate ad intervenire su una infrastruttura preesistente da un cliente e volete fare ordine...Vi troverete nella situazione di chiedervi: quali VM sono connesse ad una Virtual Network ?

Quali strumenti mette a disposizione Hyper-V?
1. Virtual Network Manager
2. Virtual Machine Settings
3. Powershell

1. Virtual Network
Virtual Network Manager
di Hyper-V non aiuta molto in quanto, chi ha avuto gia' modo di lavorarci, non fornisce questo tipo di informazione. Possiamo solo creare/configurare/eliminare gli oggetti Virtual Network, poco altro. Il livello di informazioni fornite sulla infrastruttura  è pari a ZERO. Non fa al nostro caso.

01

Attenzione: Virtual Network Manager vi permette di eliminare VN in uso senza chiedervi conferma. Una volta selezionata la VN, fatto clic su Remove | OK. Ciao Ciao... Ricrearla con lo stesso nome non serve!


2. Virtual Machine Settings

Tramite Hyper-V Manager dovremmo andare ad analizzare la configurazione di ciascuna VM per vedere a quali Virtual Network è connessa. Operazione che, se si tratta di poche VM, possiamo ancora fare a mano ma, nel caso in cui le VM siano tante - nemmeno poi tante a dir la verità - non arrivate alla terza VM che vi siete belli che stufati. Se poi condiamo il tutto con le classiche distrazioni del caso, si rischia di fare, inutilmente, una frittata. Quindi la modalità, per quanto fattibile, risulta poco pratica e soggetta ad errore (umano).

02 

3. Powershell

Per risolvere questo problema ed eliminare con sicurezza una Virtual Network basta utilizzare Powershell. Basta utilizzare la Hyper-V Management Library, disponibile gratuitamente su CodePlex, e qualche concetto sul funzionamento di Powershell.
Una volta caricata la Hyper-V Management Library sul nostro server Hyper-V, basterà eseguire, con i privilegi amministrativi, il seguente comando:

PS C:\Users\Administrator> Get-VM -server MT-HPV | List-VMNic | foreach ($_) { if ($_.Network -eq "vLAN") { write-host $_.VM }}

dove:
MT-HPV è il server Hyper-V, se lo eseguite direttamente su Hyper-V non è necessario.
vLAN  è il nome della Virtual Network che vogliamo eliminare.

Una volta lanciato il comando Powershell, sarà restituito l'elenco delle VM che sono connesse alla Virtual Network vLAN. Di seguito uno screeshot del risultato:

00
Nel mio caso l'eliminazione della Virtual Network vLAN avrebbe disconnesso ben 10 VM...un bel problema!! 

Nota:
Le VM elencate sono tutte quelle connesse alla Virtual Network vLAN, indipendentemente dal loro stato (in esecuzione, spenta o in pausa). 

Per domande, commenti, suggerimenti sul forum di VMexperts.org

Luca

Luca Conte, MCSE/MCSA:Security, MCT, VMWare VCP
Consulting Services & Professional Training
Virtualization Discovery - http://www.virtualizationdiscovery.com
Virtualization Technical Days - http://days.virtualizationdiscovery.com


Riferimenti
CodePlex - Open Source Project Community
PowerShell management Library for Hyper-V
Ricavare il GUID delle VM con Powershell
Home Page Powershell
KB952627 - Description of the Windows Vista Service Pack 1 Management Tools update for the release version of Hyper-V


Download

Download Download PowerShell management Library for Hyper-V
Download

Download RSAT for Windows Vista Service Pack 1 (32-bit) Edition.

Download

Download RSAT for Windows Vista Service Pack 1 (64-bit) Edition.

Download

Download the Update for Windows Vista (32-bit).

Download

Download the Update for Windows Vista (64-bit).

Etichette: , , , ,

sabato 27 settembre 2008

NLB Unicast con Hyper-V: Un problema (quasi) risolto

questionmark Un problema che abbiamo affrontato con Hyper-V riguarda la tecnologia di clustering NLB - Network Load Balancing -. In particolare quando 2 o piu' virtual machine (nel nostro caso solo due) operano bilanciando il traffico di rete con NLB.

Le VM sono configurate con gli Integration Services di Hyper-V ed utilizzano, per comunicare in rete, i nuovissimi Synthetic Devices

Se si utilizzano i Synthetic Devices e si attiva la modalità UNICAST sul cluster NLB ci si trova davanti una bella sorpresa...il cluster NLB converge ma il VIP è irraggiungibile...Quindi, Problema!!.  

1a Soluzione: Hyper-V mette a disposizione anche delle schede di rete emulate note come Legacy Adapter

Se si utilizzano i Legacy Adapter e si attiva la modalità UNICAST del cluster NLB il il cluster NLB converge ed il VIP è raggiungibile!!.

Però...Usare NLB UNICAST con le VM vuol dire rinunciare alle performance fornite dai Synthetic Devices. 

L' articolo della KB Microsoft, precisamente la KB953828 - The NLB host does not converge as expected on Windows Server 2008 Hyper-V virtual machines del 25 giugno 2008 fornisce alcune indicazioni riguardo ad un problema con NLB; ma la KB parla di cluster NON convergente mentre invece il cluster converge ma non risponde. La procedura sembra non applicabile a questo caso.

A questo punto, anche in vista di un prossimo appuntamento a Novembre con Microsoft durante i Microsoft Days, abbiamo chiesto lumi a Giorgio Malusardi - IT Pro Evangelist di Microsoft Italia.

Giorgio ha risposto alla nostra domanda con un post sul suo blog - Hyper-V e Network Load Balancing -; chi ha avuto modo di seguire Giorgio durante le sessioni sa come puo' essere sintetico e chiaro nell'esporre la soluzione di problemi.

Il problema è risolvibile senza installare alcuna Patch ma operando, a mano, sul MAC Address del Synthetic Device utilizzato dal cluster. La parte tediosa è che deve essere ripetuta per tutte le VM che fanno parte del cluster NLB. Considerato che con Hyper-V si creano un bel pò di VM - questo è anche il bello della virtualizzazione - ...l'aspetto puo' destare qualche perplessità nell'utilizzo intensivo dell'NLB fra VM.

La soluzione l'abbiamo provata e funziona!!

Adesso è possibile usare NLB UNICAST con le VM sfruttando la velocità delle interfacce Sintetiche, vero PLUS di Hyper-V.

IMPORTANTE: Questa "anomalia" si presenta solo per la modalità UNICAST. La modalità MULTICAST non crea alcun problema di funzionamento con le VM che appartengono al cluster NLB ed utilizzano i Synthetic Devices.

Per ora abbiamo un Workaround...ma aspettiamo presto da Microsoft una soluzione definitiva a quello che è evidentemente un bug.

Protagonista principale di questa avventura è stato Giulio Martino, con me ha condiviso momenti di riflessione e dibattito sulle possibili cause di questa anomalia. 

Proprio Giulio Martino terrà Martedi 30 Settembre dalle 14.30 alle 15.30 il Webcast - Implementare una soluzione ad alta disponibilità (NLB) con Microsoft Hyper-V.  Durante il Webcast sarà così possibile approfondire ulteriormente il funzionamento del Network Load Balancing e della sua configurazione su Hyper-V.

Al momento il Webcast ha fatto il TUTTO ESAURITO.

Se siete interessati a ricevere la registrazione basta inviare una mail a education<at>vmexperts<d0t>org indicando il titolo del Webcast ed il vostro nick/email utilizzato per registrarvi sul forum di VMexperts.org. Saranno accettate solo un numero limitato di richieste provenienti SOLO dagli iscritti al forum di VMexperts.org.

Etichette: , ,

mercoledì 18 giugno 2008

VMware Virtual Networking Concepts

VMwareNC Uno degli aspetti piu' interessanti della soluzione di virtualizzazione VMware con ESX server riguarda proprio il networking. Più precisamente il virtual networking.

Un ottimo documento, di appena 12 pagine, che passa in rassegna le funzionalità del Virtual Networking di VMware è proprio VMWare Virtual Networking Concepts.

Il livello di complessità che è possibile raggiungere con le soluzioni VMware è davvero notevole. Ancora più importante è avere ben chiare le logiche di comportamente e le funzionalità che VMWare ESX Server mette a disposizione.

 

Per scaricare il documento in formato PDF fare clic qui.

Il documento conclude una tabella interessante dedicata ai valori massimi supportati dal Virtual Networking di VMWare per ESX Server 3.0 e 3.0.1.

Di seguito la tabella:

esx3.0.1max

Etichette: , ,