Parallelisierung von NDMP Backups
Verfasst von Uwe W. Schäfer am 25. Oktober 2019
Automatische Generierung von NDMP SaveSet Namen
Ein Kunde hatte das Problem, dass die Sicherungszeit eines NetApp-Volumes mit ca. 40 TB Größe, mehrere Tage betrug. Außerdem waren die Wiederherstellungszeiten für einzelne Dateien aus diesen Sicherungen inakzeptabel.
Eine einfache Parallelisierung der Verzeichnisse von Hand war leider nicht möglich, da sich bereits auf der obersten Verzeichnisebene mehr als 8000 Unterverzeichnisse befanden. Erschwerend kam hinzu, dass jederzeit auch neue Unterverzeichnisse von den Fachabteilungen angelegt werden können. Diese müssen natürlich auch bei der nächsten anstehenden Sicherung mitgesichert werden.
Es stellte sich folglich das Problem: wie kann man die Sicherung des Volumes parallelisieren, ohne Gefahr zu laufen, neu angelegte Verzeichnisse nicht zu sichern.
Die Lösung bestand in der Programmierung eines Python-Skriptes, das mit Hilfe der Schäfer & Tobies eigenen NetApp-Ontapi-Python Schnittstelle und dem NetWorker-REST-API, täglich die NetWorker Client-Ressourcen automatisiert neu generiert.
Das Skript liest hierzu zunächst alle Unterverzeichnisnamen des Volumes per API aus und verteilt die erhaltenen Namen anhand einer Konfigurationstabelle und den Anfangsbuchstaben auf „n“ definierte NetWorker-Client-Ressourcen. Jede dieser NetWorker Client-Ressourcen verwendet einen eigenen Schedule, so dass auch eine Verteilung der Vollsicherungen über die Wochentage erfolgt.
Das Ergebnis konnte sich sehen lassen, die Sicherungszeiten waren wieder im vertretbaren Rahmen (unter 24 Stunden) und auch die Wiederherstellungszeiten sind um ein vielfaches schneller als zuvor.
Sollten Sie ein ähnliches Problem in ihrer Sicherungsumgebung haben, so scheuen Sie sich nicht, den Autor zu kontaktieren. Eine automatisierte und damit sichere Generierung der NetWorker-Ressourcen garantiert auch Ihnen, dass ihre wichtigen Daten immer in der aktuellen Sicherung enthalten sind. Der Aufwand für die Erstellung der benötigten Skripte hält sich in überschaubaren Grenzen und sollte damit auch für ihre Firma erschwinglich sein.
NetWorker REST-API
Verfasst von Uwe W. Schäfer am 22. Juli 2016
Die NetWorker Version 9.0.1 hat als wesentliche Änderung ein REST-API erhalten. Diese mittels HTTPS erreichbare Programmschnittstelle wird vom NetWorker eigenen Authorisation-Server über dessen TCP-Port zur Verfügung gestellt. Diese Schnittstelle bietet nun die Möglichkeit, von jedem beliebigen Rechner (auch nicht NetWorker-Instanz) Abfragen zu stellen, Ressourcen zu generieren aber auch Workflows zu starten. Hierzu bedarf es allerdings der Kenntnis einer NetWorker-Administrator Kennung nebst dessen Passwort.
EMC hat für die REST-API Schnittstelle 2 neue Handbücher herausgegeben
-
docu71091_NetWorker-9.0.1-REST-API-Getting-Started-Guide.pdf
-
docu71092_NetWorker-9.0.1-REST-API-Reference-Guide.pdf
Nur leider sind beide nicht besonders selbst erklärend.
Ich habe nun einige Stunden in das Thema investiert und konnte schon mal die Funktionalität des alten „savegroup -v“ Kommandos nach-implementieren. Auch eine erste Version eines Kommandos zur nachträglichen Erzeugung einer ASCII-Completion-Message ist entstanden (zu den beiden Tools wird es in kürze einen eigenen Blog geben).
Beide Tools können Sie von uns erhalten, schreiben Sie einfach eine Mail an den Autor.
Oder sie besuchen einer der nächsten NSR9-Workshops im Hause qSkills. Hier können sie selbst einen tiefereren Einblick in die API Schnittstelle erhalten und die beiden Tools (nsr_api_start_workflow und nsr_api_get_jobinfo) live ausprobieren.
Fazit:
Die neue NetWorker REST-API Schnitstelle ermöglicht es mit jeder Programmiersprache die Konfiguration von NetWorker Ressourcen in beliebige Abläufe zu integrieren. Wenn auch die Schnittstelle etwas gewöhnungsbedürftig ist, steht einer Automatisierung der Backup Tätigkeiten auch mit NetWorker 9 jetzt nichts mehr im Wege!
Sollten sie einen Bedarf nach einem Automatisierungsskript haben und keinen eigenen Programmierer zur Hand, so scheuen sie sich bitte nicht den Autor, zu kontaktieren.