wiki:help/scc/drbd/showstatus

Redundancy opzetten met Syn-3

Zorg dat u altijd een backup heeft voordat u deze operatie uitvoert!

Met Syn-3 is het mogelijk om achteraf redundancy te activeren.

Het enige wat u hiervoor nodig bent is een zogenaamde crosskabel tussen de netwerk kaarten van de servers. Hiervoor kunt u bijvoorbeeld een 3e netwerk kaart in beide machines gebruiken.

Hieronder de instructies voor het opzetten van een 2e server voor redundancy.

Stap 1: Hoofd server (primaire server)

U begint met een reeds standaard geinstalleerde Syn-3 server:

  1. Zorg dat de server 100% up to date is.
  2. Zorg dat de juiste kernel draait.
  3. Schaf de redundancy licentie optie aan.
  4. Zet uw firewall open voor DRBD redundancy vanaf de interface waarover u de 2 servers verbind.
  5. Schakel redudancy in met de standaard instellingen. Bij Systeem -> Redundancy
    • Indien uw systeem weinig belangijke data heeft kunt u automatische split-brain opties aanzetten.
  6. Herstart de server. Dit duurt nu veel langer doordat de 2e server nog niet geinstalleerd is.
  7. Controle: Als de server gestart is ziet u nu 2 nieuwe faciliteiten bij de monitoring: drbd en drbd-heartbeat. Beide geven een waarschuwing - dit is correct.

Aanbevelingen

  • Start de machines altijd beide op en laat ze altijd beide aan staan.
  • We raden u aan om voor de redundant connectie goede netwerk kaarten te gebruiken van het merk Intel. Goedkope kaarten worden sterk afgeraden.
  • Verbind de beide servers met elkaar via een cross-kabel.
  • Een verbinding via een switch word sterk afgeraden!
  • Verwijder deze kabel nooit meer en markeer hem desnoods.
  • Voor extra veiligheid word het aanbevolen een nullmodem kabel te installeren (zie hartslag monitoring, verder op)
  • Bij een kernel update dienen beide machines gereboot te worden: Bij de kernel manager zal het dus ook nodig zijn om 2 keer op 'Reboot met test kernel' te klikken. Pas als beide machines met de testkernel draaien kunt u deze definitief accepteren.

Stap 2: Fallback server installeren (secundaire server)

Installatie

Let op: De diskruimte van de fallback server moet exact gelijk of groter dan die van de hoofdserver. Met de backup methode van SYN-3 versie 4.4.1 of hoger is het eenvoudig een complete installatie te 'verhuizen' naar de andere, kleinere server.

Hierna start u de Syn-3 installatie CDROM op de fallback server. Controleer of het versie nummer van de CDROM compatible is:

  • U heeft SYN-3 versie 4.3.1 of lager -> gebruik installatie CDROM 4.3.1. (drbd versie 7)
  • U heeft SYN-3 versie 4.4 of hoger -> gebruik installatie CD 4.4 of hoger. (drbd versie 8)
  1. Kies bij de installer voor de optie 'SECONDARY':

2a. Heeft u de hoofdserver oorspronkelijk met een 4.1 of nieuwere installatie CD geinstalleerd en de standaard instellingen gebruikt? U kunt dan bij alle instellingen op JA en Volgende klikken, behalve de netwerk zone.

2b. Heeft u de hoofdserver oorspronkelijk met een oudere installatie CD dan 4.1 is geïnstalleerd en de standaard instellingen gebruikt? Klik op JA bij de GPT en RAID vraag, en wijzig verder het volgende: Root partition size=2G. Swap staat standaard goed. Home staat standaard goed. Space left unused=976M (of minder)

2c. Weet u niet welke instellingen u moet gebruiken? Kijk dan in de SCC bij Systeem -> Installatie instellingen. Hier ziet u de gebruikte waarden, met de afwijkende waarden extra duidelijk weergegeven:

  1. Selecteer bij de netwerk kaart dezelfde 'zone' als u op de hoofd server heeft geselecteerd:

