Lorsque vous définissez un workflow LiveClone Backup and DR qui effectue un pré-nettoyage, vous pouvez choisir entre le masquage des données de confidentialité Optim ou des scripts personnalisés.
Pour les scripts personnalisés, spécifiez au moins un script de prétraitement ou de post-traitement.
- Spécifiez un script prédéfini si nécessaire. Le pré-script permet de configurer l'environnement avant le montage ou le démontage de l'application. Ce script doit résider dans un dossier nommé
/act/scriptssur le serveur qui héberge la sauvegarde montée. - Dans le champ Délai avant expiration en secondes correspondant, indiquez le temps nécessaire à l'exécution du script.
- Spécifiez un post-script si nécessaire. Post-script utilisé pour effectuer une opération sur les données après leur montage ou démontage. Ce script doit résider dans un dossier nommé
/act/scriptssur le serveur qui héberge la sauvegarde montée. - Dans le champ Délai avant expiration en secondes correspondant, indiquez le temps nécessaire à l'exécution du script.
Scripts pré et post-workflow Backup and DR
Les workflows Backup and DR montent et démontent les sauvegardes selon une programmation ou à la demande. Dans un workflow Backup and DR, vous pouvez appeler les éléments suivants :
- Script exécuté avant le montage ou le démontage d'une sauvegarde
- Script post-scriptum qui s'exécute après le montage ou le démontage d'une sauvegarde
La possibilité d'exécuter un script avant et après le montage ou le démontage des données vous permet de faire ce qui suit :
- Supprimer les informations sensibles
- Générer des rapports
- Données d'entrepôt, en particulier pour les opérations d'extraction, de transformation et de chargement (ETL)
Les scripts doivent résider dans un dossier nommé /act/scripts sur le serveur qui héberge la sauvegarde du workflow Backup and DR monté.
Variables d'environnement
Les variables d'environnement vous permettent d'appeler des commandes qui s'appliquent à des jobs, des types de jobs ou des applications spécifiques. Les variables d'environnement sont précédées du préfixe ACT_. Par exemple, une variable d'environnement pour une base de données peut se présenter comme suit :
[$ACT_APPNAME =="productiondb"]
ou une variable d'environnement pour une opération de montage peut se présenter comme suit :
[$ACT_JOBTYPE == "mount"]
Voici une liste des variables d'environnement courantes avec des exemples de valeurs :
- JOBNAME : nom du job (par exemple, Job_0123456).
- APPID : ID de l'application (par exemple, 4186).
- APPNAME : nom de l'application (par exemple, My-DB).
- HOSTNAME : nom de l'hôte qui est la cible de ce job (par exemple, Jupiter).
- SOURCEHOST : nom de l'hôte qui était la source de cette application (par exemple, Saturn).
- JOBTYPE : version textuelle de la classe de job (par exemple, "mount" ou "unmount").
- PHASE : chaîne de texte décrivant la phase du job (par exemple, "avant" ou "après").
- TIMEOUT : définit la durée du script, c'est-à-dire la durée pendant laquelle le script est autorisé à s'exécuter.
- OPTIONS : options de règles qui s'appliquent à ce job.
Exemple de script
L'exemple de script suivant utilise trois variables d'environnement :
- ACT_JOBTYPE : identifie si le job est une opération de montage ou de démontage.
- ACT_PHASE : indique si la phase est pré ou post.
ACT_MULTI_END : utilisé uniquement si une base de données et son journal sont montés. Lorsque cette valeur est "true", la base de données est dans un état où elle est accessible.
```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 $? ```