Spectrum storage back-up van DB2 instances - Technical Fact
Welkom bij onze technical fact reeks, waar we ons richten op het implementeren van efficiënte oplossingen die op maat gemaakt worden voor onze klanten. In deze editie zullen we ons concentreren op het installeren van een Spectrum Storage (voorheen Spectrum Protect) back-upclient op AIX servers die IBM DB2 database instances gaat back-uppen.
Situering case
Gegevensbeveiliging is cruciaal voor elke IT-infrastructuur. Een goede back-up oplossing is daarom essentieel om de continuïteit van je bedrijf te waarborgen en dataverlies bij problemen te minimaliseren.
Binnen deze case stonden we voor de uitdaging om de RPO en RTO wensen van onze klant te vertalen naar een technische invulling met DB2 en Spectrum Storage. De back-up behoefte van onze klant omvatte meerdere timeframes: een back-up per uur, dagelijkse incrementele back-ups, wekelijkse volledige back-ups, en kwartaal- en jaarback-ups, elk met hun eigen retentiebeleid. Gezien de DB2-component van onze klant maar beperkt configureerbaar was en niet voldeed aan het gewenste back-up beleid, moesten we op zoek naar een passende oplossing.
Oplossing Core ICT
Bij de uitwerking van onze oplossing gebruikten we het Redhat besturingssysteem voor de Spectrum Storage server en AIX voor de servers waarop de DB2 instances en Spectrum Storage clients draaien. Op elke AIX-server draaien meerdere DB2 instances, welke verdeeld werden over aparte nodes. Naar aanleiding hiervan moesten we in Spectrum Storage verschillende ‘opt files’ gebruiken. Meer over deze ‘opt files’ lichten we later in onze blogpost toe.
De set-up van deze omgeving vereiste een nauwkeurige aanpak, met specifieke aandacht voor volgende punten:
- Het scheiden van data van verschillende instances op afzonderlijke nodes op de back-up server.
- Het instellen van aparte nodes op de back-up server voor elke DB2-instance, om verschillende retentievereisten voor de gegevens te kunnen accommoderen en dit met de juiste retentie-instellingen.
- Voor elke node die wordt gebruikt in Spectrum Storage moet er op de client (de AIX-server) een passende ‘opt file’ aanwezig zijn, samen met een aantal logboek-/scriptbestanden die moeten worden uitgevoerd volgens een vastgesteld schema.
- Elke DB2-instance moet een eigen gebruikersaccount hebben op het besturingssysteem, wat geen toegang heeft tot andere instances. Dit principe moet ook worden toegepast in de back-up configuratie.
- Elke DB2-instance maakt gebruik van een enkele parameter die naar een specifieke ‘opt file’ verwijst voor de configuratie van zijn back-ups. Deze parameter kan niet worden gewijzigd wanneer de instance actief is. Om een ‘opt file’ met een andere naam te gebruiken, moet de gehele DB2-instance dus worden uitgeschakeld.
- Een DB2-instance stuurt al zijn back-ups naar de node waar de actieve opt-file-parameter naar verwijst. Daarom is het essentieel om ervoor te zorgen dat deze parameter altijd correct wordt bijgewerkt. Anders bestaat het risico dat gegevens bijvoorbeeld van een jaarlijkse back-up per ongeluk in de node belanden die is geconfigureerd voor maandelijkse back-ups.
Hieronder gaan we iets dieper in op de uitwerking van de set-up, rekening houdende met bovenstaande zaken.
Wat zijn 'opt files' en wat doen ze?
Een ‘opt file’, ofwel ‘optiebestand’, is een essentieel onderdeel van de configuratie van de Spectrum Storage back-upclient. Dit bestand documenteert de instellingen voor de verwijzing naar de Spectrum Storage server en specifieert de node waar back-ups worden opgeslagen op de back-upserver. De ‘opt file’ bevat dus de naam van de node waarin de back-ups geplaatst worden in de back-up server.
Aangezien we meerdere instances per client server gebruikten, maakten we voor elke instance een bijhorende ‘opt file’ aan.
Voorbeeld:
We hebben op onze AIX server volgende DB2 instances:
- Tes
- Tas
- Tos
Van elke instance willen we volgende back-ups nemen:
- Dagelijks
- Wekelijks
- Per kwartaal
- Jaarlijks
Dit betekent dat we in totaal twaalf verschillende opt files maakten, welke dan ook verwijzen naar hun eigen node die in de TSM-server is aangemaakt.
- AIX1_DB2_TOS_DAGELIJKS
- AIX1_DB2_TOS_KWARTAALLIJKS
Opsplitsing van verbindingen
De ‘opt files’ zorgen ervoor dat de verbindingen naar de Spectrum Storage back-up server worden gescheiden. Om deze opsplitsingen te kunnen gebruiken, werkten we met symbolische links in het AIX systeem. Een symbolische link is een tijdelijke verwijzing tussen twee files. De hoofdfile neemt in dit geval de inhoud over van de tijdelijke opt file. Dit is nodig omdat een draaiende DB2 instance steeds Spectrum Storage aanroept via de actief geconfigureerde ‘dsm.opt’ file. Om deze reden voerden we de symbolische link aan het begin van ons automatisch back-up script uit. Dit zorgt ervoor dat we steeds de juiste ‘opt file’ gebruiken om de back-up weg te schrijven naar de juiste node op de Spectrum Storage server.
Vervolgens worden niet enkel de opt files gebruikt voor een correcte connectie met de Spectrum Storage server, maar ook de dsm.sys. De dsm.sys is een van de belangrijkste. Deze definieert namelijk de:
- serverdefinities
- communicatie settings
- server-specific configuraties
- logging en error handling
We moesten al deze specifieke verwijzingen aanmaken, net zoals hun eigen errors en logging bestanden. Éen van de hoofdredenen hiervoor was vooral gericht op veiligheid. Deze opdeling zorgt er namelijk voor dat de instances nooit elkaars bestanden konden verstoren, wat een veilige afscheiding garandeert.
Om ervoor te zorgen dat alle back-ups automatisch konden verlopen maakten we op de Spectrum Storage server een planning op. Deze planning koppelden we aan de verschillende nodes, zodat deze wisten wanneer een back-up moet plaatsvinden. De planning omvat een specifiek starttijdstip voor de back-up en een commando dat omschrijft welke back-up op dat moment mag worden uitgevoerd. Dit commando verwijst naar een shell-bestand dat een symbolische link maakt, zodat de verwijzing voor het back-up commando correct staat gedefinieerd. Vervolgens voert dit shell bestand het DB2 back-up commando uit en schrijft de timestamp weg samen met de uitgangscode van het back-up commando. Al deze informatie is nodig om een restore te kunnen uitvoeren.
De Spectrum Storage client gebruikt standaard twee bestanden per node om informatie op te slaan:
- DSM-error: Dit bestand slaat alle foutmeldingen en logs op die optreden tijdens de back-up. Dit bestand kan je vervolgens gebruiken om te troubleshooten.
- DSM-sched: Dit bestand registreert alle communicatie met de DSM-cad service, inclusief de planning van volgende back-ups en details van reeds uitgevoerde back-ups (vb. startpunt en finalisatie).
Automatisch opstarten van dsmcad service
Zoals eerder vermeld, maakten we voor elke instance een planning en verschillende opt files. Om dit soepel te laten verlopen, maakten we gebruik van de CAD-service op de client AIX-systemen. Deze service communiceert continue met de Spectrum Storage service om de planningsinformatie te ontvangen. Dit zorgt ervoor dat de back-ups op het juiste moment starten en dat het bijhorende commando wordt uitgevoerd.
Wanneer de AIX server herstart wordt, wordt deze service niet automatisch ingeschakeld. Om dit op te lossen hebben we een lijn toegevoegd aan de inittab om de DSM-cad services op te starten. Zo verzekeren we dat de client altijd kan communiceren met de scheduler en dat back-ups op de juiste tijdstippen worden uitgevoerd.
Gebruikers security
Elke DB2 instance heeft een eigen gebruiker op het systeem. Deze gebruiker heeft zijn eigen file-syteem waarop de DB2 database aanwezig is. Bovendien hebben al deze gebruikers toegang nodig tot hun persoonlijke nodes op de Spectrum Storage back-up server.
Voor de authenticatie op het AIX-systeem gebruiken we het interne rechten systeem om de toegang te regelen. Elke instance-gebruiker heeft enkel toegang tot zijn eigen bestanden die niet toegankelijk zijn voor de andere gebruikers. Bestanden die voor alle instance-gebruikers leesbaar moeten zijn, worden beheerd via een authenticatiegroep waarin alle instance-gebruikers zijn opgenomen.
Voor de Spectrum Storage authenticatie moet vanaf de client een initiële verbinding worden gemaakt met elke node, waarbij het correcte wachtwoord wordt ingesteld. Spectrum Storage maakt hiervoor gebruik van het DSM-apipw-script, welke uitgevoerd wordt door de instance-gebruiker. Enkel deze instance-gebruiker heeft dan toegang om verbinding te maken met de Spectrum Storage node. Als een andere gebruiker verbinding probeert te maken met deze node, zal hij meteen om de juiste authenticatie worden gevraagd in plaats van automatisch verbinding te maken.
Conclusie
Door een zorgvuldige implementatie van Spectrum Storage back-upclients met specifieke opt-files en configuraties, dit in combinatie met geavanceerde gebruikers- en systeembeveiliging, kunnen we voldoen aan de complexe back-upvereisten van onze klant. Deze aanpak minimaliseert dataverlies en garandeert bedrijfscontinuiteit door betrouwbare back-up en restore-processen voor DB2-instances te bieden.
Bots je zelf op een probleem waar je niet mee verder raakt? Contacteer ons! We zoeken graag naar een oplossing voor je!