(hier ziet u geen zone namen maar eth-nummers. kijk bij de netwerk instellingen voor deze benaming.)

Eerste synchronisatie slag

De installer zal nu doorstarten naar het Redundancy status scherm. Hier zullen de servers elkaar moeten 'zien' en zal de syncronisatie plaatsvinden.

Dit duurt een tijd, afhankelijk van de grootte van de disks en de ingestelde snelheid.

Na verloop van tijd (afhankelijk van de diskgrootte) zullen alle statussen op 'groen' staan, behalve de heartbeat en eventueel software raid.

Tijdens de eerste syncronisatie zal het booten van de machines een stuk langzamer gaan -- dit is normaal

Afronden en testen

  1. Controle:
    • De monitoring status van de drbd-faciliteit moet OK zijn en aangeven dat de syncronisatie voltooid is.
    • De monitoring status van de drbd-heartbeat geeft nog een waarschuwing en is OFFLINE.
  1. Herstart nu de hoofdserver, waardoor de fallback server up moet komen en de installatie voltooid word.
  1. Controle:
    • De fallback server word actief.
    • De hoofdserver zal nu fall-back worden en syncroniseren.
    • Alle statussen op het scherm moeten groen worden na enige tijd.
  1. Als alles goed bij 3 goed lijkt moet de fallback server nog 1x gereboot worden, zonder installatie medium. (u word hier van op de hoogte gesteld via het monitoring systeem)
  1. Controle: Zowel de drbd-faciliteit en drbd-heartbeat moeten nu OK zijn bij de monitoring. Op het status scherm van de andere node is alles groen, behalve de optionele software raid:

Uw systeem is nu redundant.

Verwijder de crosskabel nooit en start de machines altijd beide op! Dit gaat nogal eens mis tijdens verhuizingen.

SYN-3 versie 5 en hoger

SYN-3 versie 5 en hoger hebben een ander status scherm en zijn robuuster bij problemen:

Netwerk kaart toewijzing

Als u in de SCC de netwerk-kaart toewijzing veranderd, moet u de cross-link kabel ook ompluggen. Zie help/scc/network/listassignment.

Problemen met software

De meeste software zal probleemloos werken met SYN-3 redundancy, doordat de redundancy laag transparant is. De software ziet dus geen verschil en zal op beide nodes werken.

Bepaalde software kijkt echter naar de hardware om licenties bij te houden. Deze software zal op de 2e node dan ook niet werken en wellicht opnieuw geactiveerd moeten worden. Als oplossing hiervoor hebben we een speciale /etc/node directory. De inhoud van deze directory is uniek per server. Als u zorgt dat uw software hier de licenties opslaat, kunt u de software 2x registereren, met 2 verschillende licenties.

Problemen met netwerk apparatuur

Sommige netwerk apparatuur herkend niet dat de andere machine het IP overneemt. De apparatuur is dan pas na een reset weer bereikbaar.

U kunt 1 van de onderstaande oplossingen gebruiken, of u dient de server een vast mac adres te geven zoals beschreven in SynNetwork.

Zyxel routers en firewalls

Deze apparatuur heeft vaak een timeout van 300 seconden, waarna alles weer werkt. Indien u wilt dat de modem meteen weer werkt, reset deze dan.

Een andere optie is om de ip arp force on optie te gebruiken. Hoe u dit doet staat hier beschreven: http://wiki.signet.nl/index.php?title=Configuratie_en_troubleshooting_apparatuur_en_software .

Neem contact op met Zyxel voor meer informatie over ARP cache problemen.

Kernel upgrade

Het kan zijn dat een nieuwere kernel versie niet compatible is met uw versie van redundancy. Dit is bijvoorbeeld het geval wanneer u upgrade vanaf een SYN-3 versie die ouder is dan 4.4.

