Tags: guida
MySQL e Windows: Guida pratica all'installazione
Ciao a tutti!
Sono finalmente riuscito a completare l'esperimento di cui avevo parlato tempo fa relativo all'utilizzo delle funzionalità di clustering di Windows per offrire un maggiore grado di disponibilità di un database MySQL.
In questo articolo trovate, partendo dall'impostazione di base del sistema, una guida dettagliata dei passi da seguire per arrivare alla configurazione (di test) prevista. Probabilmente, alcuni dei passi descritti saranno già noti a chi amministra server Windows, ma non fa mai male avere qualcosa di scritto e di uniforme per tutta la guida.
Anzitutto, vediamo cosa occorre per poter effettuare questo esperimento; dal punto di vista software, le funzionalità di Clustering di cui abbiamo bisogno sono presenti (e installate in automatico) nella versione Enterprise di Windows 2003 Server (e probabilmente anche nella versione Advanced Server di Windows 2000), quindi la semplice disponibilità dei supporti di installazione del sistema operativo è più che sufficiente. Per quanto riguarda MySQL, occorre staricare dal sito l'installer a 32 bit per Windows, facendo click qui per la pagina di selezione del download o qui per utilizzare direttamente un mirror in Italia.
Terzo ed ultimo componente software è il modulo iSCSI Initiator di Microsoft; lo potete trovare qui.
Per quanto riguarda l'hardware, trattandosi di un esperimento potete utilizzare una qualsiasi coppia di PC sufficientemente carrozzati, anche se per una soluzione di produzione macchine identiche sono fortemente consigliate (io ho fatto la prova con 2 server HP Proliant ML110 G3, Pentium D a 3,0 GHz e 512 MB di RAM); C'è sempre da ricordare che i server vanno comunque dimensionati per il carico ipotizzato mentre per un test non c'è questo vincolo.
Altro componente fondamentale per il funzionamento del cluster è uno storage condiviso: in questo caso, l'hardware ideale sarebbe una SAN collegata in fibra ottica (che garantisce affidabilità del sistema e elevate prestazioni) ma si porta dietro un prezzo di solito piuttosto pesante. Io ho usato un ulteriore server Proliant ML110 con tre dischi aggiuntivi rispetto alla configurazione di base e su cui ho installato una RedHat Linux 4.6 con un software iSCSI Target per fornire il servizio di storage ai due nodi del cluster tramite il modulo iSCSI Initiator di Microsoft.
Per collegare il tutto sono necessari due switch (di nuovo, per il test sono sufficienti dei banali 100Mbps) separati, uno che collegherà i nostri server alla rete pubblica per l'amministrazione e l'accesso degli utenti al servizio, mentre l'altro è ad uso esclusivo del trasporto dei dati sulla rete dello "storage": iSCSI utilizza la infrastruttura ethernet esistente per fornire accesso ai server del nostro cluster. Per funzionare in configurazione minima, i due nodi del cluster richiedono ognuno tre schede di rete, due per il server dello storage. Cavi vari di rete, più un cavo cross da utilizzare per la comunicazione diretta tra i due nodi del cluster.
Alla fine del cablaggio, la topologia che si vuole ottenere è la seguente (fate click sull'immagine per visualizzarla a dimensioni normali):
Ecco dunque l'elenco delle fasi di installazione:
Installazione base di Windows
Questo passo dell'intero setup è lasciato al lettore come warm-up per le fasi successive: si tratta di installare il sistema operativo sui due nodi del cluster. Non occorre selezionare nulla di speciale nei componenti di Windows in questa fase, in quanto eventuali moduli aggiuntivi verranno trattati successivamente.Impostazione degli indirizzi di rete sui tre computer costituenti il cluster
Occorre decidere in anticipo quali indirizzi ip impostare per tutti i segmenti di rete LAN coinvolti nel funzionamento del cluster; nel seguito di questa guida, verranno usati la sottorete 10.0.1.0/24 per la LAN pubblica, 192.168.1.0/24 per la LAN storage e 192.168.10.0/24 per la comunicazione intracluster.
E' anche una buona abitudine fare in modo che gli indirizzi ip assegnati alle varie schede di un singolo computer terminino tutti con lo stesso byte: ad esempio, in questo caso, cls1 usa sempre il byte finale pari a 11, cls2 pari a 12.
Trovate le schermate su come siano impostate le schede di rete dei tre computer qui.Installazione del software per fornire il servizio di iSCSI Target su Linux
Da inserire in seguitoInstallazione di Active Directory sul Cluster e del servizio di DNS
Nella concezione Microsoft di un cluster, il ruolo sia di AD che del DNS è fondamentale, ed è quindi necessario avere questi servizi installati per il funzionamento del cluster stesso. Considerato che il nostro ambiente di prova comprende solo due server Windows, almeno uno di essi deve diventare un controller di dominio. A quel punto, visto che non è permesso avere un cluster con i nodi in situazione ibrida rispetto ad AD (devono entrambi, o tutti, essere controller di dominio o server membri semplici), bisogna integrare anche il secondo nodo; trovate la procedura passo-passo qui.Creazione dell'utente proprietario del cluster in Active Directory
La documentazione dell'installazione di un cluster di Microsoft raccomanda la creazione di un utente (ovviamente dotato degli opportuni privilegi) che diventi proprietario del cluster stesso e che effettui i passi successivi. Trovate la guida passo-passo qui.Impostazione dei nodi del cluster per l'utilizzo delle unità disco tramite iSCSI
Questa procedura è effettivamente identica per entrambi i nodi, quindi basta seguirla con le opportune sostituzioni di nomi su ogni singola macchina; la trovate qui.Creazione del cluster e aggiunta del secondo nodo
I passi di creazione del cluster e dell'aggiunta del secondo nodo sono memorizzati qui.Configurazione del cluster per ospitare il servizio MySQL
Trovate tutta la procedura passo-passo per la configurazione del cluster e l'installazione del servizio di MySQL su entrambi i nodi qui.Considerazioni finali
Note, appunti e considerazioni sul sistema realizzato; le trovate qui.

07.04.09 10:44:00, 