# Cluster ha + vmWare

## spugna

Salve a tutti ... è da un po' che non scrivo ma lurko abbastanza ...  :Smile: 

Stamattina mi sono svegliato con la voglia di approfondire il discorso clustering, visto che dove lavoro da un mesetto abbiamo la necessità di aumentare l'affidabilità di un nostro server, equipaggiato con windows 2000.

Lo scopo è far girare ancora windows 2000 che gestisce delle connessioni terminal server (scelta infelice visto che avrei preferito ICA, ma i boss han deciso così). All'inizio avevano pensato di realizzare un cluster con windows 2003 ma dopo aver acquistato le macchine senza aver controllato prima i costi proibitivi della soluzione cluster di microsoft hanno di fatto messo in pista uno solo dei 3 server, un bello spreco.

Guardando in giro per la rete ho visto che si può realizzare un cluster HA con gentoo, BRBD, e heartbeat.

Avevo pensato appunto di prendere due dei 3 server e iniziare a fare dei test.

Ovviamente per quanto riguarda windows2000 lo installerei su vmware server, gestito da heartbeat.

Secondo voi mi sto muovendo nella giusta direzione?

Qualcuno, tipo drDran che se ne intende, avrebbe della documentazione da consigliarmi?

Thankz!

----------

## crisandbea

non sò se il tuo problema sia inerente a Gentoo, ed al mondo OpenSource in generale, sembrerebbe di no, visto che chiedi aiuto su Winzooz......

lascio ai moderatori il loro compito di analizzare il tutto.

ciao

----------

## spugna

direi che è inerente a gentoo e opensource in generale, visto che la "base" su cui dovrei realizzare il progetto sempre di gentoo si tratta.

----------

## crisandbea

 *spugna wrote:*   

> direi che è inerente a gentoo e opensource in generale, visto che la "base" su cui dovrei realizzare il progetto sempre di gentoo si tratta.

 

beh allora chiedo venia, non lo avevo letto e/o capito... 

ciao

----------

## noppy

secondo me non e' una buona idea , devi comunque lanciare 2 vmware con win una per ogni nodo e poi mettere heartbeat per sharare un ip virtuale sulle due macchine ma cmq resta il fatto che i processi non lavorano in sincrono anche condividento un filesystem in cluster , almeno io la vedo cosi'

----------

## gutter

Non mi pare un buon approccio. 

Per un paio di buoni motivi:

1 - le performance degraderebbero velocemente

2 - dovresti creare un RG (Resource group) con solo un ip e non con vmware e quindi dovresti vedere come risolvere il discorso dei FS se te ne servono.

----------

## spugna

 *gutter wrote:*   

> Non mi pare un buon approccio. 
> 
> Per un paio di buoni motivi:
> 
> 1 - le performance degraderebbero velocemente
> ...

 

Cosa intendi per le "performance degradderebbero velocemente"? Ti riferisci al fatto che windows + ha uptime più si incricca?

e FS per cosa sta? Filesytem? O a a che fare con la rete?

----------

## gutter

 *spugna wrote:*   

> 
> 
> Cosa intendi per le "performance degradderebbero velocemente"? Ti riferisci al fatto che windows + ha uptime più si incricca?
> 
> e FS per cosa sta? Filesytem? O a a che fare con la rete?

 

Per performance mi riferisco al fatto che non mi pare in generale una buona idea utilizzare un servizio che gira dentro un os emulato (per emulato intendo in vmware). 

Per quanto riguarda i FS (Filesystems) mi riferisco al fatto che dal momento che vmware non potrà essere gestito come servizio (tipo apache) dovrai necessariamente duplicare il FS (che contengono la tua immagine di windows) dal momento che l'unica soluzione che per il momento vedo è quella di spostare il VIP (Virtual IP) da un nodo all'altro. 

Poi mi vengono una serie di dubbi per cui tale soluzione non mi sembra "buona":

1 - Come fai a capire se una istanza di vmware (quella che gira sulla macchina che ha il VIP) è su o no (dal momento che heartbeat non può monitorarla)?  

2 - Metti che "per puro caso" sulla macchina cui è associato il VIP vada in crash vmware e/o windows, ti ritroveresti a non poter fornire il tuo servizio dal momento che il cluster non si sarebbe accorto di ciò non potento monitorare vmware. In questa eventualità che senso avrebbe mettere su un servizio in HA quando in realtà non lo è per natura?

Spero di essere stato chiaro  :Wink: 

----------

## IlGab

Hai bisogno di vmware ESX ma il costo è più proibitivo del cluster MS  :Wink: 

Io penso che con HA puoi gestire l'avvio e lo shutdown del servizio vmware e il mount (sempre che esista) del vmfs su cui girano le macchine virtuali.

Quello che purtroppo non puoi fare, come ti hanno già detto, è controllare se la macchina all'interno di vmware è attiva o meno, a meno che non accrocchi con qualche script grezzo il fatto che la macchina virtuale sia o meno viva.

----------

## .:deadhead:.

teoricamente lasci in background sulla VM windows un altro mini servizio e quando questo non risponde switchi. 

Però seriamente la faccenda sta diventando sempre + un accrocchio. un cluster M$ credo che possa davvero essere la 

