Prima di eseguire le operazioni riportate in questo capitolo, vedere Pianificazione di Dispatcher. Questo capitolo illustra come creare una configurazione di base per il componente Dispatcher di Load Balancer.
Prima di iniziare le procedure di configurazione contenute nella tabella, verificare che la macchina Dispatcher e tutte le macchine server siano collegate in rete, abbiano indirizzi IP validi e siano in grado di eseguire il ping reciprocamente.
Attività | Descrizione | Informazioni correlate |
---|---|---|
Configurazione della macchina Dispatcher. |
Configurazione del bilanciamento del carico. |
Configurazione della macchina Dispatcher |
Configurazione delle macchine da sottoporre a bilanciamento del carico. | Creazione dell'alias dell'unità loopback, ricerca di instradamenti supplementari ed eventuale eliminazione di questi ultimi. | Configurazione delle macchine server per il bilanciamento del carico |
Per configurare il Dispatcher, sono disponibili quattro metodi di base:
Si tratta del metodo più diretto per configurare il Dispatcher. i valori dei parametri dei comandi devono essere immessi utilizzando l'alfabeto inglese. Le uniche eccezioni sono i nomi host (utilizzati in cluster, server e comandi highavailability) e i nomi file (utilizzati in comandi file).
Per avviare il Dispatcher dalla riga comandi:
È possibile utilizzare una versione ridotta dei parametri del comando dscontrol, immettendo le lettere che designano in modo univoco i parametri. Ad esempio, per visualizzare la guida del comando di salvataggio file, è possibile immettere dscontrol he f anziché dscontrol help file.
Per attivare l'interfaccia della riga comandi: emettere dscontrol per ricevere un prompt dei comandi dscontrol.
Per chiudere l'interfaccia della riga comandi: immettere exit o quit.
È possibile immettere i comandi per la configurazione di Dispatcher in un file script di configurazione per eseguirli tutti insieme. Consultare File di configurazione di Load Balancer di esempio.
dscontrol file appendload myscript
dscontrol file newload myscript
Per salvare la configurazione corrente nel file di script (ad esempio, savescript), eseguire il comando:
dscontrol file save savescript
Questo comando salverà il file script di configurazione nella seguente directory:
Per istruzioni generali e un esempio della GUI, vedere Figura 38.
Per avviare la GUI, effettuare quanto segue:
dsserver
Per configurare il componente Dispatcher dalla GUI, è necessario anzitutto selezionare Dispatcher nella struttura ad albero. È possibile avviare l'executor e il gestore dopo essersi collegati a un host. Inoltre, è possibile creare cluster contenenti porte e server e avviare gli advisor per il gestore.
La GUI può essere utilizzata per eseguire le operazioni che verrebbero effettuate con il comando dscontrol. Ad esempio, per definire un cluster utilizzando la riga comandi, si deve immettere il comando dscontrol cluster add cluster. Per definire un cluster dalla GUI, fare clic con il tasto destro del mouse su Executor, quindi nel menu a comparsa fare clic con il tasto sinistro del mouse su Add Cluster. Immettere l'indirizzo del cluster nella finestra a comparsa, quindi fare clic su OK.
I file di configurazione Dispatcher esistenti possono essere caricati utilizzando l'opzione Load New Configuration (per sostituire completamente la configurazione corrente) e l'opzione Append to Current Configuration (per aggiornare la configurazione corrente), contenute nel menu a comparsa Host. Salvare periodicamente la configurazione Dispatcher su un file utilizzando l'opzione Save Configuration File As contenuta nel menu a comparsa Host. Il menu File situato sulla parte superiore della GUI consente di salvare le connessioni host correnti in un file o di ripristinare le connessioni nei file esistenti per tutti i componenti di Load Balancer.
I comandi di configurazione possono essere eseguiti anche da remoto. Per ulteriori informazioni, vedere RMI (Remote Method Invocation).
Per eseguire un comando dalla GUI: evidenziare il nodo Host dalla struttura ad albero della GUI e selezionare Send command.... dal menu a comparsa. Nel campo di immissione dei comandi, digitare il comando che si desidera eseguire, ad esempio: executor report. I risultati e la cronologia dei comandi in esecuzione nella sessione corrente vengono visualizzati nella finestra fornita.
È possibile accedere alla guida (Help) facendo clic sull'icona punto interrogativo nell'angolo in alto a destra della finestra di Load Balancer.
Per ulteriori informazioni sull'uso della GUI, vedere Appendice A. GUI: istruzioni generali.
Se si utilizza la procedura guidata di configurazione, procedere come segue:
dsserver
La procedura guidata illustra nei dettagli come creare una configurazione di base del componente Dispatcher. L'utente dovrà rispondere ad alcune domande circa la rete e riceverà tutte le informazioni necessarie per impostare un cluster del Dispatcher per bilanciare il traffico tra un gruppo di server.
Per poter configurare la macchina Dispatcher, è necessario disporre dei diritti utente root (per AIX, HP-UX, Linux o Solaris) o amministratore su Windows.
Su tutte le piattaforme supportate, Load Balancer può disporre di un server posizionato . Ciò significa che Load Balancer può fisicamente risiedere su una macchina server su cui sta eseguendo il bilanciamento del carico.
Per la macchina Dispatcher, quando si utilizza il metodo di inoltro mac, saranno necessari almeno due indirizzi IP validi. Per il metodo di inoltro cbr o nat, saranno necessari almeno tre indirizzi IP validi:
Si tratta dell'indirizzo IP principale della macchina Dispatcher, noto come NFA (nonforwarding address, indirizzo non inoltrabile). Per impostazione predefinita, questo indirizzo è identico a quello restituito dal comando hostname. Utilizzare questo indirizzo per collegarsi alla macchina per scopi di gestione, ad esempio, per eseguire una configurazione remota using Telnet o per accedere all'agente secondario SNMP. Se la macchina Dispatcher può già eseguire il ping su altre macchine sulla rete, non sono necessarie ulteriori operazioni per impostare l'indirizzo di non inoltro.
Un indirizzo cluster è un indirizzo associato a un nome host (ad esempio, www.yourcompany.com). Questo indirizzo IP viene utilizzato da un client per collegarsi ai server di un cluster. Si tratta dell'indirizzo sottoposto a bilanciamento del carico dal Dispatcher.
Il Dispatcher utilizza l'indirizzo mittente come indirizzo di origine quando bilancia il carico delle richieste del client al server. In questo modo, il server restituisce il pacchetto alla macchina Dispatcher, anziché inviarlo direttamente al client. (Il Dispatcher inoltra quindi il pacchetto IP al client.) Quando si aggiunge il server, è necessario specificare il valore dell'indirizzo mittente. Non è possibile modificare l'indirizzo mittente, a meno il server non venga prima rimosso quindi riaggiunto.
Il numero di connessioni che Load Balancer può mantenere attive con il server di backend è limitato dal numero di indirizzi di ritorno definiti. Load Balancer utilizza porte che si basano solo sull'indirizzo di ritorno, non sulla combinazione di indirizzo di ritorno e server. Quando tutte le porte disponibili sono in uso, connessioni aggiuntive non riescono. In un ambiente occupato, utilizzare indirizzi di ritorno per evitare una diminuzione di porte disponibili.
Solo su sistemi Solaris:
Ad esempio, per modificare le impostazioni predefinite, modificare il file /opt/ibm/edge/lb/servers/ibmlb.conf come segue:
Ad esempio, se si desidera utilizzare due schede Ethernet da 100Mbps, è necessario inserire un'unica riga nel file ibmlb.conf specificando la scheda eri.
Se invece si intende utilizzare una scheda Ethernet 10Mbps e una scheda Ethernet 100Mbps, il file ibmlb.conf conterrà due righe: una che specifica l'unità le e l'altra che specifica l'unità eri.
ifconfig -aSe viene visualizzato il seguente output:
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000 eri0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 inet 9.42.93.208 netmask fffffc00 broadcast 9.42.95.255 ether 0:3:ba:2d:24:45allora è necessario modificare il file ibmlb.conf come riportato di seguito:
eri -1 0 ibmlb
Ad esempio, se i cluster X e Y sono configurati per essere utilizzati dal componente CBR su una delle schede elencate in ibmlb.conf, i cluster X e Y vengono deconfigurati nel momento in cui vengono emessi i comandi dscontrol executor start o dscontrol executor stop. Questo potrebbe non essere il risultato desiderato. Quando i cluster X e Y vengono configurati nello script goAliases, i cluster vengono automaticamente riconfigurati dopo l'avvio o l'arresto dell'executor Dispatcher.
Verificare che l'inoltro IP non sia abilitato per il protocollo TCP/IP.
La Figura 15 mostra un esempio di Dispatcher impostato con un cluster, due porte e tre server.
Per la guida dei comandi utilizzati in questa procedura, vedere Riferimenti sui comandi per Dispatcher e CBR.
Per un file di configurazione di esempio, vedere File di configurazione di Load Balancer di esempio.
Su sistemi AIX, HP-UX, Linux o Solaris: per avviare la funzione server, immettere dsserver.
Su sistemi Windows: la funzione server viene avviata automaticamente come servizio.
Per avviare la funzione executor, immettere il comando dscontrol executor start. In questa fase sarà inoltre possibile modificare diverse impostazioni dell'executor. Consultare Riferimenti sui comandi per Dispatcher e CBR.
L'indirizzo non inoltrabile viene adoperato per collegarsi alla macchina per scopi di gestione, ad esempio per utilizzare Telnet o SMTP. Per impostazione predefinita, questo indirizzo è il nome host.
Per definire l'indirizzo non inoltrabile, immettere il comando dscontrol executor set nfa IP_address o modificare il file di configurazione di esempio. Per IP_address è possibile specificare il nome simbolico o l'indirizzo IP.
Il Dispatcher esegue il bilanciamento del carico delle richieste inviate all'indirizzo cluster per i server configurati sulle porte del cluster specificato.
Il cluster può essere il nome simbolico, l'indirizzo in formato decimale puntato o l'indirizzo speciale 0.0.0.0, che definisce un cluster jolly. Per definire un cluster, emettere il comando dscontrol cluster add. Per impostare le opzioni del cluster, emettere il comando dscontrol cluster set oppure utilizzare la GUI per emettere i comandi. I cluster jolly possono essere utilizzati per individuare più indirizzi IP per i pacchetti in entrata su cui eseguire il bilanciamento del carico. Consultare Utilizzo del cluster jolly per combinare le configurazioni di server, Utilizzo di cluster jolly per bilanciare il carico dei firewall e Utilizzo del cluster jolly con Caching Proxy per proxy trasparente, per ulteriori informazioni.
Normalmente, dopo aver definito il cluster, è necessario configurare l'indirizzo cluster su una delle schede di interfaccia di rete della macchina Dispatcher. A tale scopo, emettere il comando dscontrol executor configure cluster_address. In questo modo, verrà ricercata una scheda con un indirizzo esistente che appartiene alla stessa sottorete dell'indirizzo cluster. Verrà quindi emesso il comando di configurazione della scheda del sistema operativo per l'indirizzo cluster, utilizzando la scheda individuata e la maschera di rete dell'indirizzo esistente di quella scheda. Ad esempio:
dscontrol executor configure 204.67.172.72
In alcuni casi, che prevedono cluster aggiunti a un server in standby in modalità a disponibilità elevata o cluster aggiunti a un dispatcher all'interno di una rete geografica che funge da server remoto, è preferibile non configurare l'indirizzo cluster. Inoltre, non è necessario eseguire il comando executor configure se, in modalità autonoma, si utilizza lo script di esempio goIdle. Per informazioni sullo script goIdle, vedere Utilizzo di script.
In rari casi, l'indirizzo cluster a disposizione potrebbe non coincidere con nessuna delle sottoreti degli indirizzi esistenti. In questo caso, utilizzare il secondo formato del comando executor configure e specificare in modo esplicito il nome dell'interfaccia e la maschera di rete. Utilizzare dscontrol executor configure cluster_address interface_name netmask.
Di seguito sono riportati alcuni esempi:
dscontrol executor configure 204.67.172.72 en0 255.255.0.0 (sistemi AIX) dscontrol executor configure 204.67.172.72 eth0:1 255.255.0.0 (sistemi Linux) dscontrol executor configure 204.67.172.72 eri0 255.255.0.0 (sistemi Solaris) dscontrol executor configure 204.67.172.72 en1 255.255.0.0 (sistemi Windows)
Per utilizzare il secondo formato del comando executor configure su Windows, è necessario determinare il nome dell'interfaccia da utilizzare. Se si dispone solo di una scheda Ethernet nella macchina, il nome dell'interfaccia sarà en0. Se si dispone solo di una scheda Token Ring nella macchina, il nome dell'interfaccia sarà tr0. In presenza di più schede di entrambi i tipi, sarà necessario determinare la mappatura delle schede. Effettuare quanto segue:
L'output verrà visualizzato sullo schermo. Per determinare l'interfaccia da utilizzare per la configurazione di Load Balancer, ricercare l'indirizzo IP della macchina Load Balancer nelle righe che seguono Number of NIC records.
L'indirizzo IP della macchina Load Balancer verrà riportato come: ia->ia_addr. Il nome dell'interfaccia associata sarà riportato come ifp->if_name.
I nomi delle interfacce assegnate dal comando executor configure vengono associati ai nomi delle interfacce riportati in questo comando.
Dopo aver ottenuto le informazioni sulla mappatura, è possibile creare un alias sull'interfaccia di rete all'indirizzo cluster.
Su sistemi Linux o UNIX, il comando executor configure esegue i comandi ifconfig.
Quando si utilizzano applicazioni dei server specifici del collegamento che si collegano a un elenco di indirizzi IP che non contengono l'IP del server, utilizzare il comando arp publish al posto di ifconfig per impostare dinamicamente un indirizzo IP sulla macchina Load Balancer. Ad esempio:
arp -s <cluster> <Load Balancer MAC address> pub
Per definire una porta, immettere il comando dscontrol port add cluster:port, modificare il file di configurazione di esempio o utilizzare la GUI. Per cluster è possibile specificare il nome simbolico o l'indirizzo IP. Per port specificare il numero della porta che si sta utilizzando per il protocollo. In questa fase, è possibile anche modificare varie impostazioni di porta. È necessario definire e configurare tutti i server di una porta. Consultare Riferimenti sui comandi per Dispatcher e CBR.
Il numero di porta 0 (zero) viene utilizzato per specificare una porta jolly. Questa porta accetta il traffico di una porta non destinato ad alcuna porta definita sul cluster. La porta jolly verrà utilizzata per configurare regole e server per qualsiasi porta. Questa funzione può essere utilizzata anche in caso di una configurazione server/regola identica per più porte. Il traffico su una porta può quindi influire sulle decisioni inerenti il bilanciamento del carico del traffico su altre porte. Vedere Utilizzo della porta jolly per indirizzare il traffico per una porta non configurata, per ulteriori informazioni sui casi in cui è opportuno utilizzare una porta jolly.
Per definire una macchina server con bilanciamento del carico, immettere il comando dscontrol server add cluster:port:server, modificare il file di configurazione di esempio o utilizzare la GUI. Per cluster e server, è possibile specificare il nome simbolico o l'indirizzo IP. Per port specificare il numero della porta che si sta utilizzando per il protocollo. Per poter effettuare un bilanciamento del carico, è necessario definire più di un server per una porta su un cluster.
Server specifici del collegamento: Se il componente Dispatcher sta eseguendo il bilanciamento del carico su server specifici del collegamento, i server devono essere configurati per collegarsi all'indirizzo cluster. Poiché il Dispatcher inoltra i pacchetti senza modificare l'indirizzo IP di destinazione, quando i pacchetti raggiungono il server, conterranno ancora l'indirizzo cluster come destinazione. Se un server è stato configurato per collegarsi a un indirizzo IP diverso dall'indirizzo cluster, il server non sarà in grado di accettare pacchetti/richieste destinati al cluster.
Per determinare se il server è bind specifico, emettere il comando netstat -an e ricercare server:porta. Se il server non è specifico del collegamento, il risultato di questo comando sarà 0.0.0.0:80. Se invece il server è specifico del collegamento, verrà visualizzato un indirizzo del tipo 192.168.15.103:80.
Posizionamento con più indirizzi: In una configurazione posizionata, l'indirizzo della macchina server posizionata non deve essere identico all'indirizzo di non inoltro (NFA). Se la macchina è stata definita con più indirizzi IP, è possibile utilizzare un altro indirizzo. Per il componente Dispatcher, la macchina server posizionata deve essere definita come posizionata tramite il comando dscontrol server. Per ulteriori informazioni sui server posizionati, vedere Utilizzo dei server posizionati.
Per ulteriori informazioni sulla sintassi del comando dscontrol server, vedere dscontrol server — configura i server.
La funzione gestore migliora il bilanciamento del carico. Per avviare il gestore, immettere il comando dscontrol manager start, modificare il file di configurazione di esempio o utilizzare la GUI.
Gli advisor forniscono al gestore ulteriori informazioni sulla capacità delle macchine server con bilanciamento del carico di rispondere alle richieste. Un advisor è specifico di un protocollo. Ad esempio, per avviare l'advisor HTTP, immettere il seguente comando:
dscontrol advisor start http portPer un elenco degli advisor e delle relative porte predefinite, vedere Riferimenti sui comandi per Dispatcher e CBR. Per una descrizione di ciascun advisor, vedere Elenco di advisor.
Se si avviano gli advisor, è possibile modificare le proporzioni di importanza attribuite alle informazioni raccolte dall'advisor che devono essere incluse nelle decisioni relative al bilanciamento del carico. Per impostare le proporzioni del cluster, immettere il comando dscontrol cluster set cluster proportions. Per ulteriori informazioni, consultare Proporzione di importanza attribuita alle informazioni sullo stato.
Effettuare le operazioni riportate di seguito in presenza di una delle seguenti condizioni:
Quando si utilizza il metodo di inoltro mac, il Dispatcher bilancerà il carico solo tra i server che consentono di configurare la scheda loopback con un indirizzo IP supplementare, per cui il server backend non risponderà mai alle richieste ARP (address resolution protocol). Attenersi alle operazioni descritte in questa sezione per configurare le macchine server sottoposte a bilanciamento del carico.
Per far funzionare macchine server sottoposte a bilanciamento del carico, è necessario impostare l'unità loopback (spesso denominata lo0) (o, preferibilmente, crearne l'alias) per l'indirizzo cluster. Quando si utilizza il metodo di inoltro mac, il componente Dispatcher non modifica l'indirizzo IP di destinazione nel pacchetto TCP/IP prima di inoltrare il pacchetto a una macchina server TCP. Configurando l'unità loopback sull'indirizzo cluster, o aggiungendovi l'alias, le macchine server sottoposte a bilanciamento del carico accettano un pacchetto destinato all'indirizzo cluster.
Con un sistema operativo che supporta l'aggiunta dell'alias delle interfacce di rete (come AIX, HP-UX, Linux, Solaris o Windows), si dovrebbe creare l'alias dell'unità loopback per l'indirizzo cluster. Il vantaggio derivante dall'uso di un sistema operativo che supporta gli alias è la possibilità di configurare macchine server sottoposte a bilanciamento del carico destinate a servire più indirizzi cluster.
IMPORTANTE: per i sistemi Linux, consultare Alternative per l'aggiunta dell'alias loopback Linux quando si utilizza il metodo di inoltro mac di Load Balancer.
Se si dispone di un server con un sistema operativo che non supporta gli alias, è necessario impostare l'unità loopback per l'indirizzo cluster.
Utilizzare il comando del sistema operativo a disposizione, come illustrato nella Tabella 2, per impostare o creare l'alias dell'unità loopback.
AIX | |
HP-UX |
ifconfig lo0:1 cluster_address up Nota:
Se si utilizzano applicazioni server specifiche del bind che eseguono il bind a un elenco di indirizzi
IP che non contengono l'IP del server, utilizzare il comando
arp publish al posto di ifconfig per impostare dinamicamente un indirizzo IP sulla
macchina Load Balancer.
Ad esempio: arp -s indirizzo_cluster indirizzo_MAC_Load Balancer pub |
Linux | Selezionare uno dei seguenti comandi:
|
OS/2 | ifconfig lo cluster_address |
OS/390 | Configurazione di un alias loopback sul sistema OS/390
|
Solaris |
|
Windows |
|
Su alcuni sistemi operativi, potrebbe essere stato creato un instradamento predefinito che deve essere rimosso.
route print
IMPORTANTE: qualsiasi instradamento aggiuntivo deve essere ignorato su Windows 2003. Se si verificano dei problemi con l'instradamento in seguito alla creazione dell'alias, rimuovere l'alias e aggiungerlo di nuovo utilizzando una netmask differente.
netstat -nr
Esempio Windows:
Instradamenti attivi: Network Address Netmask Gateway Address Interface Metric 0.0.0.0 0.0.0.0 9.67.128.1 9.67.133.67 1 9.0.0.0 255.0.0.0 9.67.133.158 9.67.133.158 1 9.67.128.0 255.255.248.0 9.67.133.67 9.67.133.67 1 9.67.133.67 255.255.255.255 127.0.0.1 127.0.0.1 1 9.67.133.158 255.255.255.255 127.0.0.1 127.0.0.1 1 9.255.255.255 255.255.255.255 9.67.133.67 9.67.133.67 1 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 224.0.0.0 224.0.0.0 9.67.133.158 9.67.133.158 1 224.0.0.0 224.0.0.0 9.67.133.67 9.67.133.67 1 255.255.255.255 255.255.255.255 9.67.133.67 9.67.133.67 1
9.0.0.0 255.0.0.0 9.67.133.158 9.67.133.158 1
È necessario rimuovere l'instradamento supplementare. Utilizzare il comando del sistema operativo illustrato nella Tabella 3 per rimuovere l'instradamento supplementare.
Esempio: per eliminare un instradamento supplementare come illustrato nella tabella di esempio "Active Routes" della fase 2, immettere:
route delete 9.0.0.0 9.67.133.158
HP-UX | route delete cluster_address cluster_address |
Windows | route delete network_address
cluster_address (a un prompt MS-DOS)
Nota:
è necessario eliminare
l'instradamento supplementare ad ogni riavvio del server.
Su Windows 2003, non è possibile eliminare gli instradamenti. Qualsiasi instradamento aggiuntivo deve essere ignorato su Windows 2003. Se si verificano dei problemi con l'instradamento in seguito alla creazione dell'alias, rimuovere l'alias e aggiungerlo di nuovo utilizzando una netmask differente. |
Se si utilizza l'esempio illustrato nella Figura 15 e si configura una macchina server su cui è in esecuzione AIX, il comando sarà:
route delete -net 204.0.0.0 204.67.172.72
Per verificare che un server backend sia correttamente configurato, effettuare le seguenti operazioni da una macchina differente sulla stessa sottorete, quando Load Balancer non è in esecuzione e il cluster non è configurato:
arp -d cluster
ping clusterNon dovrebbe esserci risposta. Nel caso di risposta al ping, verificare di non aver eseguito il comando ifconfig per l'indirizzo cluster all'interfaccia. Accertarsi che non vi siano macchine che presentino una voce con arp publish nell'indirizzo cluster.
arp -aNell'output del comando, dovrebbe essere visualizzato l'indirizzo MAC del server. Emettere il comando:
arp -s cluster indirizzo_mac_server
arp -d cluster
Alcune versioni di Linux emettono delle risposte ARP per qualsiasi indirizzo IP configurato sulla macchina su ogni interfaccia presente sulla macchina stessa. Inoltre, è possibile selezionare un indirizzo IP di origine ARP per query ARP who-has basate su tutti gli indirizzi IP presenti sulla macchina, indipendentemente dalle interfacce su cui sono configurati quegli indirizzi. In questo modo, tutto il traffico cluster viene indirizzato a un unico server in maniera indeterminata.
Quando si utilizza il metodo di inoltro mac del Dispatcher, è necessario adoperare un meccanismo che assicuri che il traffico indirizzato al cluster venga accettato dagli stack dei server backend, compresa la macchina in standby con alta disponibilità, se si utilizza sia la disponibilità elevata che il posizionamento.
Nella maggior parte dei casi, è necessario creare l'alias dell'indirizzo cluster sul loopback; perciò, per i server backend è obbligatorio creare l'alias del cluster sul loopback; inoltre, se si utilizza l'alta disponibilità e il posizionamento, per i server con bilanciamento del carico in standby, occorre creare l'alias del cluster sul loopback.
Per verificare che Linux non renda noti gli indirizzi sul loopback, è possibile utilizzare una delle seguenti soluzioni, per garantire la compatibilità tra Linux e il metodo di inoltro mac del Dispatcher.
# sysctl -w net.ipv4.conf.all.hidden=1 net.ipv4.conf.lo.hidden=1Quindi, è possibile creare normalmente l'alias dei cluster, ad esempio:
# ifconfig lo:1 $CLUSTER_ADDRESS netmask 255.255.255.255 up
# sysctl -w net.ipv4.conf.all.arp_ignore=3 net.ipv4.conf.all.arp_announce=2Quindi, è necessario creare l'alias dei cluster con il seguente comando:
# ip addr add $CLUSTER_ADDRESS/32 scope host dev loUn comando simile deve trovarsi negli script go* nelle configurazioni a disponibilità elevata.
# iptables -t nat -A PREROUTING -d $CLUSTER_ADDRESS -j REDIRECTIn questo modo, Linux esegue la conversione degli indirizzi di rete (NAT, Network Address Translation) su ciascun pacchetto, sostituendo l'indirizzo del cluster con l'indirizzo dell'interfaccia di rete. Questo metodo penalizza la velocità delle connessioni al secondo del 6,4%. Il metodo funziona su qualsiasi distribuzione comune supportata; non sono necessari moduli kernel o patch+build+install del kernel.
# modprobe noarp # noarpctl add $CLUSTER_ADDRESS nic-primary-addrdove per nic-primary-addr si intende un indirizzo nella stessa sottorete dell'indirizzo cluster. Quindi, è possibile creare normalmente l'alias dei cluster, ad esempio:
# ifconfig lo:1 cluster address netmask 255.255.255.255 up