Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
Amministrazione di Load Balancer
Load Balancer Add-on per Red Hat Enterprise Linux
Edizione 6
Sommario
Introduzione
- Red Hat Enterprise Linux Installation Guide — Fornisce le informazioni relative all'installazione di Red Hat Enterprise Linux 6.
- Red Hat Enterprise Linux Deployment Guide — Fornisce le informazioni relative all'impiego, configurazione ed amministrazione di Red Hat Enterprise Linux 6.
- Panoramica su Red Hat Cluster Suite — Fornisce una panoramica più dettagliata su High Availability Add-On, Resilient Storage Add-On, e Load Balancer Add-On.
- Configurazione e gestione di High Availability Add-On Questa guida descrive la configurazione e la gestione di High Availability Add-On (conosciuto anche come Red Hat Cluster) per Red Hat Enterprise Linux 6.
- Amministrazione del Logical Volume Manager — Fornisce una descrizione del Logical Volume Manager (LVM), ed include le informazioni su come eseguire LVM in un ambiente clusterizzato.
- Global File System 2: Configurazione e amministrazione — Fornisce le informazioni sull'installazione, configurazione ed amministrazione di Red Hat Resilient Storage Add-On (conosciuto anche come Red Hat Global File System 2).
- DM Multipath — Fornisce le informazioni relative all'utilizzo del Device-Mapper Multipath di Red Hat Enterprise Linux 6.
- Note di rilascio — Fornisce le informazioni sulla release corrente dei prodotti di Red Hat.
1. Commenti
Capitolo 1. Panoramica Load Balancer Add-On
Nota
- Bilanciare il carico attraverso i real server.
- Controllare l'integrità dei servizi su ogni real server.
1.1. Una configurazione di base di Load Balancer Add-On
Figura 1.1. Una configurazione di base di Load Balancer Add-On
eth0:1
. Alternativamente ogni server virtuale può essere associato con un dispositivo separato per servizio. Per esempio, il traffico HTTP può essere gestito su eth0:1
, ed il traffico FTP gestito su eth0:2
.
1.1.1. Condivisione e replica dei dati tra real server
- Sincronizzare i dati nel pool di real server.
- Aggiungere un terzo livello alla tipologia per l'accesso dei dati condivisi.
1.1.1.1. Configurazione dei Real server per la sincronizzazione dei dati
rsync
per replicare i dati modificati su tutti i nodi, ad un intervallo specifico.
1.2. Configurazione Load Balancer Add-On a tre livelli
Figura 1.2. Configurazione Load Balancer Add-On a tre livelli
1.3. Panoramica programmazione di Load Balancer Add-On
1.3.1. Algoritmi di programmazione
- Programmazione Round-Robin
- Distribuisce ogni richiesta in modo sequenziale a tutti i real server presenti nel pool. Usando questo algoritmo tutti i real server verranno considerati allo stesso livello senza considerare la capacità o il carico. Questo modello di programmazione somiglia molto al round-robin DNS, ma differisce da quest'ultimo perchè risulta essere più granulare in quanto si basa sul collegamento di rete e non sull'host. Questo tipo di programmazione round-robin non soffre di eventuali squilibri causati da richieste DNS in cache.
- Programmazione Weighted Round-Robin
- Distribuisce ogni richiesta in successione all'interno di un gruppo di real server, dando un carico di lavoro maggiore ai server con maggiore capacità. La capacità viene indicata da un fattore di peso assegnato dall'utente, e viene modificata in base alle informazioni sul carico dinamico. A tal proposito consultare Sezione 1.3.2, «Peso del server e programmazione (scheduling)» per maggiori informazioni.La programmazione Weighted round-robin rappresenta la scelta preferita se sono presenti differenze sostanziali di capacità dei real server all'interno di un gruppo. Tuttavia se la richiesta di carico varia sensibilmente, un server con un carico di lavoro molto elevato potrebbe operare oltre ai propri limiti.
- Least-Connection
- Distribuisce un numero maggiore di richieste ai real server con un numero minore di collegamenti attivi. Poichè questo tipo di algoritmo controlla i collegamenti per i real server attraverso la tabella IPVS, esso è un tipo di algoritmo dinamico e rappresenta la scelta migliore se siete in presenza di una elevata variazione nelle richieste di carico. Offre il meglio di se per un gruppo di real server dove ogni nodo presenta una capacità simile. Se in presenza di un gruppo di server con diverse capacità, allora la programmazione di tipo weighted least-connection rappresenta la scelta migliore.
- Weighted Least-Connections (default)
- Distribuisce un numero maggiore di richieste ai server con un numero minore di collegamenti attivi in base alle rispettive capacità. La capacità viene indicata da un peso assegnato dall'utente, e può essere modificata in base alle informazioni relative al carico dinamico. L'aggiunta di peso rende questo algoritmo ideale quando il gruppo di real server contiene un hardware di varia capacità. Per maggiori informazioni consultare Sezione 1.3.2, «Peso del server e programmazione (scheduling)».
- Programmazione Locality-Based Least-Connection
- Distribuisce un numero maggiore di richieste ai server con un numero minore di collegamenti attivi, in base ai rispettivi IP di destinazione. Questo algoritmo può essere utilizzato in un cluster di server proxy-cache. Usato per indirizzare i pacchetti di un indirizzo IP al server per l'indirizzo stesso, a meno che il server non abbia superato la sua capacità e non sia presente un server che utilizzi metà della propria capacità. In tal caso l'indirizzo IP verrà assegnato al real server con un carico minore.
- Programmazione Locality-Based Least-Connection con Programmazione della replica
- Distribuisce un numero maggiore di richieste ai server con un numero minore di collegamenti attivi in base ai propri IP di destinazione. Questo algoritmo viene usato anche in un cluster di server proxy-cache. Esso differisce dalla Programmazione di tipo Locality-Based Least-Connection a causa della mappatura dell'indirizzo IP di destinazione su di un sottoinsieme di nodi del real server. Le richieste vengono indirizzate ad un server presente in questo sottoinsieme con il numero più basso di collegamenti. Se tutti i nodi per l'IP di destinazione hanno superato la propria capacità, esso sarà in grado di replicare un nuovo server per l'indirizzo IP in questione, aggiungendo il real server con un numero minore di collegamenti al sottoinsieme di real server dell'IP interessato. Il nodo con più carico carico verrà rilasciato dal sottoinsieme di real server in modo da evitare un processo di riproduzione non corretto.
- Programmazione Destination Hash
- Distribuisce le richieste al gruppo di real server cercando l'IP sorgente in una tabella hash statica. È possibile usare questo algoritmo in un cluster di server proxy-cache.
- Programmazione Source Hash
- Distribuisce le richieste al gruppo di real server, cercando l'IP sorgente in una tabella hash statica. È possibile utilizzare questo algoritmo con i router LVS con firewall multipli.
1.3.2. Peso del server e programmazione (scheduling)
1.4. Metodi di instradamento
1.4.1. Instradamento NAT
Figura 1.3. Load Balancer Add-On implementato con l'instradamento NAT
1.4.2. Instradamento diretto
Figura 1.4. Load Balancer Add-On implementato con instradamento diretto
1.4.2.1. Instradamento diretto e restrizioni ARP
arptables_jf
o iptables
per il filtro dei pacchetti quando:
arptables_jf
impedisce a ARP di associare i VIP con i real server.- Utilizzando
iptables
si eviterà completamente il problema dell'ARP poichè i VIP non verranno configurati sui real server.
arptables
o iptables
in un ambiente Balancer Add-On con instradamento diretto consultare Sezione 3.2.1, «Instradamento diretto e arptables_jf
» o Sezione 3.2.2, «Instradamento diretto e iptables
».
1.5. Persistenza e Firewall Mark
1.5.1. Persistenza
1.5.2. Firewall Mark
1.6. Load Balancer Add-On — Diagramma a blocchi
Figura 1.5. Componenti di Load Balancer Add-On
pulse
viene eseguito sia sul router LVS attivo che su quello passivo. Sul router LVS di backup, pulse
invia un heartbeat all'interfaccia pubblica del router attivo, in modo da assicurarsi che il router attivo funzioni correttamente. Sul router attivo, pulse
avvia il demone lvs
e risponde alle interrogazioni heartbeat provenienti dal router LVS di backup.
lvs
invoca l'utilità ipvsadm
per configurare e gestire la tabella d'instradamento IPVS nel kernel, e successivamente avvia un processo nanny
per ogni server virtuale configurato su ogni real server. Ogni processo nanny
controlla lo stato di un servizio configurato su un real server, e indica al demone lvs
se è presente un malfunzionamento del servizio su quel real server. Se tale malfunzionamento viene rilevato, il demone lvs
indica a ipvsadm
di rimuovere il real server in questione dalla tabella d'instradamento IPVS.
send_arp
, riassegnando tutti gli indirizzi IP virtuali agli indirizzi hardware NIC (indirizzo MAC) del nodo di backup, e inviando un comando al router attivo tramite l'interfaccia di rete privata e quella pubblica in modo da interrompere il demone lvs
sul router attivo. A questo punto verrà avviato il demone lvs
sul nodo di backup ed accettate tutte le richieste per i server virtuali configurati.
1.6.1. Componenti di Load Balancer Add-On
pulse
» mostra un elenco dettagliato di ogni componente software in un router LVS.
1.6.1.1. pulse
/etc/rc.d/init.d/pulse
. Successivamente, viene letto il file di configurazione /etc/sysconfig/ha/lvs.cf
. Sul router attivo, pulse
avvia il demone LVS. Sul router di backup pulse
determina lo stato del router attivo eseguendo un heartbeat semplice ad un intervallo configurato dall'utente. Se il router attivo non risponde dopo il suddetto intervallo, verrà inizato un processo di failover. Durante questo processo pulse
presente sul router di backup, indica al demone pulse
sul router attivo di interrompere tutti i servizi LVS, avviando successivamente il programma send_arp
per riassegnare gli indirizzi IP floating all'indirizzo MAC del router di backup, avviando anche il demone lvs
.
1.6.1.2. lvs
lvs
viene eseguito sul router LVS attivo una volta invocato da pulse
. Esso legge il file di configurazione /etc/sysconfig/ha/lvs.cf
, chiama l'utilità ipvsadm
per compilare e gestire la tabella di instradamento IPVS, e assegna un processo nanny
per ogni servizio Load Balancer Add-On configurato. Se nanny
riporta la presenza di un real server inattivo, lvs
indica alla utilità ipvsadm
di rimuovere il real server in questione dalla tabella di routing IPVS.
1.6.1.3. ipvsadm
lvs
imposta e gestisce Load Balancer Add-On, invocando ipvsadm
in modo da aggiungere, modificare o cancellare le voci presenti nella tabella d'instradamento IPVS.
1.6.1.4. nanny
nanny
viene eseguito sul router LVS attivo. Attraverso questo demone, il router attivo determina lo stato di ogni real server, e facoltativamente, controlla il carico di lavoro relativo. Viene eseguito un processo separato per ogni servizio definito su ogni real server.
1.6.1.5. /etc/sysconfig/ha/lvs.cf
1.6.1.6. Piranha Configuration Tool
/etc/sysconfig/ha/lvs.cf
.
1.6.1.7. send_arp
Capitolo 2. Configurazione iniziale di Load Balancer Add-On
Nota
2.1. Configurazione dei servizi sul router LVS
chkconfig
, ntsysv
un programma basato su ncurses e Services Configuration Tool. Per utilizzare i suddetti strumenti è necessario essere un utente root.
Nota
su -
seguito dalla password root. Per esempio:
$ su - root password
- Il servizio
piranha-gui
(solo nodo primario) - Il servizio
pulse
- Il servizio
sshd
iptables
.
chkconfig
, digitare il seguente comando per ogni servizio:
/sbin/chkconfig --level 35 daemon on
/sbin/chkconfig --list
Avvertimento
chkconfig
, non risulterà in un avvio del demone. Per fare questo usare /sbin/service
. Consultare Sezione 2.3, «Avvio servizio Piranha Configuration Tool» per un esempio su come usare /sbin/service
.
ntsysv
e Services Configuration Tool, consultare il capitolo "Controllo accesso ai servizi" nella Red Hat Enterprise Linux System Administration Guide.
2.2. Impostazione di una password per Piranha Configuration Tool
/usr/sbin/piranha-passwd
Avvertimento
2.3. Avvio servizio Piranha Configuration Tool
piranha-gui
in /etc/rc.d/init.d/piranha-gui
. Per fare questo eseguire come utente root il seguente comando:
/sbin/service piranha-gui start
/sbin/service piranha-gui restart
/usr/sbin/piranha_gui -> /usr/sbin/httpd
. Per ragioni di sicurezza la versione del piranha-gui
di httpd
viene eseguita come utente piranha in un processo separato. Il modo di utilizzo da parte del piranha-gui
del servizio httpd
implica:
- Apache HTTP Server deve essere installato sul sistema.
- L'arresto o il riavvio di Apache HTTP Server tramite
service
arresterà il serviziopiranha-gui
.
Avvertimento
/sbin/service httpd stop
o /sbin/service httpd restart
su un router LVS, sarà necessario avviare il servizio piranha-gui
con il seguente comando:
/sbin/service piranha-gui start
piranha-gui
è necessario per poter iniziare la configurazione del Load Balancer Add-On. Tuttavia se state configurando Load Balancer Add-On in modo remoto allora sarà necessario anche il servizio sshd
. Così facendo non sarà necessario avviare il servizio pulse
fino a quando non completerete la configurazione tramite il Piranha Configuration Tool. Consultate la Sezione 4.8, «Avvio di Load Balancer Add-On» per maggiori informazioni sul servizio pulse
.
2.3.1. Configurazione porta del web server Piranha Configuration Tool
Listen 3636
nella Sezione 2 del file di configurazione del piranha-gui
web server, /etc/sysconfig/ha/conf/httpd.conf
.
http://localhost:3636
. È possibile raggiungere il Piranha Configuration Tool da qualsiasi posizione tramite il web browser, semplicemente sostituendo localhost con l'hostname o l'indirizzo IP del router LVS primario.
piranha
nel campo Nome utente insieme alla password, usando piranha-passwd
, nel campo Password.
2.4. Limitare l'accesso a Piranha Configuration Tool
/etc/sysconfig/ha/web/secure/.htaccess
. Dopo aver alterato il file non sarà necessario riavviare il servizio piranha-gui
, poichè il server controlla il file .htaccess
ogni qualvolta accede alla directory.
Order deny,allow Allow from all
.htaccess
in modo da permettere l'accesso solo dal dispositivo loopback (127.0.0.1). Per maggiori informazioni sul dispositivo loopback consultate il capitolo Script di rete nella Red Hat Enterprise Linux Reference Guide.
Order deny,allow Deny from all Allow from 127.0.0.1
Order deny,allow Deny from all Allow from 192.168.1.100 Allow from 172.16.57
Avvertimento
.htaccess
, limiterà l'accesso alle pagine di configurazione nella directory /etc/sysconfig/ha/web/secure/
, ma non alle pagine di login e d'aiuto in /etc/sysconfig/ha/web/
. Per limitare l'accesso alla suddetta directory, create un file .htaccess
nella directory /etc/sysconfig/ha/web/
con le righe order
, allow
, e deny
in modo identico a /etc/sysconfig/ha/web/secure/.htaccess
.
2.5. Abilitare l'inoltro dei pacchetti
net.ipv4.ip_forward = 0
in /etc/sysctl.conf
nel modo seguente:
net.ipv4.ip_forward = 1
/sbin/sysctl net.ipv4.ip_forward
1
, l'IP forwarding è stato abilitato. Se invece il valore è 0
, allora sarà possibile abilitarlo usando il seguente comando:
/sbin/sysctl -w net.ipv4.ip_forward=1
2.6. Configurazione dei servizi sui Real Server
httpd
per servizi web o xinetd
per servizi Telnet o FTP.
sshd
.
Capitolo 3. Impostazione Load Balancer Add-On
3.1. Il NAT Load Balancer Add-On Network
- Disposizione di rete
- Da una prospettiva della struttura di rete, la tipologia per il Load Balancer Add-On che utilizza un instradamento NAT risulta essere quella più semplice da configurare, poichè è necessario solo un punto d'accesso alla rete pubblica. I real server ritornano tutte le richieste attraverso il router LVS in modo che le stesse risultano essere nella propria rete privata.
- Hardware
- La tipologia NAT è la più flessibile in relazione all'hardware, poichè i real server non devono essere macchine Linux per poter funzionare correttamente. In una tipologia NAT ogni real server avrà bisogno di un solo NIC poichè esso risponderà solo al router LVS. I router LVS invece, avranno bisogno ciascuno di due NIC per instradare il traffico tra le due reti. Poichè questa tipologia crea una limitazione nei confronti del router LVS, è possibile impiegare i NIC gigabit Ethernet su ogni router LVS per migliorare la larghezza di banda che un router LVS è in grado di gestire. Se il gigabit Ethernet viene implementato sui router LVS, qualsiasi interruttore che collega i real server ai router LVS deve avere un minimo di due porte gigabit Ethernet per gestire in modo efficiente il carico.
- Software
- Poichè la tipologia NAT richiede l'utilizzo di
iptables
per alcune configurazioni, potrebbe esser necessario eseguire una ulteriore configurazione esterna al Piranha Configuration Tool. In particolare, i servizi FTP e l'utilizzo dei firewall mark richiedono una configurazione manuale supplementare dei router LVS, per instradare in modo correto tutte le richieste.
3.1.1. Configurazione delle interfacce di rete per il Load Balancer Add-On con NAT
eth0
) saranno sulla rete 192.168.26/24 (questo non è un IP instradabile, ma pretendiamo che ci sia un firewall di fronte al router LVS), e le interfacce private che collegano ai real server (eth1
) saranno sulla rete 10.11.12/24.
Importante
network
ed il Load Balancer Add-on, non è compatibile con il servizio NetworkManager
.
/etc/sysconfig/network-scripts/ifcfg-eth0
, potrebbe somigliare al seguente:
DEVICE=eth0 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.26.9 NETMASK=255.255.255.0 GATEWAY=192.168.26.254
/etc/sysconfig/network-scripts/ifcfg-eth1
per l'interfaccia NAT privata sul router LVS potrebbe somigliare al seguente:
DEVICE=eth1 BOOTPROTO=static ONBOOT=yes IPADDR=10.11.12.9 NETMASK=255.255.255.0
Importante
Importante
3.1.2. Instradamento sui real server
Nota
/etc/sysconfig/network-scripts/ifcfg-eth0
del real server somiglierà al seguente:
DEVICE=eth0 ONBOOT=yes BOOTPROTO=static IPADDR=10.11.12.1 NETMASK=255.255.255.0 GATEWAY=10.11.12.10
Avvertimento
GATEWAY=
, la prima interfaccia usata otterrà il gateway. Per questo motivo se eth0
e eth1
sono configurate, e eth1
viene utilizzata per il Load Balancer Add-On, i real server potrebbero non indirizzare le richieste in modo corretto.
ONBOOT=no
, negli script di rete interessati all'interno della directory /etc/sysconfig/network-scripts/
, oppure assicuratevi che il gateway sia stato impostato correttamente nella prima interfaccia usata.
3.1.3. Come abilitare l'instradamento NAT sui router LVS
Avvertimento
eth0:1
o eth1:1
modificando manualmente gli script di rete, o utilizzando un tool di configurazione di rete. Al contrario utilizzate Piranha Configuration Tool come mostrato in Sezione 4.4, «IMPOSTAZIONI GLOBALI» e Sezione 4.6.1, «Sottosezione SERVER VIRTUALE».
pulse
come riportato in Sezione 4.8, «Avvio di Load Balancer Add-On». Quando pulse
è in esecuzione il router LVS attivo inizierà ad instradare le richieste al gruppo di real server.
3.2. Load Balancer Add-On tramite instradamento diretto
- Disposizione di rete
- In una impostazione Load Balancer Add-On dell'instradamento diretto, il router LVS avrà bisogno di ricevere le richieste in entrata e direzionarle al real server corretto per una loro processazione. I real server a loro volta dovranno instradare direttamente le risposte al client. Ciò significa che se il client è su internet ed invia il pacchetto ad un real server attraverso il router LVS, il real server dovrà essere in grado di contattare direttamente il client attraverso internet. È possibile eseguire tale processo attraverso la configurazione del gateway per il real server, in modo da passare i pacchetti ad internet. Ogni real server nel pool dei server, può avere un proprio gateway separato (e ogni gateway può avere un proprio collegamento ad internet), permettendo di avere una portata e scalabilità massima. Tuttavia per impostazioni Load Balancer Add-On tipiche i real server possono comunicare attraverso un gateway (e quindi un collegamento di rete).
Importante
Non è consigliato utilizzare il router LVS come gateway per i real server, poichè sarà possibile creare una impostazione più complessa e non necessaria insieme ad un carico di rete sul router LVS, questa impostazione causerà alcune limitazioni nell'instradamento NAT. - Hardware
- I requisiti hardware di un sistema Load Balancer Add-On che utilizza un instradamento diretto sono simili ad altre tipologie Load Balancer Add-On. Mentre il router LVS ha bisogno di eseguire Red Hat Enterprise Linux per processare le richieste in entrata ed eseguire il bilanciamento del carico per i real server, i real server non hanno bisogno di essere machine Linux per funzionare correttamente. I router LVS necessitano ciascuno di uno o due NIC (se è presente un router di backup). Potrete utilizzare due NIC per facilitare la configurazione e per separare in modo netto il traffico — le richieste in ingresso vengono gestite da un solo NIC, ed i pacchetti indirizzati ai real server gestiti dal secondo.Poichè i real server bypassano il router LVS ed inviano i pacchetti in uscita direttamente ad un client, sarà necessario implementare un gateway per Internet. Per una disponibilità e prestazione massima, ogni real server può essere collegato alla rete portante alla quale il client è collegato (come ad esempio Internet o intranet).
- Software
- Da eseguire una ulteriore configurazione esterna al Piranha Configuration Tool in modo paricolare per amministratori che affrontano problematiche ARP durante l'utilizzo del Load Balancer Add-On tramite un instradamento diretto. Consultate la Sezione 3.2.1, «Instradamento diretto e
arptables_jf
» o Sezione 3.2.2, «Instradamento diretto eiptables
» per maggiori informazioni.
3.2.1. Instradamento diretto e arptables_jf
arptables_jf
è necessario aver configurato su ogni real server un indirizzo IP virtuale in modo da instradare direttamete i pacchetti. Le richieste ARP per il VIP vengono ignorate dai real server, e qualsiasi pacchetto ARP che potrebbe essere inviato con al suo interno un VIP, viene modificato in modo da contenere l'IP del real server.
arptables_jf
le applicazioni potrebbero associarsi ad ogni VIP o porta individuali serviti dal real server. Per esempio, il metodo arptables_jf
permette a istanze multiple di Apache HTTP Server di essere eseguite esplicitamente su VIP diversi del sistema. L'utilizzo di arptables_jf
comporta vantaggi significativi in termini di prestazione rispetto all'opzione iptables
.
arptables_jf
i VIP non potranno essere configurati per avviarsi al boot utilizzando gli strumenti di configurazione del sistema di Red Hat Enterprise Linux.
- Create le voci della tabella ARP per ogni indirizzo IP virtuale su ogni real server (il real_ip è l'IP usato dal director per comunicare con il real server; spesso è l'IP assegnato all'
eth0
):arptables -A IN -d <virtual_ip> -j DROP arptables -A OUT -s <virtual_ip> -j mangle --mangle-ip-s <real_ip>
Ciò permetterà ai real server di ignorare tutte le richieste ARP per gli indirizzi IP virtuali, modificando qualsiasi risposta ARP in uscita che potrebbe contenere l'IP virtuale se non modificata, contenendo invece l'IP reale del server. L'unico nodo che dovrebbe rispondere alle richieste ARP per qualsiasi VIP, risulta essere il nodo LVS attivo. - Una volta completato questo processo su ogni real server, salvate le voci per la tabella ARP digitando i seguenti comandi su ogni real server:
service arptables_jf save
chkconfig --level 2345 arptables_jf on
Il comandochkconfig
causerà il ricaricamento della configurazione di arptables al momento dell'avvio da parte del sistema — prima dell'avvio della rete. - Configurate l'indirizzo IP virtuale su tutti i real server utilizzando
ifconfig
per creare un alias IP. Per esempio:#
ifconfig eth0:1 192.168.76.24 netmask 255.255.252.0 broadcast 192.168.79.255 up
Oppure utilizzando l'utilitàiproute2
,ip
, per esempio:#
ip addr add 192.168.76.24 dev eth0
Come precedentemente riportato, gli indirizzi IP virtuali non possono essere configurati in modo da aviarsi al boot utilizzando i tool di configurazione del sistema di Red Hat. Una soluzione a questo problema potrebbe essere quella di posizionare i suddetti comandi in/etc/rc.d/rc.local
. - Configurate Piranha per l'instradamento diretto. Per maggiori informazioni consultate il Capitolo 4, Configurazione di Load Balancer Add-On con Piranha Configuration Tool.
3.2.2. Instradamento diretto e iptables
iptables
. Per configurare l'instradamento diretto utilizzando iptables
è necessario utilizzare regole in grado di creare un proxy trasparente, e che permettono quindi ad un real server di servire i pacchetti inviati all'indirizzo VIP, anche se l'indirizzo VIP non è presente sul sistema.
iptables
è più semplice da configurare rispetto al metodo arptables_jf
. Questo metodo è in grado di evitare interamente il verificarsi delle problematiche LVS ARP poichè gli indirizzi IP virtuali esistono solo sul director LVS attivo.
iptables
rispetto a arptables_jf
. Tali problematiche sono dovute ad un overhead durante l'inoltro/mascheramento di ogni pacchetto.
arptables_jf
. Per esempio, non è possibile eseguire due servizi Apache HTTP Server separati ma assegnati alla porta 80, poichè entrambi devono essere associati a INADDR_ANY
e non agli indirizzi IP virtuali.
iptables
seguite le fasi di seguito riportate:
- Su ogni real server eseguite il seguente comando per ogni combinazione di protocollo (TCP o UDP), VIP, e porta da servire:
iptables -t nat -A PREROUTING -p <tcp|udp> -d <vip> --dport <port> -j REDIRECT
Questo comando causerà la processazione, da parte dei real server, dei pacchetti destinati al VIP e alla porta a loro conferiti. - Salvate la configurazione su ogni real server:
#
service iptables save
#chkconfig --level 2345 iptables on
I comandi sopra riportati causano il ricaricamento della configurazione diiptables
al momento dell'avvio — prima dell'avvio della rete.
3.3. Come eseguire la configurazione
Importante
eth0
si collega alla rete pubblica, e eth1
si collega a quella privata, allora gli stessi dispositivi sul router LVS di backup dovranno collegarsi alle stesse reti.
3.3.1. Suggerimenti generali per il Networking del Load Balancer Add-On
- Attivazione delle interfacce di rete reali
- Per attivare una interfaccia di rete reale utilizzate il seguente comando come utente root, sostituendo N con il numero corrispondente dell'interfaccia (
eth0
eeth1
)./sbin/ifup ethN
Avvertimento
Non usate gli scriptifup
per attivare gli indirizzi IP floating configurati con Piranha Configuration Tool (eth0:1
oeth1:1
). Utilizzate il comandoservice
per avviarepulse
(consultare Sezione 4.8, «Avvio di Load Balancer Add-On» per maggiori informazioni). - Disattivazione delle interfacce di rete reali
- Per disattivare una interfaccia di rete reale utilizzate il seguente comando come utente root, sostituendo N con il numero corrispondente all'interfaccia (
eth0
andeth1
)./sbin/ifdown ethN
- Controllo dello stato delle interfacce di rete
- Se desiderate controllare quale interfaccia è attiva in un determinato momento, digitate quanto segue:
/sbin/ifconfig
Per visualizzare la tabella d'instradamento per una macchina usare il seguente comando:/sbin/route
3.3.1.1. Risoluzione problematiche dell'indirizzo IP virtuale
pulse
.
echo 1 > /proc/sys/net/ipv4/conf/all/promote_secondaries
/etc/sysctl.conf
e aggiungere la seguente riga:
net.ipv4.conf.all.promote_secondaries = 1
3.4. Servizi multi-port e Load Balancer Add-On
iptables
, esternamente al Piranha Configuration Tool.
3.4.1. Assegnazione dei firewall mark
iptables
.
iptables
equivalente per assegnare i firewall mark ai pacchetti di rete.
/sbin/service iptables status
iptables
non è in esecuzione, il prompt apparirà istantaneamente.
iptables
è attivo, esso visualizzerà un set di regole. Se sono presenti alcune regole, digitate il seguente comando:
/sbin/service iptables stop
/etc/sysconfig/iptables
e copiate qualsiasi regola importante in un luogo sicuro prima di procedere.
/sbin/iptables -t mangle -A PREROUTING -p tcp -d n.n.n.n/32 -m multiport --dports 80,443 -j MARK --set-mark 80
iptables
prima di assegnare le regole per la prima volta.
iptables
sopra riportati, n.n.n.n deve essere sostituito con l'IP floating per i vostri server virtuali HTTP e HTTPS. Questi comandi avranno l'effetto di assegnare a qualsiasi traffico indirizzato al VIP sulle porte appropriate, un firewall mark di 80, il quale a sua volta viene riconosciuto da IPVS e inoltrato in modo appropriato.
Avvertimento
3.5. Configurazione di FTP
3.5.1. Come funziona FTP
- Collegamenti attivi
- Quando si stabilisce un collegamento attivo il server aprirà un collegamento dei dati per il client dalla porta 20 ad una porta con un valore più alto sulla macchina client. Successivamente tutti i dati del server verranno passati attraverso questo collegamento.
- Collegamenti passivi
- Quando stabilite un collegamento passivo il client chiederà al server FTP di stabilire una porta per il collegamento passivo, la quale può essere superiore a 10,000. Per questa sessione il server si unisce alla suddetta porta e trasmette al client il numero della porta stessa. A questo punto il client aprirà la nuova porta per il collegamento dei dati. Ogni richiesta fatta dal client risulterà in un collegamento dei dati separato. La maggior parte dei client FTP moderni cercano di stabilire un collegamento passivo al momento della richiesta dei dati dal server.
Nota
3.5.2. Come interessare l'instradamento di Load Balancer Add-On
Nota
ip_vs_ftp
, per fare questo eseguire modprobe ip_vs_ftp
come utente amministrativo al prompt della shell.
3.5.3. Creazione delle regole per il filtro dei pacchetti di rete
iptables
per il servizio FTP, ricontrollate le informazioni in Sezione 3.4.1, «Assegnazione dei firewall mark» relative ai servizi multi-port e alle tecniche per il controllo di regole esistenti per il filtraggio dei pacchetti di rete.
21
nel campo Firewall Mark. Consultate la Sezione 4.6.1, «Sottosezione SERVER VIRTUALE» per maggiori informazioni.
3.5.3.1. Regole per collegamenti attivi
iptables
permette al router LVS di accettare i collegamenti in uscita dai real server non conosciuti da IPVS:
/sbin/iptables -t nat -A POSTROUTING -p tcp -s n.n.n.0/24 --sport 20 -j MASQUERADE
iptables
, n.n.n deve essere sostituito con i primi tre valori dell'IP floating per l'interfaccia di rete interna dell'interfaccia NAT, definita nel pannello IMPOSTAZIONI GLOBALI del Piranha Configuration Tool.
3.5.3.2. Regole per i collegamenti passivi
Avvertimento
/etc/vsftpd.conf
:
pasv_min_port=10000
pasv_max_port=20000
pasv_address
per sovrascrivere l'indirizzo del real server FTP poichè esso viene aggiornato sull'indirizzo IP virtuale da LVS.
10000:20000
nei comandi sotto riportati in 1024:65535
.
iptables
avranno l'effetto di assegnare un firewall mark di 21 a qualsiasi traffico indirizzato all'IP floating delle porte appropriate, il quale a sua volta viene riconosciuto da IPVS e inoltrato in modo appropriato:
/sbin/iptables -t mangle -A PREROUTING -p tcp -d n.n.n.n/32 --dport 21 -j MARK --set-mark 21
/sbin/iptables -t mangle -A PREROUTING -p tcp -d n.n.n.n/32 --dport 10000:20000 -j MARK --set-mark 21
iptables
, n.n.n.n dovrebbe essere sostituito con l'IP floating per il virtual server FTP, definito nella sottosezione VIRTUAL SERVER di Piranha Configuration Tool.
Avvertimento
3.6. Come salvare le impostazioni per il filtro del pacchetto di rete
iptables
, digitate il seguente comando:
/sbin/service iptables save
/etc/sysconfig/iptables
, e potranno essere richiamate al momento dell'avvio.
/sbin/service
per poter avviare, arrestare e controllare lo stato (utilizzando lo status switch) di iptables
. /sbin/service
caricherà automaticamente il modulo appropriato per voi. Per un esempio su come utilizzare il comando /sbin/service
, consultate la Sezione 2.3, «Avvio servizio Piranha Configuration Tool».
Capitolo 4. Configurazione di Load Balancer Add-On con Piranha Configuration Tool
/etc/sysconfig/ha/lvs.cf
. Questo capitolo descrive l'operazione di base del Piranha Configuration Tool, ed il processo di attivazione del Load Balancer Add-On una volta completata la configurazione.
Importante
lvs.cf
e quindi prevenire errori software.
4.1. Software necessario
piranha-gui
deve essere in esecuzione sul router LVS primario per poter usare Piranha Configuration Tool. Per poter configurare Load Balancer Add-On è necessario avere almeno un Web browser di solo testo, ad esempio links
. Se desiderate accedere al router LVS da un'altra macchina, allora sarà necessario un collegamento ssh
al router LVS primario come utente root.
ssh
corrente in una finestra del terminale. Questo collegamento fornisce un modo sicuro per riavviare pulse
e altri servizi, configurare i filtri del pacchetto di rete, e monitorare /var/log/messages
durante la risoluzione dei problemi.
4.2. Accesso al Piranha Configuration Tool
piranha-gui
sia in esecuzione, e che la password amministrativa sia stata impostata, come riportato in Sezione 2.2, «Impostazione di una password per Piranha Configuration Tool».
http://localhost:3636
in un web browser per accedere al Piranha Configuration Tool. In caso contrario digitate l'hostname o l'indirizzo IP reale per il server, seguito da :3636
. Una volta stabilito il collegamento da parte del browser, sarete in grado di visualizzare la schermata mostrata in Figura 4.1, «Pannello di benvenuto».
Figura 4.1. Pannello di benvenuto
piranha
per il Nome utente e la password amministrativa creata nel campo Password.
4.3. CONTROLLO/MONITORAGGIO
pulse
, la tabella d'instradamento LVS, ed i processi nanny
generati da LVS.
Nota
Figura 4.2. Pannello CONTROLLO/MONITORAGGIO
- Auto update
- È possibile aggiornare automaticamente il display dello stato ad un intervallo configurato dall'utente. Per abilitare questa funzione selezionare Auto update e impostare la frequenza di aggiornamento desiderata nella casella Frequenza di aggiornamento in secondi (il valore predefinito è 10 secondi).Non è consigliato impostare l'aggiornamento automatico ad un intervallo di tempo inferiore a 10 secondi, poichè così facendo sarà difficile riconfigurare l'intervallo di Aggiornamento automatico poichè la pagina verrà aggiornata troppo frequentemente. Se incontrate questo problema fate clic su di un altro pannello e successivamente su CONTROLLO/MONITORAGGIO.La funzione di Auto update non è operativa con tutti i browser, come ad esempio Mozilla.
- Aggiorna informazioni ora
- È possibile aggiornare manualmente le informazioni sullo stato selezionando questo pulsante.
- MODIFICA PASSWORD
- Facendo clic su questo pulsante verrete direzionati su di una schermata d'aiuto, contenente le informazioni su come modificare la password amministrativa per il Piranha Configuration Tool.
4.4. IMPOSTAZIONI GLOBALI
Figura 4.3. Pannello IMPOSTAZIONI GLOBALI
- IP pubblico del server primario
- In questo campo inserire l'indirizzo IP reale pubblicamente instradabile per il nodo LVS primario.
- IP privato del server primario
- Inserite l'indirizzo IP reale per una interfaccia di rete alternativa sul nodo LVS primario. Questo indirizzo verrà utilizzato solo come canale heartbeat alternativo per il router di backup, e non sarà correlato all'indirizzo IP privato reale assegnato in Sezione 3.1.1, «Configurazione delle interfacce di rete per il Load Balancer Add-On con NAT». È possibile lasciare vuoto questo campo, ma così facendo non avrete a disposizione alcun canale heartbeat alternativo per il router LVS di backup da utilizzare, creando così un single point of failure.
Nota
L'indirizzo IP privato non è necessario per le configurazioni dell'Instradamento diretto, poichè tutti i real server e le directory LVS condividono gli stessi indirizzi IP virtuali, e dovrebbero avere la stessa configurazione IP route.Nota
L'IP privato del router LVS primario può essere configurato su qualsiasi interfaccia che accetti TCP/IP, incluso un adattatore Ethernet oppure una porta seriale. - TCP Timeout
- Inserire il periodo (in secondi) prima della scadenza della sezione TCP. Il valore di timeout predefinito è 0.
- TCP Fin Timeout
- Inserire il periodo (in secondi) prima della scadenza della sezione TCP dopo aver ricevuto il pacchetto FIN. Il valore di timeout predefinito è 0.
- UDP Timeout
- Inserire il periodo (in secondi) prima della scadenza della sezione UDP. Il valore di timeout predefinito è 0.
- Tipo di rete da usare
- Selezionare NAT per l'instradamento NAT.Selezionare Instradamento diretto per l'instradamento diretto.
- IP del router NAT
- Inserite in questo campo l'IP floating privato. Il suddetto IP dovrebbe essere usato come gateway per i real server.
- Maschera di rete del router NAT
- Se l'indirizzo IP floating del router NAT ha bisogno di una maschera di rete particolare, selezionatela dall'elenco a tendina.
- Dispositivo del router NAT
- Usate questo campo per deifinire il nome del dispositivo dell'interfaccia di rete per l'indirizzo IP floating, come ad esempio
eth1:1
.Nota
Eseguite l'alias dell'indirizzo IP floating del NAT sull'interfaccia Ethernet collegata alla rete privata. In questo esempio la rete privata si trova sull'interfacciaeth1
e quindieth1:1
risulta essere l'indirizzo IP floating.
Avvertimento
4.5. RIDONDANZA
Nota
Figura 4.4. Il pannello RIDONDANZA
- IP pubblico del server ridondante
- Inserire l'indirizzo IP reale pubblico per il nodo del router LVS di backup.
- IP privato del server ridondante
- Inserire in questo campo l'indirizzo IP reale privato del nodo di backup.Se non siete in grado di visualizzare il campo IP privato del server ridondante, tornate sul pannello IMPOSTAZIONI GLOBALI e inserite un indirizzo IP privato del server primario e successivamente fate clic su ACCETTA.
- Intervallo heartbeat (secondi)
- Questo campo imposta il numero di secondi che intercorrono tra gli heartbeat — l'intervallo entro il quale il nodo di backup controllerà lo stato di funzionalità del nodo LVS primario.
- Supponi inattivo dopo (secondi)
- Se il nodo LVS primario non risponde dopo il suddetto numero di secondi, allora il nodo del router LVS di backup inizierà un processo di failover.
- Heartbeat è in esecuzione sulla porta
- Questo campo imposta la porta sulla quale l'heartbeat comunica con il nodo LVS primario. Il default è impostato su 539 se questo campo viene lasciato vuoto.
Avvertimento
sync_version
usando il comando echo
come utente root nel prompt della shell:
echo 0 > /proc/sys/net/ipv4/vs/sync_version
- Come selezionare il demone di sincronizzazione
- Selezionare la casella corrispondente se desiderate abilitare il Demone di sincronizzazione.
- Interfaccia del demone di sincronizzazione
- L'interfaccia di rete attraverso la quale il demone di sincronizzazione invia/riceve i propri messaggi multicast. L'interfaccia predefinita in questo campo è
eth0
. - id demone di sinc
- Questo campo imposta un identificatore (ID) per i messaggi di sinc multicast. I valori supportati vanno da 0 a 255, con il valore predefinito 0 se il campo viene lasciato vuoto.
Avvertimento
4.6. SERVER VIRTUALI
Figura 4.5. Pannello SERVER VIRTUALI
4.6.1. Sottosezione SERVER VIRTUALE
Figura 4.6. La sottosezione SERVER VIRTUALI
- Nome
- Inserite un nome descrittivo per identificare il server virtuale. Questo nome non è l'hostname per la macchina, quindi rendetelo descrittivo e facilmente identificabile. È possibile far riferimento al protocollo usato dal virtual server, come ad esempio HTTP.
- Porta per l'applicazione
- Inserite il numero della porta attraverso la quale l'applicazione del servizio sarà in ascolto. Poichè questo esempio si riferisce ai servizi HTTP, la porta usata è 80.
- Protocollo
- Scegliere tra UDP e TCP nel menù a tendina. I web server generalmente comunicano tramite il protocollo TCP, per questo motivo esso viene selezionato nell'esempio sopra riportato.
- Indirizzo IP virtuale
- Inserite in questo campo l'indirizzo IP floating del server virtuale.
- Maschera di rete dell'IP virtuale
- Impostate la maschera di rete per questo server virtuale attraverso il menù a tendina.
- Firewall Mark
- Non inserite alcun valore intero per il firewall mark in questo campo, a meno che non raggruppate protocolli multi-port o create un virtual server multi-port per protocolli separati ma correlati. In questo esempio il server virtuale presenta un Firewall Mark di 80, poichè stiamo raggruppando i collegamenti per HTTP sulla porta 80 e per HTTPS sulla porta 443 utilizzando il valore 80 del firewall mark. Combinata con la persistenza questa tecnica è in grado di assicurare agli utenti che accedono pagine web sicure e non sicure, un instradamento allo stesso real server conservandone così lo stato.
Avvertimento
Inserendo un firewall mark in questo campo permetterete a IPVS di riconoscere che i pacchetti con questo firewall mark verranno trattati allo stesso modo, ricordate che sarà comunque necessario eseguire una ulteriore configurazione esterna al Piranha Configuration Tool per assegnare i firewall mark. Consultate la Sezione 3.4, «Servizi multi-port e Load Balancer Add-On» per informazioni sulla creazione di servizi multi-port, e la Sezione 3.5, «Configurazione di FTP» per la creazione di un server virtuale FTP ad elevata disponibilità. - Dispositivo
- Inserire il nome del dispositivo di rete al quale desiderate unire l'indirizzo IP floating definito nel campo Indirizzo IP virtuale.Eseguite l'alias dell'indirizzo IP floating pubblico sull'interfaccia Ethernet collegata alla rete pubblica. In questo esempio la rete pubblica si trova sull'interfaccia
eth0
, e quindieth0:1
deve essere inserito come nome del dispositivo.
- Periodo nuovo tentativo
- Inserite un valore intero il quale definisce la durata del periodo, in secondi, prima che il router LVS attivo cerchi di ripristinare un real server nel gruppo dopo il verificarsi di un errore.
- Timeout del servizio
- Inserite un valore intero il quale definisce la durata del periodo, in secondi, prima che un real server venga considerato inattivo e quindi rimosso dal gruppo.
- Server Quiesce
- Dopo aver selezionato il pulsante del server Quiesce il peso di un real server verrà impostato su 0 quando non disponibile. Così facendo il real server verrà disabilitato e, se in un secondo momento, risulterà essere nuovamente disponibile, i real server verranno riabilitati implementando il peso originale. Se il server Quiesce è disabilitato, il real server fallito verrà rimosso dalla tabella dei server, ma verrà nuovamente aggiunto quando riporterà uno stato disponibile.
- Tool di monitoraggio del carico
- Il router LVS è in grado di monitorare il carico sui vari real server tramite l'utilizzo sia di
rup
che diruptime
. Se selezionaterup
dal menu a tendina, ogni real server deve eseguire il serviziorstatd
. Se invece selezionateruptime
, ogni real server deve eseguire il serviziorwhod
.Avvertimento
Il controllo del carico non è sinonimo di bilanciamento del carico, e può risultare in un comportamento di programmazione difficile da prevedere, quando combinato con algoritmi di schedulazione 'pesati'. Altresì se utilizzate il monitoraggio del carico, i real server devono essere macchine Linux. - Programmazione
- Selezionate l'algoritmo di programmazione preferito dal menù a tendina. Il valore di default è
Weighted least-connection
. Per maggiori informazioni sugli algoritmi di scheduling consultate la Sezione 1.3.1, «Algoritmi di programmazione». - Persistenza
- Se un amministratore ha bisogno di collegamenti persistenti per il server virtuale durante le transazioni del client, inserite in questo campo il numero di secondi di inattività permessi prima dell'interruzione del collegamento.
Importante
Se avete inserito un valore nel campo Firewall Mark, allora dovreste inserire anche un valore per la persistenza. Se utilizzate insieme i firewall mark e la persistenza, assicuratevi che la quantità di persistenza sia uguale per ogni server virtuale con il firewall mark. Per maggiori informazioni sulla persistenza e firewall mark, consultate la Sezione 1.5, «Persistenza e Firewall Mark». - Maschera di rete per la persistenza
- Per poter limitare la persistenza di una particolare sottorete, selezionate la maschera di rete appropriata dal menu a tendina.
Nota
Prima dell'avvento dei firewall mark la persistenza, limitata in base alle sottoreti, rappresentava un metodo artigianale per unificare i collegamenti. Ora per ottenere lo stesso risultato è consigliato utilizzare la persistenza in relazione ai firewall mark.
Avvertimento
4.6.2. Sottosezione REAL SERVER
Figura 4.7. Sottosezione REAL SERVER
Figura 4.8. Pannello di configurazione del REAL SERVER
- Nome
- Un nome descrittivo per il real server.
Nota
Questo nome non è l'hostname per la macchina, quindi rendetelo descrittivo e facilmente identificabile. - Indirizzo
- L'indirizzo IP del real server. Poichè la porta in ascolto è stata già specificata per il server virtuale associato, non aggiungete alcun numero.
- Peso
- Un valore intero il quale indica la capacità di questo host in relazione alla capacità di altri host presenti nel gruppo. Il valore può essere arbitrario, ma consideratelo come un rapporto in relazione agli altri real server. Per maggiori informazioni consultare Sezione 1.3.2, «Peso del server e programmazione (scheduling)».
Avvertimento
4.6.3. Sottosezione MODIFICA SCRIPT DI MONITORAGGIO
Figura 4.9. Sottosezione MODIFICA SCRIPT DI MONITORAGGIO
- Programma mittente
- Per una verifica dei servizi molto più avanzata è possibile utilizzare questo campo per specificare il percorso per uno script di controllo del servizio. Questa funzione è particolarmente utile per servizi che richiedono una modifica dinamica dei dati, come ad esempio HTTPS o SSL.Per utilizzare questa funzione è necessario scrivere uno script il quale ritorna una risposta testuale, impostatela in modo da essere eseguibile e digitate il percorso relativo nel campo Programma mittente.
Nota
Per assicurarsi che ogni server all'interno del pool dei real server venga controllato, utilizzate il token speciale%h
dopo il percorso per lo script nel campo Programma mittente. Il suddetto token viene sostituito con l'indirizzo IP del real server durante la chiamata dello script da parte del demonenanny
.Il seguente è un esempio di scirpt da utilizzare come guida durante la composizione di uno script esterno per il controllo del servizio:#!/bin/sh TEST=`dig -t soa example.com @$1 | grep -c dns.example.com if [ $TEST != "1" ]; then echo "OK else echo "FAIL" fi
Nota
Se inserite nel campo Programma mittente un programma esterno, allora il campo Invio viene ignorato. - Invio
- Inserire una stringa per il demone
nanny
da inviare ad ogni real server in questo campo. Per default il campo relativo a HTTP è stato completato. È possibile alterare questo valore a seconda delle vostre esigenze. Se lasciate questo campo vuoto, il demonenanny
cerca di aprire la porta, e se ha successo assume che il servizio è in esecuzione.In questo campo è permesso solo una sola sequenza d'invio, e può contenere solo caratteri ASCII stampabili insieme ai seguenti caratteri:- \n per una nuova riga.
- \r per il ritorno a capo del cursore.
- \t per tab.
- \ escape del carattere successivo che lo segue.
- In attesa
- Inserire la risposta testuale che il server dovrebbe ritornare se funziona correttamente. Se avete scritto il vostro programma mittente, inserite la risposta da inviare in caso di successo.
Nota
Per determinare cosa inviare per un determinato servizio, aprite un collegamentotelnet
per la porta su di un real server, e controllate cosa viene ritornato. Per esempio FTP riporta 220 previo collegamento, è possibile quindi inserirequit
nel campo Invia e220
nel campo In attesa.
Avvertimento
4.7. Sincronizzazione dei file di configurazione
/etc/sysconfig/ha/lvs.cf
— i file di configurazione per i router LVS./etc/sysctl
— il file di configurazione che, oltre ad altre funzioni, abilita l'inoltro dei pacchetti nel kernel./etc/sysconfig/iptables
— Se state utilizzando i firewall mark dovreste sincronizzare uno di questi file in base al filtro del pacchetto di rete usato.
Importante
/etc/sysctl.conf
e /etc/sysconfig/iptables
non vengono modificati quando si configura Load Balancer Add-On con Piranha Configuration Tool.
4.7.1. Sincronizzazione di lvs.cf
/etc/sysconfig/ha/lvs.cf
, viene aggiornato o creato, sarà necessario copiarlo sul nodo del router LVS di backup.
Avvertimento
lvs.cf
identici. Se i file di configurazione LVS dei nodi del router LVS non corrispondono, il processo di failover non si potrà verificare.
scp
.
Importante
scp
è necessario eseguire sshd
nel router di backup. Consultare Sezione 2.1, «Configurazione dei servizi sul router LVS» per informazioni su come configurare correttamente i servizi necessari sui router LVS.
lvs.cf
tra i nodi del router:
scp /etc/sysconfig/ha/lvs.cf n.n.n.n:/etc/sysconfig/ha/lvs.cf
4.7.2. Sincronizzazione di sysctl
sysctl
viene modificato solo una volta. Questo file viene letto al momento dell'avvio e indica al kernel di abilitare il packet forwarding.
Importante
4.7.3. Sincronizzazione delle regole per il filtro dei pacchetti di rete
iptables
sarà necessario sincronizzare il file di configurazione appropriato sul router LVS di backup.
scp /etc/sysconfig/iptables n.n.n.n:/etc/sysconfig/
ssh
per il router di backup, oppure eseguite la registrazione sulla macchina come utente root e digitate il seguente comando:
/sbin/service iptables restart
4.8. Avvio di Load Balancer Add-On
ssh
root per il router LVS primario.
tail -f /var/log/messages
/sbin/service pulse start
pulse
nel terminale con i messaggi di log del kernel. Quando visualizzerete il seguente output, il demone di pulse sarà stato avviato correttamente:
gratuitous lvs arps finished
/var/log/messages
, digitare Ctrl+c.
Appendice A. Come usare il Load Balancer Add-On con High Availability Add-On
Figura A.1. Load Balancer Add-On con un High Availability Add-On
- Primo livello — i router LVS eseguono un bilanciamento del carico per distribuire le richieste web.
- Secondo livello — Un set di web server per servire le richieste.
- Terzo livello — Un High Availability Add-On per servire i dati ai Web server.
Appendice B. Diario delle Revisioni
Diario delle Revisioni | |||
---|---|---|---|
Revisione 1-15.1 | Thu Apr 30 2015 | Francesco Valente | |
| |||
Revisione 1-15 | Tue Dec 16 2014 | Steven Levine | |
| |||
Revisione 1-13 | Thu Oct 9 2014 | Steven Levine | |
| |||
Revisione 1-10 | Tue Nov 19 2013 | John Ha | |
| |||
Revisione 1-8 | Fri Sep 27 2013 | John Ha | |
| |||
Revisione 1-4 | Wed Nov 28 2012 | John Ha | |
| |||
Revisione 1-3 | Mon Jun 18 2012 | John Ha | |
| |||
Revisione 1-2 | Fri Dec 2 2011 | John Ha | |
| |||
Revisione 1-1 | Wed Nov 10 2010 | Paul Kennedy | |
|
Indice analitico
Simboli
- /etc/sysconfig/ha/lvs.cf file, /etc/sysconfig/ha/lvs.cf
A
- arptables_jf, Instradamento diretto e arptables_jf
C
- chkconfig, Configurazione dei servizi sul router LVS
- cluster
- come usare il Load Balancer Add-On con High Availability Add-On, Come usare il Load Balancer Add-On con High Availability Add-On
- commenti, Commenti
- componenti
- Load Balancer Add-On, Componenti di Load Balancer Add-On
F
- FTP, Configurazione di FTP
- (vedi anche Load Balancer Add-On)
H
- High Availability Add-On
- come usare Load Balancer Add-On con, Come usare il Load Balancer Add-On con High Availability Add-On
- e Load Balancer Add-On , Come usare il Load Balancer Add-On con High Availability Add-On
I
- inoltro dei pacchetti, Abilitare l'inoltro dei pacchetti
- (vedi anche Load Balancer Add-On)
- instradamento
- prerequisiti per il Load Balancer Add-On, Configurazione delle interfacce di rete per il Load Balancer Add-On con NAT
- instradamento diretto
- e arptables_jf, Instradamento diretto e arptables_jf
- introduzione, Introduzione
- altri documenti Red Hat Enterprise Linux, Introduzione
- iptables , Configurazione dei servizi sul router LVS
- ipvsadm programma, ipvsadm
L
- least connections (vedi programmazione processi, Load Balancer Add-On)
- Load Balancer Add-On
- /etc/sysconfig/ha/lvs.cf file, /etc/sysconfig/ha/lvs.cf
- avvio di Load Balancer Add-On, Avvio di Load Balancer Add-On
- come usare il Load Balancer Add-On con High Availability Add-On, Come usare il Load Balancer Add-On con High Availability Add-On
- componenti, Componenti di Load Balancer Add-On
- configurazione iniziale, Configurazione iniziale di Load Balancer Add-On
- dati condivisi, Condivisione e replica dei dati tra real server
- inoltro dei pacchetti, Abilitare l'inoltro dei pacchetti
- instradamento diretto
- e arptables_jf, Instradamento diretto e arptables_jf
- requisiti di rete, Load Balancer Add-On tramite instradamento diretto
- requisiti, di rete, Instradamento diretto
- requisiti, hardware, Instradamento diretto, Load Balancer Add-On tramite instradamento diretto
- requisiti, software, Instradamento diretto, Load Balancer Add-On tramite instradamento diretto
- instradamento NAT
- requisiti, di rete, Il NAT Load Balancer Add-On Network
- requisiti, hardware, Il NAT Load Balancer Add-On Network
- requisiti, software, Il NAT Load Balancer Add-On Network
- ipvsadm programma, ipvsadm
- metodi di instradamento
- nanny demone, nanny
- Piranha Configuration Tool , Piranha Configuration Tool
- prerequisiti per l'instradamento, Configurazione delle interfacce di rete per il Load Balancer Add-On con NAT
- programmazione processi, Panoramica programmazione di Load Balancer Add-On
- programmazione, processi, Panoramica programmazione di Load Balancer Add-On
- pulse demone, pulse
- replica dei dati, real server, Condivisione e replica dei dati tra real server
- router LVS
- configurazione servizi, Configurazione iniziale di Load Balancer Add-On
- nodo primario, Configurazione iniziale di Load Balancer Add-On
- servizi necessari, Configurazione dei servizi sul router LVS
- send_arp programma, send_arp
- servizi multi-port, Servizi multi-port e Load Balancer Add-On
- sincronizzazione dei file di configurazione, Sincronizzazione dei file di configurazione
- tre livelli
- Load Balancer Add-on, Configurazione Load Balancer Add-On a tre livelli
- LVS
- instradamento NAT
- abilitazione, Come abilitare l'instradamento NAT sui router LVS
- lvs demone, lvs
- panoramica, Panoramica Load Balancer Add-On
- real server, Panoramica Load Balancer Add-On
- lvs demone, lvs
N
- nanny demone, nanny
- NAT
- abilitazione, Come abilitare l'instradamento NAT sui router LVS
- metodi di instradamento, Load Balancer Add-On, Metodi di instradamento
- network address translation (vedi NAT)
P
- Piranha Configuration Tool , Piranha Configuration Tool
- CONTROLLO/MONITORAGGIO , CONTROLLO/MONITORAGGIO
- impostazione di una password, Impostazione di una password per Piranha Configuration Tool
- IMPOSTAZIONI GLOBALI , IMPOSTAZIONI GLOBALI
- limitare l'accesso a, Limitare l'accesso a Piranha Configuration Tool
- MODIFICA SCRIPT DI MONITORAGGIO Sottosezione, Sottosezione MODIFICA SCRIPT DI MONITORAGGIO
- pannello di login, Accesso al Piranha Configuration Tool
- panoramica, Configurazione di Load Balancer Add-On con Piranha Configuration Tool
- REAL SERVER sottosezione, Sottosezione REAL SERVER
- RIDONDANZA , RIDONDANZA
- SERVER VIRTUALE sottosezione, Sottosezione SERVER VIRTUALE
- Firewall Mark , Sottosezione SERVER VIRTUALE
- Indirizzo IP virtuale , Sottosezione SERVER VIRTUALE
- Persistence , Sottosezione SERVER VIRTUALE
- Scheduling , Sottosezione SERVER VIRTUALE
- SERVER VIRTUALI , SERVER VIRTUALI
- software necessario, Software necessario
- piranha-passwd , Impostazione di una password per Piranha Configuration Tool
- programmazione processi, Load Balancer Add-On, Panoramica programmazione di Load Balancer Add-On
- programmazione, processi (Load Balancer Add-On), Panoramica programmazione di Load Balancer Add-On
- pulse demone, pulse
R
- real server
- configurazione dei servizi, Configurazione dei servizi sui Real Server
- round robin (vedi programmazione processi, Load Balancer Add-On)
S
- Samba
- demone, lvs
- security
- Piranha Configuration Tool , Limitare l'accesso a Piranha Configuration Tool
- send_arp programma, send_arp
- servizi multi-port, Servizi multi-port e Load Balancer Add-On
- (vedi anche Load Balancer Add-On)
- servizio piranha-gui , Configurazione dei servizi sul router LVS
- servizio pulse , Configurazione dei servizi sul router LVS
- servizio sshd , Configurazione dei servizi sul router LVS
- sincronizzazione dei file di configurazione, Sincronizzazione dei file di configurazione
W
- weighted least connections (vedi programmazione processi, Load Balancer Add-On)
- weighted round robin (vedi programmazione processi, Load Balancer Add-On)