soluzione migliore per aumentare l'affidabilità di tale servizio: aumentare le variabili in gioco non aiuta a raggiungere la soluzione del problema.

----------

## gutter

 *.:deadhead:. wrote:*   

> teoricamente lasci in background sulla VM windows un altro mini servizio e quando questo non risponde switchi. 
> 
> 

 

E come lo monitori?

----------

## noppy

client/server attraverso TCP ?! cioe' su vm windows lanci pacchetti regolari a una porta sulla macchina reale che resta in ascolto su tale porta

----------

## drizztbsd

Secondo me fai prima a migrare tutto sotto Linux se possibile sennò ti conviene usare il cluster M$

----------

## noppy

sono perfettamente daccordo

----------

## gutter

 *noppy wrote:*   

> client/server attraverso TCP ?! cioe' su vm windows lanci pacchetti regolari a una porta sulla macchina reale che resta in ascolto su tale porta

 

Soluzione pessima dal momento che stai introducendo un SPF  (Single Point of Failure) in una soluzione HA che per definizione non ne deve avere.

----------

## noppy

non e' che poi linux-ha faccia qualcosa di molto diverso

----------

## gutter

 *noppy wrote:*   

> non e' che poi linux-ha faccia qualcosa di molto diverso

 

Cioè? Non ho capito cosa vuoi dire.

----------

## spugna

Uhm ...

la soluzione proposta di passare tutto a linux era quella che mi allettava di piu. Purtroppo i programmi che devo servire girano solo su win ...

Mi orienterò allora su vmware ESX oppure sulla soluzione cluster di mamma M$.... però quanti soldi!

Comunque ballonzolando in rete ho visto sta cosa: http://www.lancs.ac.uk/staff/clinch/dtvm/ ...

Leggendo qui ... e anche avendo provato vmware ...

esiste una versione serviced di vmware, tra l'altro gratuita, che è app-emulation/vmware-server, oltretutto nella VM hosted c'è la possibilità di installare vmware-tools, che comprende un servizio di heartbeat verso il daemon di vmware-server.

Poi con DRBD il FS della Virtual Machine (che di fatto è un file) non è condiviso dai due nodi del cluster?

----------

## gutter

 *spugna wrote:*   

> 
> 
> Leggendo qui ... e anche avendo provato vmware ...
> 
> esiste una versione serviced di vmware, tra l'altro gratuita, che è app-emulation/vmware-server, oltretutto nella VM hosted c'è la possibilità di installare vmware-tools, che comprende un servizio di heartbeat verso il daemon di vmware-server
> ...

 

Ma parli di vmware server:

```

*  app-emulation/vmware-server [ Masked ]

      Latest version available: 1.0.2.39867

      Latest version installed: [ Not Installed ]

      Size of downloaded files: [no/bad digest]

      Homepage:    http://www.vmware.com/

      Description: VMware Server for Linux

      License:     vmware

```

 :Question: 

Ma non è a pagamento????

----------

## Scen

Da qualche mese  non più.

In un seminario a cui ero andato un personaggio disse che la versione Server "base" diventava gratuita, così uno la provava, ne diventava entusiasta, e passava subito alla versione a pagamento "ESX" (superiore in quanto a performance e caratteristiche).  :Rolling Eyes: 

----------

## spugna

Tirando le somme ...

sarà o no possibile realizzare un cluster HA con gentoo per fargli servire delle Virtual Machine sulle quali gira Winzozz?

Tornando a VMware mi sembra che una differenza sostanziale tra la versione server gratuita e la ESX sia che la seconda è una soluzione "bare metal" ... ovvero si installa direttamente sul server senza avere un sistema operativo su cui giri ... o ho scritto una cappella?

Quello che mi chiedevo ... tralasciando il discorso Point of Failure nella virtual machine (che con Win beh ... è win) ...

Hearbeat gestirà il failover di vmware server? (se uno dei due nodi si schianta, la cosa sarà indolore-trasparente o heartbeat riavvierà la VM sull'altro nodo?)

Leggendo il documento che ho linkato pare di si ...

----------

## spugna

Ho fatto alcune prove.

mi sono documentato un po' e ho realizzato un piccolo cluster, però ho incontrato alcuni scogli.

heartbeat in accoppiata con drbd funziona benissimo, solo che una unità drbd non può essere montata contemporaneamente su entrambi i nodi del cluster.

In pratica l'unica cosa che sono riuscito a fare è questa:

Nodo1: VM1

Nodo2: VM2

Se uno dei due nodi casca la VM corrispettiva viene riavviata sul nodo sano.

heartbeat monta l'unità drbd sul nodo sano e avvia la VM.

Quando il nodo schiantato ritorna in funzione heartbeat riavvia la vm sul nodo in questione.

----------

## gutter

 *spugna wrote:*   

> 
> 
> mi sono documentato un po' e ho realizzato un piccolo cluster, però ho incontrato alcuni scogli.
> 
> heartbeat in accoppiata con drbd funziona benissimo, solo che una unità drbd non può essere montata contemporaneamente su entrambi i nodi del cluster.
> ...

 

Questo mi sembra normale  :Wink:  dal momento che il filesystem non è cluster aware.

----------

