Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

3.4. Servizi multi-port e Load Balancer Add-On

Durante la creazione dei servizi Load Balancer Add-On multi-port i router LVS avranno bisogno, con qualsiasi tipologia, di una configurazione aggiuntiva. I servizi multi-port possono essere creati artificialmente tramite i firewall mark per unire tra loro protocolli diversi ma correlati, come ad esempio HTTP (porta 80) e HTTPS (porta 443), o quando si utilizza Load Balancer Add-On con protocolli multi-port veri e propri, come ad esempio FTP. In entrambi i casi il router LVS utilizza i firewall mark per sapere che i pacchetti destinati a porte diverse, mantenendo lo stesso firewall mark, devono essere gestiti in modo identico. Altresì, quando combinati con la persistenza, i firewall mark assicurano l'instradamento dei collegamenti della macchina client allo stesso host, fino a quando i collegamenti si verificano all'interno di un periodo specificato dal parametro della persistenza. Per maggiori informazioni su come assegnare persistenza ad un virtual server, consultate la Sezione 4.6.1, «Sottosezione SERVER VIRTUALE».
Sfortunatamente il meccanismo usato per bilanciare il carico sui real server — IPVS — è in grado di riconoscere i firewall mark assegnati ad un pacchetto, ma non di assegnarli. Il compito di assegnare i firewall mark deve essere espletato dal filtro del pacchetto di rete, iptables, esternamente al Piranha Configuration Tool.

3.4.1. Assegnazione dei firewall mark

Per assegnare i firewall mark ad un pacchetto destinato ad una porta particolare l'amministratore dovrà utilizzare iptables.
Questa sezione mostra come unire HTTP e HTTPS, tuttavia FTP rappresenta un altro protocollo multi-port clusterizzato molto comune. Se un Load Balancer Add-On viene utilizzato per i servizi FTP, consultate la Sezione 3.5, «Configurazione di FTP» per informazioni su come eseguire la configurazione.
La regola di base da ricordare quando si utilizzano i firewall mark è quella che per ogni protocollo che utilizza un firewall mark con il Piranha Configuration Tool, è necessaria la presenza di una regola iptables equivalente per assegnare i firewall mark ai pacchetti di rete.
Prima di creare le regole per il filtro dei pacchetti di rete, assicuratevi che non siano presenti altre regole. Per fare questo aprite un prompt della shell, registratevi come utente root e digitate:
/sbin/service iptables status
Se iptables non è in esecuzione, il prompt apparirà istantaneamente.
Se iptables è attivo, esso visualizzerà un set di regole. Se sono presenti alcune regole, digitate il seguente comando:
/sbin/service iptables stop
Se le regole già presenti sono regole importanti, controllate il contenuto di /etc/sysconfig/iptables e copiate qualsiasi regola importante in un luogo sicuro prima di procedere.
Di seguito vengono riportate le regole che assegnano lo stesso firewall mark, 80, al traffico in ingresso destinato all'indirizzo IP floating, n.n.n.n, su porte 80 e 443.
/sbin/iptables -t mangle -A PREROUTING -p tcp -d n.n.n.n/32 -m multiport --dports 80,443 -j MARK --set-mark 80
Per istruzioni su come assegnare il VIP all'interfaccia di rete pubblica, consultate la Sezione 4.6.1, «Sottosezione SERVER VIRTUALE». Sarà necessario eseguire una registrazione come utenti root e caricare il modulo per iptables prima di assegnare le regole per la prima volta.
Nei comandi 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

I suddetti comandi avranno un effetto immediato, ma non persisteranno dopo aver riavviato il sistema. Per assicurarsi che le impostazioni del filtro dei pacchetti di rete siano ripristinati dopo il riavvio, consulate la Sezione 3.6, «Come salvare le impostazioni per il filtro del pacchetto di rete»