Wenn Sie einen LiveClone-Sicherungs- und Notfallwiederherstellungs-Workflow mit Vorab-Scrubbing definieren, können Sie zwischen der Datenschutzmaskierung von Optim oder benutzerdefinierten Scripts auswählen.
Geben Sie für benutzerdefinierte Scripts mindestens ein Pre- oder Post-Processing-Script an.
- Geben Sie nach Bedarf ein Pre-Script an. Mit dem Vorab-Script wird die Umgebung konfiguriert, bevor die Anwendung bereitgestellt oder getrennt wird. Dieses Script muss sich auf dem Server, auf dem das bereitgestellte Image gehostet wird, in einem Ordner mit dem Namen
/act/scripts
befinden. - Geben Sie im entsprechenden Feld Zeitlimit in Sekunden die Zeit an, die für die Ausführung des Scripts erforderlich ist.
- Geben Sie nach Bedarf ein Post-Script an. Das Post-Script wird verwendet, um eine Aktion auf die Daten auszuführen, nachdem sie bereitgestellt oder getrennt wurden. Dieses Script muss sich auf dem Server, auf dem das bereitgestellte Image gehostet wird, in einem Ordner mit dem Namen
/act/scripts
befinden. - Geben Sie im entsprechenden Feld Zeitlimit in Sekunden die Zeit an, die für die Ausführung des Scripts erforderlich ist.
Pre- und Post-Scripts für den Sicherungs- und Notfallwiederherstellungs-Workflow
Backup- und Notfallwiederherstellungs-Workflows stellen Sicherungs-Images gemäß einem Zeitplan oder bei Bedarf bereit und trennen sie wieder. In einem Sicherungs- und Notfallwiederherstellungs-Workflow können Sie Folgendes aufrufen:
- Ein Pre-Script, das ausgeführt wird, bevor ein Image bereitgestellt oder getrennt wird
- Ein Postscript, das nach dem Bereitstellen oder Trennen eines Images ausgeführt wird
Wenn Sie ein Script vor und nach dem Bereitstellen oder Trennen von Daten ausführen können, haben Sie folgende Möglichkeiten:
- Suche nach sensiblen Informationen
- Berichte erstellen
- Warehouse-Daten, insbesondere für ETL-Vorgänge (Extrahieren, Transformieren, Laden)
Die Scripts müssen sich auf dem Server, auf dem das bereitgestellte Image für den Sicherungs- und Notfallwiederherstellungs-Workflow gehostet wird, in einem Ordner mit dem Namen /act/scripts
befinden.
Umgebungsvariablen
Mit Umgebungsvariablen können Sie Befehle aufrufen, die für bestimmte Jobs, Jobtypen oder Anwendungen gelten. Umgebungsvariablen haben das Präfix ACT_
. Eine Umgebungsvariable für eine Datenbank könnte beispielsweise so aussehen:
[$ACT_APPNAME =="productiondb"]
Eine Umgebungsvariable für einen Bereitstellungsvorgang könnte so aussehen:
[$ACT_JOBTYPE == "mount"]
Im Folgenden finden Sie eine Liste gängiger Umgebungsvariablen mit Beispielwerten:
- JOBNAME: Der Name des Jobs, z. B. Job_0123456.
- APPID: Die ID der Anwendung, z. B. 4186.
- APPNAME: Name der Anwendung, z. B. „Meine-DB“.
- HOSTNAME: Der Name des Hosts, der das Ziel dieses Jobs ist, z. B. „Jupiter“.
- SOURCEHOST: Der Name des Hosts, der die Quelle für diese Anwendung war, z. B. Saturn.
- JOBTYPE: Eine Textversion der Jobklasse, z. B. „mount“ oder „unmount“.
- PHASE: Ein Textstring, der die Phase des Jobs beschreibt, z. B. „vor“ oder „nach“.
- TIMEOUT: Hiermit wird die Dauer des Scripts festgelegt, also wie lange das Script ausgeführt werden darf.
- OPTIONEN: Richtlinienoptionen, die für diesen Job gelten.
Beispielskript
Im folgenden Scriptbeispiel werden drei Umgebungsvariablen verwendet:
- ACT_JOBTYPE: Gibt an, ob es sich bei dem Job um einen Bereitstellungs- oder einen Bereitstellungsauflösungsvorgang handelt.
- ACT_PHASE: Gibt an, ob es sich um die Vor- oder die Nachbereitung handelt.
ACT_MULTI_END: Wird nur verwendet, wenn sowohl eine Datenbank als auch ihr Protokoll bereitgestellt sind. In diesem Fall ist die Datenbank in einem Zustand, in dem auf sie zugegriffen werden kann.
```sh #!/bin/sh set +x echo "*** Running user script: Job - $ACT_JOBNAME Type - $ACT_JOBTYPE Phase - $ACT_PHASE***" #Use the first if clause to perform application specific operations during mount and in this example scrub-mount operation. #Use the second if clause to perform any application specific operation during unmount and in this example, #scrub-unmount operation. #if [[ $ACT_JOBTYPE == "mount" ]] || [[ $ACT_JOBTYPE == "scrub-mount" ]]; then if [[ $ACT_JOBTYPE == "unmount" ]] || [[ $ACT_JOBTYPE == "scrub-unmount" ]]; then echo "NO-OP for job type $ACT_JOBTYPE" exit 0 fi #Use the first if clause to perform application specific operations during the pre phase. #Use the second if clause to perform application specific operations during the post phase. #if [[ $ACT_PHASE == "post" ]]; then if [[ $ACT_PHASE == "pre" ]]; then echo "NO-OP for phase $ACT_PHASE" exit 0 fi #For multi-phase jobs (database and logs) check if the database has been mounted and the logs applied then #skip logs. #If the operation needs to be performed in phases other than the last phase, modify the clause. if [[ -z "$ACT_MULTI_END" ]] && [[ $ACT_MULTI_END != "true" ]]; then echo "NO-OP for multi-phase operation" exit 0 fi cd /act/scripts echo "**** Running application specific logic: Job - $ACT_JOBNAME Type - $ACT_JOBTYPE Phase - $ACT_PHASE *" Any application specific commands will go here echo "** Finished running application specific logic : Job - $ACT_JOBNAME Type - $ACT_JOBTYPE Phase - $ACT_PHASE*" exit $? ```