Login Registrieren

NetWorker REST-API Tools

Verfasst von Uwe W. Schäfer am 9. August 2016

Wie bereits im letzten Blog beschrieben hat die NetWorker Version 9.0.1 ein REST-API erhalten. Dieses ermöglicht es nun NetWorker aus einer beliebigen Umgebung heraus zu Administrieren und zu Verwalten.

NetWorker konnte man bis zur Version 9 über sein Commad-Line-Interface (CLI) automatisieren und ihn so in jeden beliebigen externen Scheduler oder Batch-Job integrieren. Leider sind diese Möglichkeiten durch die im NetWorker 9 eingeführten Policys weitestgehend entfallen. Kunden, die den NetWorker wie bisher über ein externes Programm automatisieren möchten sind somit gezwungen, ihre Routinen auf die neue REST-API-Schnittstelle umzustellen.
NetWorker liefert hierbei aber eben nur die Schnittstelle, die Implementierung der gewünschten Funktionalitäten ist dem Anwender selber überlassen. Da dieses Unterfangen (Implementierung über REST-API) einen normalen Backup-Administrator meist überfordert, haben wir versucht zwei wesentliche Funktionen, Start einer Sicherung und Ermitteln des Sicherungsstatus, als fertige Kommandos zu implementieren. Diese Kommandos sind freilich nur Beispiele und sollen mehr oder weniger nur die Möglichkeiten der REST-API-Schnittstelle beispielhaft aufzeigen.

Die Kommandos:

nsr_api_start_workflow

Start eines NetWorker Workflows.

Usage:

nsr_api_start_workflow -i
nsr_api_start_workflow -a 
nsr_api_start_workflow -s <nsr-srv> [-v]* [-u <user>] [-p <password>] 
-n <policy-name> -w <workflow> [-c <client>]* -i interactive; Ask for all parameters -a active; Parameters are defined in the 'local_defines.py' file -n Policy name -w workflow name -c start only this client from workflow-group -v verbose; Wait till the job finishes!

 

nsr_api_get_jobinfo

Ermitteln des aktuellen Status eines zuvor gestarteten Workflows.

Usage:

nsr_api_get_jobinfo -i [--wait] <workflow-jobid> 
nsr_api_get_jobinfo [-a] [--wait] <workflow-jobid>
nsr_api_get_jobinfo -s <nsr-srv> [-u <user>] [-p <password>] [--wait] <jobid> 
 
  -i      interactive; Ask for all parameters

  -a      active; Default: Parameters are defined in the 'local_defines.py' file

Common parameters:

  --wait  Job waits until all dependend jobs and the workflow job are finished

~

Da die Ausführung der Kommandos eine relativ aktuelle SSL Umgebung benötigt, die noch nicht mal auf einem SuSE SLES 12.0 standardmäßig gegeben ist, haben wir uns dazu entschlossen, die Kommandos als fertige Pakete mit binär ausführbaren Dateien und nicht als Skripte zur Verfügung zu stellen. Die zurzeit existierenden Pakete sind ausführbar auf einem Windows x64 System (ab Windows7) oder einem Linux System mit einer GLIBC_2.14 oder neuer. Letzteres ist zum Beispiel auf einem SuSE-SLES 12.x oder einem Ubuntu 14.04 gegeben.

Die vollständige Dokumentation mit Installationsanleitung können sie hier herunterladen, die Pakete für Windows und Linux erhalten sie auf Anfrage beim Autor.

Sollten sie ein ähnliches NetWorker Automatisierungsprogramm benötigen, scheuen sie sich bitte nicht den Autor zu kontaktieren. Wir können ihnen bestimmt weiter helfen.