Loadbalancers
doel
De loadbalancer zorgen er voor dat bij voorbeeld een webdienst redundant uitgevoerd kan worden. De loadbalancer zelf is ook redundant uitgevoerd.
opzet
We hebben 2 loadbalancer ieder draait op een andere ESXi server in kader van de redundantie. Als de ene faalt neemt de andere het over. Daarnaast zorgt de loadbalancer dat verkeer over de webservers wordt verspreid en als er webserver uitvalt wordt deze uit de pool gehaald waar door de webdienst gewoon bereikbaar blijft.
ip plan
212.72.227.80 t/m 212.72.227.90 vip01 t/m vip11 (virtuele ips voor diensten die geloadblanced worden)
212.72.227.91 lb1-bip.hobby.nl (ip voor loadbalancer zelf)
212.72.227.92 lb2-bip.hobby.nl (ip voor loadbalancer zelf)
212.72.227.93 lb1.hobby.nl (ip voor het os van de loadbalancer)
212.72.227.94 lb2.hobby.nl (ip voor het os van de loadbalancer)
Voor alle IPv4 addressen is soort gelijk IPv6 adres bijvoorbeeld 212.72.227.80 wordt 2a02:968:1:7:212:72:227:80
configuratie
termen
Hier onder een overzicht van termen die in de configuratie worden gebruikt en mogelijk verwarend zijn.
- server (Dit is kant waar op virtuele ip draait en waar de client naar toe communiseerd.)
- target (Dit zijn bijvoorbeeld de webserver die in een pool zitten voor loadbalansing)
- vrrp ( Dit is het protocol dat zorgt voor de master slave setup)
- network ( Hier staat gedefineerd met welk ip en subnet de loadbalancer in bepaald subnet hangt de loadbalancer heeft zijn eigen ips die los staan van het os)
config files
De configuratie bestanden mogen nooit met de hand worden geedit worden, dit dient altijd te gebeuren door middel van loadbalncer command prompt deze kan je benader door met ssh in te loggen op een loadbalancer en als root het commando te geven bng control
Elke configuratie wijziging moet op alle 2 loadbalancer door gevoerd worden dit wordt helaas niet gerepliseerd
nieuwe server aanmaken/editen/bekijken
aanmaken
In dit voorbeeld gaan we server configureren voor een webserver dit doen we als volgt als we een maal op loadbalancer command prompt zitten:
LB1# server 2 name vip2 LB1# server 2 ipaddr 212.72.227.81 LB1# server 2 ipaddr6 2a02:968:1:7:212:72:227:81 LB1# server 2 port 80 LB1# server 2 protocol tcp LB1# server 2 sessionid src+port LB1# server 2 method session LB1# server 2 targets 2,3
Hier naar willen we deze configuratie door voeren en activeren dit doen we door het commando commit server 2