NetScaler High Availability en Hyper-V NIC-Teaming

Gepubliceerd door Erik Bakker op

Enkele weken geleden is mij door een klant gevraagd om de huidige NetScalers uit te faseren en te vervangen door een nieuwe installatie op een nieuw platform. omdat we geen rommel van de oude omgeving wilden meenemen is er besloten om een schone installatie te doen en deze vervolgens ook maar direct in HA te zetten.

Dus de laatste NetScaler VPX virtual appliance gedownload bij Citrix en deze geimporteerd op de tijdelijke testomgeving omdat het nieuwe serveercluster nog niet operationeel was.  De installatie doorlopen en alle gewenste functionaliteit geactiveerd en geconfigureerd

 

  • Loadbalancing van de Citrix Delivery Controllers
  • Loadbalancing van StoreFront
  • Loadbalancing van Citrix Director
  • Loadbalancing van custom servers en wat contentswitching vservers
  • Ontsluiting Citrix XenMobile, ShareFile
  • en als laatste een Citrix NetScaler Gateway vServer om de omgeving van buiten weer beschikbaar te maken

Alles netjes klaargemaakt, de NetScalers in een HA pair gezet en alles functioneerde als een zonnetje… happy camper zou je denken.

..totdat de beheerders besloten om de NetScalers te migreren naar het nieuwe servercluster, toen begonnen de problemen…

De klachten uitten zich doordat de gebruikers flink last hadden van hangende sessies als er vanuit huis werd gewerkt op de XenApp servers.  ook bleken de NetScalers zich nogal vreemd te gedragen (primary node werd secondary en secondary werd primaire elke 5 minuten). dit bleek ook de oorzaak van de hangende sessies. het steeds maar uitvoeren van een failover vertraagde de sessies.

Om snel even eea uit te sluiten en omdat ik al een vermoeden had dat het mogelijk met het netwerk te maken kon hebben heb ik de 2 nodes eens verplaatst naar 1 HyperV host zodat het onderlinge netwerkverkeer binnen de host blijft .. direct waren de problemen opgelost. dus een netwerkissue!

Navraag bij de beheerders leerde mij dat er op de nieuwe omgeving gebruik werd gemaakt van teaming (net als overigens op de oude omgeving) en dat deze configuratie ingesteld was op ‘LACP’  met als method ‘Address Hash’  ….aaaaah daar hebben we de boosdoener.

Address Hash is onder hyperV teaming heeft de eigenschap dat hij ‘af en toe’ het mac adres van de virtuele netwerkkaart van de VM vervangt door het mac adres van 1 van de NIC team leden. dit zorgde ervoor dat de NetScalers in de war raakten als het netwerkeer over de fysieke netwerkkaarten gaat (wat dus niet gebeurd als de VM’s op 1 hosts zitten!)

 

oplossing: de loadbalancing mode  aanpassen van address hash naar ‘hyper-V’ port. deze mode zorgt ervoor dat het mac adres niet aangepast wordt.

Schermafbeelding 2016-02-05 om 16.27.35

…case closed!

conclusie: NetScaler in HA en HyperV en ook NIC teaming? gebruik dan altijd HyperV port als loadbalancing methode!