Cluster HA —
Un computer cluster, o più semplicemente un cluster (dall’inglese grappolo), è un insieme di computer connessi tramite una rete telematica.
Le due principali categorie di cluster sono:
Cluster per il calcolo distribuito
Cluster HA
Lo scopo principale del cluster per il calcolo distribuito è quello di distribuire un elaborazione molto complessa tra tutti i computer componenti il cluster.
Lo scopo principale del cluster HA (High Availability) è quello di rendere sempre disponibili le risorse che il server mette a disposizione.
In questo caso specifico parlerò di un cluster HA formato da 2 nodi e che si occupa di erogare servizi di proxy e content filtering, oltre a diverse altre funzioni tipiche dei bastion host.
In sostanza si tratta di fornire alla LAN una conenssione costante a internet “legando” tra loro 2 connessioni diverse, graficamente si può spiegare la cosa così:
Legenda:
R1= router Colt
R2= route kpnqwest
FW1=sangiorgio bastion host principale
FW2=perseo bastion host secondario
ip1=indirizzo virtualizzato che è il gateway di tutta la LAN
LAN=192.168.2.0/24
Con il termine bastion host si identificano tutti quei Firewall host critici per la sicurezza della rete in questione; data la sua importanza nella sicurezza di rete, tale host deve essere ben fortificato e l’accesso diretto a tale host deve essere massimamente controllato.
Il bastion host effettua la funzione di interfaccia tra la rete interna e quella esterna e per questo è spesso soggetto di attacchi dall’esterno ma del resto la sua più classica configurazione d’uso è quella di primo ed unico punto di contatto tra privato e pubblico dominio.
Premetto che essendo i 2 firewall connessi a ISP diversi in caso di caduta del principale le connessioni in essere cadranno tutte.
Ci sono 2 modi essenzialmente di affrontare la questione, e più precisamente:
a)virtualizzare solo gli indirizzi che servono per poter lavorare e configurare separatamente le 2 macchine e in caso di caduta del computer principale farli passare al secondario
b)creare una partizione che “salta” da un computer all’altro quando il nodo principale (Master) per un qualsiasi motivo non è disponibile, e li scrivere tutte le configurazioni.
la soluzione a) è piu’ facile e leggera ma offre lo svantaggio di dover sempre curare le configurazioni di ambo le macchine visto che devono essere speculari.
la soluzione b) prevede un tuning molto più delicato del sistema ma una volta definitivamente a posto le modifiche alle configurazioni sono valide per ambo le macchine, idem per gli aggiornamenti delle blacklists e per i log della navigazione che sostanzialmente diventano unici, come svantaggio richiede una scheda di rete preferibilmente gigaethernet supplementare.
La soluzione a) prevede l’utilizzo soltanto di ucarp, che è il porting sotto linux del protocollo carp di bsd.
La soluzione b) prevede l’utilizzo di drbd e di heartbeat, ho lungamente tentato di fare l’accoppiata drbd/ucarp ma non c’è stato verso di farla funzionare decentemente, credo che sia dovuto al fatto che drbd è sviluppato in sincrono con heartbeat e mal digerisce altri prodotti.
Di seguito entrambe le soluzioni che possono essere usate tranquillamente a seconda delle esigenze, per fare un esempio se si trattasse solo di tenere un gateway sempre su e non ci fossero dietro servizi accessori ucarp sarebbe l’ottimale, l’altra soluzione molto piu’ complessa è invece secondo me più indicata se si tratta di far saltare una serie di configurazioni che altrimenti diventerebbe pazzesco tenere allineate.
Categorised as: Cluster | Linux | Sistemi operativi | Work
Comments are disabled on this post