= 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. 1. Schaf de redundancy licentie optie aan. 1. Zet uw firewall open voor DRBD redundancy vanaf de interface waarover u de 2 servers verbind. 1. Schakel redudancy in met de standaard instellingen. 1. Herstart de server (dit duurt langer doordat de 2e server nog niet geinstalleerd is) == Stap 2: Connectie aanbevelingen == 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 server 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) == Stap 3: Fallback server (secundaire server) == Hierna start u de Syn-3 installatie CDROM op de fallback server. 1. Kies bij de installer voor de optie 'SECONDARY': [[Image(redundanyinstall1.png)]] 2a. Indien de hoofdserver met een 4.1 installatie CD geinstalleerd was kunt u bij alle disk en partitie-instellingen op enter drukken. 2b. Indien de hoofdserver met een oudere installatie CD dan 4.1 is geïnstalleerd wijzigt u de volgende instellingen: ''Root partition size''=2G. ''Swap'' staat standaard goed. ''Home'' staat standaard goed. ''Space left unused''=976M (of minder) 3. Selecteer bij de netwerk kaart dezelfde 'zone' als u op de hoofd server heeft geselecteerd: [[Image(redundanyinstall2.png)]] (hier ziet u geen zone namen maar eth-nummers. kijk bij de netwerk instellingen voor deze benaming.) 4. De installer zal nu doorstarten naar het Redundancy status scherm. Hier zullen de servers elkaar moeten 'zien' en zal de syncronisatie plaatsvinden. Het uiteindelijke resultaat zal zijn dat alles groen is: (op eventueel software raid na, als u dit niet gebruikt) [[Image(redundancysync.png)]] 5. Na verloop van tijd (afhankelijk van de diskgrootte) zullen alle statussen op 'groen' staan. 6. Herstart nu de hoofdserver, waardoor de fallback server up moet komen en de installatie voltooid word. 7. Bij versie 4.2 of hoger: Na het voltooien van de installatie zal de fallback server automatisch rebooten. De CD-Rom kan verwijderd worden en het systeem kan nu vanaf de harddisk booten. Bij oudere versies dient u deze reboot-stap handmatig te doen. (u word hier van op de hoogte gesteld via het monitoring systeem) Uw systeem is nu redundant. Om terug te schakelen naar de hoofdserver kunt u simpelweg de fallback server herstarten. '''Verwijder de crosskabel nooit en start de machines altijd beide op! Dit gaat nogal eens mis tijdens verhuizingen.''' = Hartslag monitoring = Vanaf versie 4.2 bevat Syn-3 ook monitoring via een ''seriele null-modem kabel'' als mede alle netwerk verbindingen. Hierdoor word de kans op het tegelijkertijd booten van 2 servers in geval van bijvoorbeeld een netwerk storing nihil. De status van de hartslag zal ook weergegeven worden via Syn-3 monitoring. Op de secundaire server worden de ontvangen hartslagen weergegeven op het status scherm. Zie ook SynDog. = Bekende 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.) = Handmatig een split brain herstellen = Op live omgevingen is het soms niet gewenst om machines te herstarten om de situatie te herstellen. Geadvanceerde linux gebruikers kunnen als volgt te werk gaan. == Passieve node herstellen == De node die '''geen''' belangrijke data installeert u opnieuw als secondary, OF u voert u de volgende commando's uit in het status scherm: [[Image(drbdinvalidate.png)]] == Actieve node herstellen == Nu de passieve node 'weet' dat zijn data niet meer geldig is, kan de actieve node herstelt worden. Een simpele reboot is nu genoeg, maar op een live omgeving 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.2:7788 169.254.13.1:7788 C [Syn-3] root@demo.syn-3.nl ~# drbdsetup /dev/drbd1 net 169.254.13.2:7789 169.254.13.1:7789 C [Syn-3] root@demo.syn-3.nl ~# drbdsetup /dev/drbd2 net 169.254.13.2:7790 169.254.13.1: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.