PDA

Bekijk Volledige Versie : KeepAlived, virtual_server met IPv6?



Wido
26/11/10, 19:43
Hi,

Ik ben bezig onze loadbalancing uit te breiden met IPv6 support, we gebruiken KeepAlived met VRRP voor onze loadbalancing, werkt prima.

Nu heb ik het uitgebreid met IPv6 support, ook dat gaat prima, maar, vervolgens kom ik bij de virtual server terecht, die lijkt geen IPv6 te ondersteunen? Ik ben even de source ingedoken en het lijkt inderdaad ook echt niet ondersteund te worden. Iemand daar ervaring mee?

Ik heb nu als config:


virtual_server [2a00:f10:XX:XX:0:1337:6:80] 80 {
delay_loop 6
lb_algo wlc
lb_kind DR
persistence_timeout 500
protocol TCP

real_server [2a00:f10:XX:XX:0:1337:6:81] 80 {
...
...
...
}
}


KeepAlived maakt hier van:


Nov 26 17:37:41 loadbalancer01 Keepalived_healthcheckers: Activating healtchecker for service [0.0.0.0:80]
Nov 26 17:37:41 loadbalancer01 Keepalived_healthcheckers: Activating healtchecker for service [0.0.0.0:80]
Nov 26 17:37:42 loadbalancer01 Keepalived_healthcheckers: HTTP status code error to [0.0.0.0:80] url(/), status_code [503].
Nov 26 17:37:42 loadbalancer01 Keepalived_healthcheckers: Removing service [0.0.0.0:80] from VS [0.0.0.0:80]

Ik heb het ook al onder de brackets geprobeerd, maar dat werkt ook niet.

Iemand een idee om dit toch werkend te krijgen?

Wido
27/11/10, 11:13
Ben nog even dieper de code in gedoken en het is duidelijk, er is in KeepAlived gewoon geen rekening gehouden met IPv6 voor virtual en/of real servers, dat zit er niet in.

visser
28/11/10, 00:05
Hi,

[knip poging KeepAlived met IPv6]

Ik heb het ook al onder de brackets geprobeerd, maar dat werkt ook niet.

Iemand een idee om dit toch werkend te krijgen?

Kun je wat met mijn suggestie van 12 Okt in dit forum, nl om twee (of meer) servers een identiek IPv6 adres op een extra loopback te geven, en dat te routeren [= anycast] ?

Als je dezelfde routing metric gebruikt wordt het loadbalancing, met een verschillende wordt het een primary/failover gedrag.

Wido
28/11/10, 10:15
Ja, dat zou een optie zijn. Maar wij loadbalancen alles met LVS omdat we machines hebben die niet allemaal even krachtig zijn. Ook de "Sorry server" is een handige optie van KeepAlived.

Het zou gewoon moeten werken met KeepAlived :)

Anycast werkt bijvoorbeeld wel om een redundant IPv6 gateway te maken wanneer VRRP niet werkt, maar echt loadbalancing is niet ideaal. Ook wil ik weten wanneer een service down gaat, dan moet de machine uit de pool.

Iemand met C kennis met tijd over?

Jeeves_
29/11/10, 11:12
http://www.keepalived.org/changelog.html

Het lijkt erop dat er daar sinds mei toch wel IPv6 support in zit? Of zit ik scheef/op de verkeerde site te kijken? :)

Wido
29/11/10, 11:19
http://www.keepalived.org/changelog.html

Het lijkt erop dat er daar sinds mei toch wel IPv6 support in zit? Of zit ik scheef/op de verkeerde site te kijken? :)Ja, het zit er in voor VRRP, je kan dus een virtueel IPv6 adres configureren.

Echter een "virtual_server" met daar onder "real_servers", dat gaat nog niet. Dat stuk moet IPVS/LVS aansturen en daar is nog geen IPv6 support voor.

Inmiddels met de dev'ers aan het mailen, schijnt aan te worden gewerkt.

