Kapitel 3. Einrichten von LVS
LVS besteht aus zwei grundlegenden Gruppen: den LVS-Routern und den realen Servern. Um einen "Single Point of Failure" auszuschließen, sollte jede Gruppe mindestens zwei Mitgliedersysteme enthalten.
Die LVS-Router-Gruppe sollte aus zwei identischen oder sehr ähnlichen Systemen bestehen, auf denen Red Hat Enterprise Linux läuft. Einer agiert als der aktive LVS-Router, während der andere für den unmittelbaren Einsatz bereitsteht, so dass beide so weit wie möglich dieselben Fähigkeiten besitzen müssen.
Vor der Auswahl und der Konfiguration der Hardware für die Gruppe der realen Server müssen Sie ermitteln, welcher der drei Typen der LVS-Topologien verwendet werden soll.
3.1. Das NAT LVS-Netzwerk
Die NAT-Topologie bietet einen großen Spielraum bei der Verwendung von existierender Hardware, ist jedoch bei der Handhabung von großer Auslastung in seiner Fähigkeit auf Grund der Tatsache eingeschränkt, dass alle Pakete, die in den Pool ein-, bzw. austreten, den LVS-Router passieren müssen.
- Netzwerk-Layout
- Die Topologie für LVS unter Verwendung von NAT-Routing ist aus der Sicht eines Netzwerk-Layouts die einfachste, da nur ein Zugriffspunkt zum öffentlichen Netzwerk benötigt wird. Die realen Server geben alle Anfragen zurück an den LVS-Router, so dass sie sich in ihrem eigenen privaten Netzwerk befinden.
- Hardware
- Die NAT-Topologie ist die flexibelste hinsichtlich der Hardware, weil die realen Server keine Linux-Maschinen sein müssen, um ordnungsgemäß zu funktionieren. In einer NAT-Topologie benötigt jeder reale Server nur eine NIC, da er lediglich dem LVS-Router antwortet. Die LVS-Router dagegen benötigen jeweils zwei NICs, um den Datenverkehr zwischen den beiden Netzwerken zu routen. Da diese Topologie zu einem Engpass beim LVS-Router führt, können auf jedem LVS-Router Gigabit Ethernet-NICs eingesetzt werden, um die Bandbreite, die die LVS-Router handhaben können, zu erweitern. Falls ein Gigabit-Ethernet auf den LVS-Routern eingesetzt wird, muss jedes Switch, das die realen Server mit den LVS-Routern verbindet, mindestens zwei Gigabit-Ethernet-Ports besitzen, um die Auslastung effektiv zu bewältigen.
- Software
- Da die NAT-Topologie die Verwendung von
iptables
für einige Konfigurationen erfordert, kann einiges an Software-Konfiguration über Piranha Configuration Tool hinaus anfallen. Speziell FTP-Dienste und die Verwendung von Firewall-Markierungen erfordern zusätzliche manuelle Konfiguration der LVS-Router, um Anfragen ordnungsgemäß zu routen.
3.1.1. Konfiguration von Netzwerkschnittstellen für LVS mit NAT
To set up LVS with NAT, you must first configure the network interfaces for the public network and the private network on the LVS routers. In this example, the LVS routers' public interfaces (
eth0
) will be on the 192.168.26/24 network (I know, I know, this is not a routable IP, but let us pretend there is a firewall in front of the LVS router for good measure) and the private interfaces which link to the real servers (eth1
) will be on the 10.11.12/24 network.
So on the active or primary LVS router node, the public interface's network script,
/etc/sysconfig/network-scripts/ifcfg-eth0
, could look something like this:
DEVICE=eth0 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.26.9 NETMASK=255.255.255.0 GATEWAY=192.168.26.254
Das Skript
/etc/sysconfig/network-scripts/ifcfg-eth1
für die private NAT-Schnittstelle auf dem LVS-Router könnte ungefähr so aussehen:
DEVICE=eth1 BOOTPROTO=static ONBOOT=yes IPADDR=10.11.12.9 NETMASK=255.255.255.0
In this example, the VIP for the LVS router's public interface will be 192.168.26.10 and the VIP for the NAT or private interface will be 10.11.12.10. So, it is essential that the real servers route requests back to the VIP for the NAT interface.
Wichtig
The sample Ethernet interface configuration settings in this section are for the real IP addresses of an LVS router and not the floating IP addresses. To configure the public and private floating IP addresses the administrator should use the Piranha Configuration Tool, as shown in Abschnitt 4.4, »GLOBAL SETTINGS« and Abschnitt 4.6.1, »Der Unterabschnitt VIRTUAL SERVER«.
After configuring the primary LVS router node's network interfaces, configure the backup LVS router's real network interfaces — taking care that none of the IP address conflict with any other IP addresses on the network.
Wichtig
Stellen Sie sicher, dass jede Schnittstelle auf dem Backup-Knoten dasselbe Netzwerk wie die Schnittstelle auf dem primären Knoten bedient. Wenn eth0 beispielsweise mit dem öffentlichen Netzwerk auf dem primären Knoten verbunden ist, muss es ebenfalls mit dem öffentlichen Netzwerk auf dem Backup-Knoten verbunden sein.
3.1.2. Routing auf den realen Servern
Das Wichtigste, das bei der Konfiguration der Netzwerkschnittstellen der realen Server in einer NAT-Topologie beachtet werden muss, ist das Einstellen eines Gateways für die NAT Floating-IP-Adressen des LVS-Routers. In diesem Beispiel lautet die Adresse 10.11.12.10.
Anmerkung
Once the network interfaces are up on the real servers, the machines will be unable to ping or connect in other ways to the public network. This is normal. You will, however, be able to ping the real IP for the LVS router's private interface, in this case 10.11.12.8.
So the real server's
/etc/sysconfig/network-scripts/ifcfg-eth0
file could look similar to this:
DEVICE=eth0 ONBOOT=yes BOOTPROTO=static IPADDR=10.11.12.1 NETMASK=255.255.255.0 GATEWAY=10.11.12.10
Warnung
Falls ein realer Server mehr als eine Netzwerkschnittstelle mit einer Zeile
GATEWAY=
konfiguriert hat, erhält die erste, die aktiv ist, die Gateway-Adresse. Wenn daher sowohl eth0
und eth1
konfiguriert sind und eth1
für LVS verwendet wird, kann es sein, dass die realen Server Anfragen ggf. nicht korrekt routen.
Irrelevante Netzwerkschnittstellen sollten am besten deaktiviert werden, indem ihre Netzwerkskripte im Verzeichnis
/etc/sysconfig/network-scripts/
auf ONBOOT=no
gesetzt werden oder indem sichergestellt wird, dass das Gateway bei der Schnittstelle korrekt eingerichtet wurde, die als erstes aktiviert wird.
3.1.3. Aktivierung von NAT-Routing auf den LVS-Routern
In a simple NAT LVS configuration where each clustered service uses only one port, like HTTP on port 80, the administrator needs only to enable packet forwarding on the LVS routers for the requests to be properly routed between the outside world and the real servers. See Abschnitt 2.5, »Aktivierung der Paketweiterleitung« for instructions on turning on packet forwarding. However, more configuration is necessary when the clustered services require more than one port to go to the same real server during a user session. For information on creating multi-port services using firewall marks, see Abschnitt 3.4, »Multiport-Dienste und LVS«.
Once forwarding is enabled on the LVS routers and the real servers are set up and have the clustered services running, use the Piranha Configuration Tool to configure LVS as shown in Kapitel 4, Konfiguration der LVS-Router mit dem Piranha Configuration Tool.
Warnung
Do not configure the floating IP for
eth0:1
or eth1:1
by manually editing network scripts or using a network configuration tool. Instead, use the Piranha Configuration Tool as shown in Abschnitt 4.4, »GLOBAL SETTINGS« and Abschnitt 4.6.1, »Der Unterabschnitt VIRTUAL SERVER«.
When finished, start the
pulse
service as shown in Abschnitt 4.8, »Starten von LVS«. Once pulse
is up and running, the active LVS router will begin routing requests to the pool of real servers.