Als u de nieuwere kernel toch boot zult u hiervan een foutmelding krijgen en word uw systeem na 60 seconden automatisch gereboot met de oude goed werkende kernel.

Om te upgraden naar een SYN-3 versie die niet compatible is (bijvoorbeeld 4.4) volgt u 1 van deze prodecures:

Upgraden via de veilige methode

Dit is de veiligste methode die word aanbevolen voor de meeste gebruikers, maar het is hiervoor nodig om een node tijdelijk uit te zetten:

  • Zorg dat netwerk zones op beide machines gekoppeld zijn: help/scc/network/listassignment.
  • Schakel de actieve node uit.
  • Wacht totdat de backup node up komt.
  • Schakel redundancy uit.
  • Reboot uw systeem met de nieuwe kernel.
  • Uw systeem heeft nu geen redundancy meer.
  • Werkt uw kernel goed, bevestig deze dan. Zodra u redundancy geactiveerd heeft mag de vorige kernel nooit meer gestart worden!
  • Her-activeer nu redundancy op beide servers volgens de bekende procedures die op deze pagina staan.
  • De syncronisatie loopt nu en de upgrade voltooid.

Let Op: De andere node moet nu dus opnieuw geinstalleerd worden als secundairy server, met behulp van een SYN-3 4.4 installatie CD.

Experts die precies weten wat ze doen kunnen de oude node gewoon booten met de nieuwe kernel en daarbij rebuild parameter meegeven in het bootmenu.

Upgraden via de snellere methode

Deze methode is voor experts. Pas deze alleen toe als u een backup heeft en weet wat u doet:

  • Zorg dat netwerk zones op beide machines gekoppeld zijn: help/scc/network/listassignment.
  • Zorg dat de nodes gesyncroniseerd zijn.
  • Reboot de nieuwe kernel op de passieve node met het 'rebuild' kernel parameter. (Deze node reset zn metadata en blijft oneindig lang wachten)
  • Reboot hierna de nieuwe kernel op de actieve node, met het 'forceprimary' kernel parameter. (Deze node reset zn metadata en word primary)
  • Bevestig de nieuwe kernel! Als u perongeluk de oude kernel boot, raakt het systeem corrupt!
  • De syncronisatie loopt nu en de upgrade is voltooid.

Redundancy problemen

Om problemen te voorkomen mag u de crosskabel tussen de servers nooit verwijderen! Het word ook sterk afgeraden om een switch te gebruiken in plaats van een crosskabel.

Verder moet u altijd beide machines opstarten, hiermee voorkomt u syncronisatie problemen.

Connectie problemen

Als alle statussen op WfConnection blijven staan is er waarschijnlijk een firewall probleem.

Als slecht 1 status op WfConnection blijft staan kan er een probleem met de diskgrootte zijn. Dit ziet u als volgt in de dmesg:

[Syn-3] root@server.test.nl ~# dmesg | grep small
drbd1: The peers disk is too small!                                  

Als dit het geval is dient u uit te zoeken of de fallback disk minimaal dezelfde grootte heeft. Ook kan het zijn dat de partities anders geconfigureerd zijn. Bij Syn-3 versie 3.0 was de root namelijk nog 2G ipv 4G. Deze groottes kunt u opgeven bij de installer.

Indien u de fallback server opnieuw wilt opzetten, dient u de hoofdserver opnieuw op te starten. (Anders zal er geen nieuwe connectie kunnen worden gemaakt)

Beide servers tegelijk actief geweest

Als de verbinding tussen de servers weg geweest is kan het zijn dat beide machines tegelijk actief worden of tijdelijk zijn geweest. Ook kan het zijn dat beide machines afzonderlijk opgestart zijn geweest door een menselijke fout.

Indien dit het geval is, schakel dan meteen 1 van de machines uit en verhelp de eventuele oorzaak.

