Clustering con NxFilter
NxFilter supporta il clustering per il bilanciamento del carico e il fail-safe. Una volta che si dispone di un nodo master, è possibile aggiungere al cluster fino a 4 nodi
nodi slave al proprio cluster. Tutti i nodi slave del cluster condividono le impostazioni del nodo master. Quindi, è possibile controllare
tutto sul nodo master.
Creare un cluster
Per creare un cluster, la prima cosa da fare è impostare un nodo master. Su System > Clustering,
è possibile impostare una delle installazioni di NxFilter come nodo master. Poi si possono aggiungere le altre installazioni di
NxFilter come nodi slave al nodo master. È necessario riavviare NxFilter dopo aver
aver modificato la configurazione del cluster.
Avvio del cluster NxFilter
Quando si avvia il cluster NxFilter, avviare prima il nodo master e poi i nodi slave.
Questo perché i nodi slave devono scaricare la configurazione iniziale dal nodo master quando si avviano.
Bilanciamento del carico e fail-safe
Un aspetto positivo di un filtro DNS è che esiste già un modo per bilanciare il carico e garantire la sicurezza.
Fate in modo che il vostro nodo master sia il server DNS primario e che il nodo slave sia il server DNS secondario nella vostra rete.
rete. In questo modo si ottiene il bilanciamento del carico e il fail-safe.
Anycast per il reindirizzamento dei blocchi
È possibile avere più indirizzi IP di reindirizzamento a blocchi su System > Setup per ridondanza.
Tuttavia, questo non è ideale quando si mettono 4 o più nodi dietro a 2 indirizzi IP usando Anycast. Se si impostano questi 2 indirizzi IP
sulla GUI, si rischia di inoltrare i client in un luogo non vicino a loro. Con Anycast, si vogliono reindirizzare i client bloccati
al server più vicino che è quello che li ha bloccati. A questo scopo, è possibile impostare 'block_node_ip' nella cartella
/nxcloud/conf/cfg.properties di ogni nodo con il suo IP Anycast.
Ad esempio, se si desidera inoltrare i client bloccati a 192.168.0.100 da un nodo,
aggiungere la seguente riga nel suo file /nxcloud/conf/cfg.properties.
block_node_ip = 192.168.0.100
Quando un nodo del cluster è fuori servizio
Quando un nodo slave si guasta, gli altri nodi non ne risentono. Quando il nodo master si guasta, non si perde il filtraggio a meno che non si riavvii il nodo slave.
filtraggio, a meno che non si riavvii il nodo slave prima di ripristinare il nodo master. Tuttavia, ci sono diverse cose di cui bisogna
di cui bisogna essere consapevoli.
1. Il reindirizzamento del login non funziona
Quando il nodo master non funziona, non è possibile condividere la sessione di login tra i nodi del cluster. Questo significa che la pagina di login
non funzionerà correttamente. Quindi, non reindirizziamo gli utenti alla pagina di login.
2. Gli utenti non autenticati verranno bypassati
Se non reindirizziamo gli utenti con password alla pagina di login, non possono accedere. Tuttavia, non vogliamo che perdano internet.
Per questo motivo, quando il nodo master non funziona, bypassiamo il filtraggio per questi utenti non autenticati.
Se non si vuole bypassare il filtraggio per nessun utente anche se il nodo master è fuori uso, provare ad avere un utente predefinito
che copra l'intero intervallo IP della rete.
3. Più indirizzi IP di server con un agente
Se si utilizzano i nostri programmi di agente con più indirizzi IP di server per il fail-safe, essi continueranno a funzionare.
Controllo degli accessi per un nodo slave
Se si aggiungono tutti gli indirizzi IP dei nodi slave in System > Clustering, qualsiasi tentativo di accesso a un nodo slave da un indirizzo IP di origine sconosciuto
sconosciuto verrà bloccato.
Monitoraggio dello stato di connessione
È possibile visualizzare lo stato di connessione dei nodi slave su System > Clustering. Una volta impostato il cluster
i nodi slave saranno visualizzati con l'ora dell'ultimo contatto nella pagina. Viene anche mostrato il numero di nodi
request, block, user, client-ip counting data. These counters will be set to 0 on midnight
or when you restart NxFilter.
Controllo della connessione del nodo master
Su un nodo slave, c'è un processo di controllo della connessione in esecuzione in backgroud.
Esso controlla la connessione al nodo master sulla base di TCP/19003 e TCP/19004.
Quando c'è un problema di connessione o se il nodo master si blocca, si viene avvisati con un'e-mail di avviso
all'indirizzo e-mail dell'amministratore su System > Alert.
Tuttavia, abbiamo riscontrato che questo metodo di controllo della connessione non funziona correttamente in alcune condizioni. Il nodo slave
deve ricevere una notifica con l'evento di chiusura del socket dal proprio sistema operativo. Funziona quando il nodo master si ferma o
quando c'è un problema di rete mentre è in esecuzione su Windows. Ma se si tratta di sistemi Linux, non funziona bene.
funziona bene. Il nodo slave rimarrà in attesa di risposte dal nodo master per molto tempo, anche in caso di guasto della rete.
un problema di rete.
Per risolvere questo problema, abbiamo creato un ulteriore processo di controllo sul nodo slave. Verrà controllato il TCP/80 del nodo
nodo master. Se il TCP/80 del nodo master viene chiuso, il nodo slave bypasserà la comunicazione con il suo nodo master e
e vi notificherà il problema con un'e-mail di avviso. Poiché questo non è adatto a tutti,
è necessario abilitarlo sul lato slave. È possibile aggiungere la seguente riga nel file /nxfilter/conf/cfg.properties
file.
cluster_double_check = 1
Risoluzione dei problemi
Quando non si dispone di una voce per il nodo master su /etc/hosts del nodo slave, il nodo slave potrebbe bloccarsi con il seguente messaggio durante il processo di avvio.
con il seguente messaggio durante il processo di avvio,
INFO [07-31 06:10:53] - MM, MasterCheck started.
Questo problema è dovuto alla nostra libreria DB. Richiede un hostname in /etc/hosts file per connettersi.