Beschreibung der Rolle
Die Rolle LB stellt den zentralen Zugangspunkt zum Portal und den SOAP Schnittstellen zur Verfügung. Hier erfolgt dann die Verteilung der Anfragen auf die zur Verfügung stehenden Web Application Server unter Berücksichtigung einer gleichmäßigen Lastverteilung, des möglichen Ausfalls einer oder mehrerer Web Server und der Dienst-Spezifischen Einschränkungen. Des Weiteren übernimmt diese Rolle auch das Bereitstellen der mittels TLS verschlüsselten Verbindung über HTTPS. Der Dienst kann sowohl auf HTTP (Port 80) und HTTPS (Port 443) angeboten werden. Eine automatische Umleitung zu HTTPS bzw. spezieller URLs kann hier auch realisiert werden (Beispiele: https://acd.example.com wird umgeleitet zuhttps://acd.example.com/CarrierPortal/login/reseller/client oder https://acd.exaple.com/admin wird umgeleitet zu https://acd.exaple.com/CarrierPortal/sysadmin/login).
Da die Rolle in der Regel sehr wenig Ressourcen benötigt, wird sie in der Regel (und auch im hier aufgeführten Konfigurationsbeispiel) auf der gleichen Maschine installiert, in der auch die Rolle STORE installiert wurde.
Installation der Software
Die Installation der benötigten Software haproxy
erfolgt mittels folgenden Befehls:
yum -y install haproxy mv /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.sample
Die mitgelieferte Beispiels-Konfigurationsdatei wird mit dem zweiten Befehl umbenannt, damit sie auch zu einem späteren Zeitpunkt zu Referenzzwecken zur Verfügung steht.
haproxy aktivieren
Der haproxy Dienst wird mit folgendem Befehl in die Liste der automatisch startenden Dienste aufgenommen:
chkconfig haproxy on
Firewall Konfiguration
Als nächstes müssen in der Firewall die Port-Freigaben für den haproxy Dienst eingetragen und persistent gespeichert werden:
firewall-cmd --zone=public --add-port=80/tcp --permanent firewall-cmd --zone=public --add-port=443/tcp --permanent firewall-cmd --zone=public --add-port=7777/tcp --permanent firewall-cmd --reload
SeLinux Konfiguration
Damit haproxy beliebige Ports öffnen kann, muss eine SeLinux Konfiguration vorgenommen werden:
setsebool -P haproxy_connect_any=1 semanage permissive -a haproxy_t
Log haproxy
Um die Logausgaben des haproxy Dienstes über den zentralen Logging-Dienst in eine separate Log-Datei zu speichern, müssen folgende Befehle ausgeführt werden:
sed -i -e 's/#$ModLoad *imudp/$ModLoad imudp/' -e 's/#$UDPServerRun *514/$UDPServerRun 514/' /etc/rsyslog.conf cat <<EOFF>/etc/rsyslog.d/haproxy.conf local2.* /var/log/haproxy.log EOFF service rsyslog restart