Indien de machines weer correct verbonden en syncroon zijn, kunt u voor de zekerheid de volgende commandos geven:

[Syn-3] root@server.nl ~# drbdsetup /dev/drbd0 invalidate_remote                     
[Syn-3] root@server.nl ~# drbdsetup /dev/drbd1 invalidate_remote                     
[Syn-3] root@server.nl ~# drbdsetup /dev/drbd2 invalidate_remote                     

Dit zorgt ervoor dat alle data opnieuw naar de backup server gestuurd word. Zo weet u 100% zeker dat de data op de andere machine klopt.

Machines weigeren samen te starten

Als de beide machines te lang tegelijk actief zijn geweest kan het zijn dat er een split brain situatie onstaat.

De machines weigeren dan om tegelijk actief te worden omdat er dan data corruptie ontstaat.

Beide machines bevatten dan verschillende data en u als beheerder dient uit te zoeken welke data gewenst is.

Dit kan door de machines 1 voor 1 te herstarten en de situatie te inspecteren. Zorg dat u de 'goede' machine uitzoekt terwijl de andere machine uit staat.

Zodra u 100% zeker bent dat de machine met de juiste data actief is, dient u de andere machine opnieuw te installeren in 'secondary' mode met de installatie CDrom. (zoals hierboven aangegeven.)

Automatische splitbrain herstelling

Vanaf SYN-3 versie 5.0 kan een split-brain automatisch hersteld worden zodat het cluster altijd boot. Let op de volgende dingen:

  • Indien er al een node primary is en u start de 2e server op, dan zullen eventuele wijzigingen op de 2e server verloren gaan.
  • Indien beide nodes tegelijk gestart worden zal de data op de node met de minste wijzigingen verloren gaan.

Deze optie is alleen aan te bevelen op machines met weinig belangrijke data, zoals firewalls.

U dienst deze optie al aan te zetten als er nog geen problemen zijn, dit kan via de control center bij de redundancy instellingen.

Hierna dienen beide nodes gerestart te worden.

Split brain herstellen

Als door bovenstaande oorzaken een Splitbrain ontstaan is, kunt u deze op de volgende manier herstellen.

Dit is alleen nodig als u geen automatische splitbrain herstelling heeft aan staan.

Passieve node herstellen

Op de node die geen belangrijke data bevat heeft u 3 herstel methoden:

Methode 1: De snelste manier

Reboot de passieve machine door de 'rebuild' optie toe te voegen in het bootmenu:

Vanaf versie 5

In versie 5 doet u dit als volgt:

  • In het bootmenu drukt u op TAB
  • Voeg aan het einde van de regel een spatie en het woord 'rebuild' toe.
  • Druk op enter.
  • Alle data word nu opnieuw gesynchroniseerd.

Versies ouder dan v5

In oudere SYN-3 versies doet u dit als volgt:

  • In het bootmenu gaat u op de 'Normal kernel' staan en drukt u op 'e'.
  • Ga op de regel met het woord 'kernel' staan en drukt u weer 'e'.
  • Voeg aan het einde van de regel een spatie en het woord 'rebuild' toe.
  • Druk op enter.
  • Druk op 'b' om daadewerkelijk te booten.
  • Alle data word nu opnieuw gesynchroniseerd.

Methode 2: Herinstallatie

Indien u methode 1 te lastig vind kunt u de passieve node opnieuw installeren als Secondary server. Dit staat aan het begin van deze pagina beschreven.

Methode 3: Zonder reboot

Als u de passieve node persee niet wilt rebooten, voert u de volgende commando's uit in het status scherm:

Normaal word aanbevolen methode 1 te gebruiken.

Hierna wacht de node en dient u de actieve node te rebooten om deze ook te herstellen.

Actieve node herstellen(verbinden)

Vanaf versie 5 zal de actieve node nu na 1 minuut automatisch herstellen. U kunt deze status zien bij Systeem -> Server redundancy.

