Direct naar content

Van Highway to Hell naar succes ofwel hoe we een complexe HADR-implementatie tot een goed einde brachten

Harry Splinter, senior Database Reliability Engineer bij OptimaData, werkt al jaren met de meest uitdagende database-omgevingen. Toen een klant hulp vroeg bij de implementatie van SAP HADR (High Availability Disaster Recovery), leek het aanvankelijk een rechttoe rechtaan project. Maar zoals vaker in de databasewereld, bleek de praktijk weerbarstiger dan verwacht. In deze blog deelt Harry zijn ervaringen met een implementatie die van een ‘nice journey’ veranderde in een echte ‘Highway to Hell’ – en hoe vakmanschap en doorzettingsvermogen uiteindelijk tot succes leidden.

Harry Splinter

DBA Consultant en Senior Database Reliability Engineer
Harry Splinter - DBA Consultant en Senior Database Reliability Engineer
Van Highway to Hell naar succes ofwel hoe we een complexe HADR-implementatie tot een goed einde brachten

Wat is HADR eigenlijk?

Laat ik beginnen met een belangrijke nuance: SAP HADR is niet wat de meeste DBA’s ervan denken. Het is geen SQL Server Always On, hoewel ze decennia geleden uit dezelfde bron zijn ontstaan. HADR is een verzameling SAP-software en -tools: Adaptive Server Enterprise, SAP Replication Server, SAPHostcontrol, Replication Agent Manager en SAP Faultmanager. Oorspronkelijk ontwikkeld op Linux en later geporteerd naar Windows.

En daar begon meteen ons eerste obstakel.

Windows was niet de juiste keuze

Voor dit project koos de klant voor Windows als besturingssysteem, om hun eigen moverende redenen. Achteraf gezien bleek dit niet de meest handige keuze te zijn geweest. In plaats van Linux – het native besturingssysteem voor deze functionaliteit – werd er gekozen voor een platform dat nog niet helemaal klaar was voor deze uitdaging.

Al snel ontdekten we dat documentatie en software niet ‘compleet’ waren. Ik hoorde bijna de stem van Emperor Palpatine uit Star Wars in mijn achterhoofd: “Your journey towards the dark side is complete.”

Documentatie? Welke documentatie?

De documentatie miste Windows-commando’s en configuratie-voorbeelden. We moesten rechtstreeks contact opnemen met SAP voor informatie, maar het meeste was bedoeld voor Linux. De ‘vertaling’ naar Windows moesten we zelf maken. SAP was zeer behulpzaam – daar alle credits voor – maar het was niet wat we hadden verwacht.

Geleidelijk zagen we veranderingen in de online documentatie verschijnen. Een duidelijk teken van ‘work in progress’. Commando’s die SAP ons gaf, waren in eerste instantie nergens te vinden in de SAP4Me online documentatie. Later zagen we ze ineens opduiken in de documentatie. “Could it be magic?” zoals Barry Manilow ooit zong.

De software deed wat het moest, maar…

Hoewel de software deed wat het beloofde, was dit product ontwikkeld met een heel andere mindset dan de omgeving waar we mee te maken hadden. HADR was meer ontwikkeld voor single database-omgevingen dan voor multi-database set-ups.

Met replicatie ontdekten we dat bestaande code niet voldeed. Bepaalde instellingen moesten worden geïntroduceerd om het weer werkend te krijgen en veel procedures moesten worden herschreven. Dit was niet te wijten aan HADR zelf, maar aan programmeerwerk van ontwikkelaars die geen rekening hadden gehouden met replicatie. “Don’t you forget about me“, zoals Simple Minds zou zeggen – maar blijkbaar waren ze dat wel vergeten.

Materialisatie: de snelle weg is de langzame weg

Bij het opzetten van HADR moet elke database worden gematerialiseerd naar de Companion-server. De eenvoudige manier is de langzame methode. Het kan worden versneld, maar vereist handmatige interventie en maatwerk programmering.

Hoofdletters of kleine letters? Kies maar één

Windows is standaard niet hoofdlettergevoelig. SAP HADR wel. Conclusie: alles moet in hoofdletters of kleine letters, en dan bedoel ik ook echt ALLES. sql.ini, interfaces, configuratie- en profielbestanden, noem maar op. Zoals Yazz in 1988 zong: “The only way is up” – in dit geval letterlijk naar hoofdletters (of kleine letters, dus).

Het sapadm-probleem

En laten we het nog eens hebben over het sapadm-account. Iets anders dan waar de Salt-N-Pepa het over hadden in de jaren 80, maar het moet wel besproken. Dit cruciale lokale Windows-account moet administrator-rechten hebben en hetzelfde wachtwoord op alle betrokken servers. Voor zover de beveiliging, maar we willen wel dat het werkt, toch?

En Active Directory? Mijn advies: don’t. Wanneer het AD\sapadm-account om welke reden dan ook wordt vergrendeld, krijg je problemen. HADR werkt dan niet meer omdat dit het account is dat wordt gebruikt voor wijzigingen in de omgeving.

De Linux-test: bijna alles viel op zijn plek

“However” (met de stem van Jeremy Clarkson van Top Gear), we testten deze HADR-oplossing ook op Linux en bijna alle bovengenoemde uitdagingen verdwenen als sneeuw voor de zon. Daarom adviseren we altijd: gebruik software in zijn native besturingssysteem-omgeving met bewezen technologie.

Van highway to hell naar succes

Ondanks alle obstakels hebben we dit project tot een goed einde gebracht. Het vereiste veel extra werk, creatieve oplossingen en direct contact met SAP, maar uiteindelijk draait de HADR-oplossing stabiel en betrouwbaar.

Dit project illustreert perfect wat OptimaData onderscheidt: we lossen ook de complexste database-uitdagingen op, zelfs wanneer standaard documentatie en best practices niet toereikend zijn. Met vakmanschap, doorzettingsvermogen en een gezonde dosis creativiteit maken we van elke ‘highway to hell’ uiteindelijk een succesverhaal.

Noot van de auteur

Mijn brein roept tijdens het schrijven van dit artikel liedjes en stemmen op, helemaal vanzelf. Dat gebeurt altijd wanneer ik iets doe waar ik gepassioneerd over ben – en database-uitdagingen behoren daar zeker toe.

Complete afspeellijst van de genoemde nummers

Afspeellijst opent in nieuw tabblad

Meer weten?

Ben je nieuwsgierig naar complexe database-implementaties en hoe wij ze aanpakken? Bij OptimaData hebben we de expertise om ook de lastigste puzzels op te lossen. Neem gerust contact met ons op.