Wido
29/11/10, 23:00
Ik heb inmiddels wat heen en weer gemaild met de developers en ze gaan er voor zorgen dat vóór kerstmis deze support wel in KeepAlived zit.

Ik doneer een leuk bedrag richting KeepAlived, zij zorgen voor support van virtual / real servers met IPv6.

Wido
12/01/11, 14:35
Nou, Kerstmis is niet gelukt, maar ik heb inmiddels KeepAlived 1.2.2beta ontvangen met IPv6 support voor virtual en real servers, werkt top!

Ben de laatste zaken aan het debuggen met de developers, maar dan lijkt het er op dat volgende week er een release is met IPv6 support zodat we ook mooi IPv6 kunnen loadbalancen.

Wido
17/01/11, 13:24
Begint inmiddels een topic te worden waar alleen ik in post, maar KeepAlived 1.2.2 is uit, mét IPv6 support voor Virtual Servers! We kunnen nu dus ook IPv6 loadbalancen met KeepAlived en LVS: http://www.keepalived.org/

Eflicta
17/01/11, 13:28
Ha Wido!

Zeker niet, ik volg dit topic ook, :)

Top, IPv6 support! Ik heb zelf nog een wens die ik graag in keepalived wil zien, en waar ik bedrijfsmatig het project oom financieel mee zal ondersteunen, :).

Ik zal deze release morgen op een test-omgeving uitrollen, ben benieuwd!

Mark17
17/01/11, 18:39
Begint inmiddels een topic te worden waar alleen ik in post, maar KeepAlived 1.2.2 is uit, mét IPv6 support voor Virtual Servers! We kunnen nu dus ook IPv6 loadbalancen met KeepAlived en LVS: http://www.keepalived.org/

Bedankt voor de update. Hopelijk lukt het om deze maand onze keepalived systemen naar die versie te upgraden (na het eerst te testen).

visser
17/01/11, 21:51
Begint inmiddels een topic te worden waar alleen ik in post, maar KeepAlived 1.2.2 is uit, mét IPv6 support voor Virtual Servers! We kunnen nu dus ook IPv6 loadbalancen met KeepAlived en LVS: http://www.keepalived.org/

Ik doe op moment niks waar ik KeepAlived (met of zonder IPv6) voor nodig heb, maar ik vind het wel nuttig om te volgen.
Kortom, je post niet voor niks.

Wido
18/01/11, 16:05
Ik doe op moment niks waar ik KeepAlived (met of zonder IPv6) voor nodig heb, maar ik vind het wel nuttig om te volgen.
Kortom, je post niet voor niks.:)

Hier draait het inmiddels al zo'n twee weken stabiel, heb nog wel één raar probleem, maar dat lijkt eerder iets met mijn eigen routering te maken hebben dan KeepAlived.

Wanneer mijn virtual services on boot online komen ziet LVS de route naar de "Real server" als "Local" in plaats van een "Forward", duurt even voordat LVS het uiteindelijk als een "Forward" ziet.

Afgezien van dat draait het prima.

Weppel
18/01/11, 16:36
Mooie contributie Wido, ik volg de Keepalived mailinglist al een tijdje en er is al erg lang vraag naar een degelijke IPv6 integratie. Kortom, top werk!

Wido
20/01/11, 13:43
Mooie contributie Wido, ik volg de Keepalived mailinglist al een tijdje en er is al erg lang vraag naar een degelijke IPv6 integratie. Kortom, top werk!Graag gedaan, wij hadden het zelf ook erg hard nodig, vandaar :)

Anyway, let er wel op, als je IPv6 gaat gebruiken met LVS en DirectRouting, dan zal je in KeepAlived bij je meeste checkers een "bindto" moeten specificeren.

Ik had het probleem dat er outbound het VIP adres werd gebruikt wat er voor zorgde dat mijn health checks faalde.