SYN-3 versie 4.x

Nu de passieve node 'weet' dat zijn data niet meer geldig is, kan de actieve node herstelt worden: Een simpele reboot is nu genoeg.

Zit u op een live omgeving, dan zult u dit handmatig moeten doen:

We inspecteren eerst de situatie:

[Syn-3] root@demo.syn-3.nl ~# cat /proc/drbd
version: 0.7.25 (api:79/proto:74)
GIT-hash: 3a9c7c136a9af8df921b3628129dafbe212ace9f build by @darkstar.example.net, 2008-04-08 12:02:40
 0: cs:StandAlone st:Primary/Unknown ld:Consistent
    ns:0 nr:0 dw:6248 dr:3920 al:0 bm:4 lo:0 pe:0 ua:0 ap:0
 1: cs:StandAlone st:Primary/Unknown ld:Consistent
    ns:0 nr:0 dw:24508 dr:24654 al:0 bm:27 lo:0 pe:0 ua:0 ap:0
 2: cs:StandAlone st:Primary/Unknown ld:Consistent
    ns:0 nr:0 dw:78704 dr:261824 al:10 bm:99 lo:0 pe:0 ua:0 ap:0
[Syn-3] root@demo.syn-3.nl ~# dmesg |grep -i split
drbd0: Split-Brain detected, dropping connection!
....

De actieve node is gesplit en in 'standalone' mode.

Nu zoeken we de benodigde netwerk instellingen op:

[Syn-3] root@demo.syn-3.nl ~# cat /boot/drbd.conf
DRBD='1'
ETH='eth0'
LOCAL_IP='169.254.13.1'
REMOTE_IP='169.254.13.2'
RATE='10000'
[Syn-3] root@demo.syn-3.nl ~# ifconfig
....

Verbind de actieve node nu weer als volgt:

[Syn-3] root@demo.syn-3.nl ~# drbdsetup /dev/drbd0 net 169.254.13.1:7788 169.254.13.2:7788 C
[Syn-3] root@demo.syn-3.nl ~# drbdsetup /dev/drbd1 net 169.254.13.1:7789 169.254.13.2:7789 C
[Syn-3] root@demo.syn-3.nl ~# drbdsetup /dev/drbd2 net 169.254.13.1:7790 169.254.13.2:7790 C
[Syn-3] root@demo.syn-3.nl ~# cat /proc/drbd
version: 0.7.25 (api:79/proto:74)
GIT-hash: 3a9c7c136a9af8df921b3628129dafbe212ace9f build by @darkstar.example.net, 2008-04-08 12:02:40
 0: cs:Connected st:Primary/Secondary ld:Consistent
    ns:65936 nr:0 dw:6252 dr:70456 al:0 bm:9 lo:0 pe:0 ua:0 ap:0
 1: cs:PausedSyncS st:Primary/Secondary ld:Consistent
    ns:79756 nr:0 dw:27628 dr:105114 al:0 bm:31 lo:0 pe:0 ua:0 ap:0
 2: cs:SyncSource st:Primary/Secondary ld:Consistent
    ns:34200 nr:0 dw:79816 dr:296112 al:10 bm:101 lo:0 pe:23 ua:3 ap:0
        [>...................] sync'ed:  1.0% (4160200/4194304)K
        finish: 0:57:46 speed: 916 (3,408) K/sec

We zien dat alle disken weer Connected, Paused of Sync zijn, wat een goed teken is. Ook op het status scherm van de andere node ziet u deze informatie.

WfConnection en Standalone zijn dus niet goed.

Meer informatie

Alle technische details vind u op: http://www.drbd.org/

Zie SynFs voor een schema van de drbd intergratie met Syn-3.

Zie SynBoot voor het boot process.

Last modified 8 years ago Last modified on 06/01/17 12:13:03

Attachments (6)

Download all attachments as: .zip