Secuencias de comandos personalizadas en la consola de administración de dispositivos

Cuando definas un flujo de trabajo de copia de seguridad y DR de LiveClone que realice una limpieza previa, puedes elegir entre el enmascaramiento de datos de privacidad de Optim o secuencias de comandos personalizadas.

En el caso de las secuencias de comandos personalizadas, especifica al menos una secuencia de comandos de preprocesamiento o posprocesamiento.

  • Especifica un pre-script según sea necesario. La secuencia de comandos previa se usa para configurar el entorno antes de montar o desmontar la aplicación. Este script debe residir en una carpeta llamada /act/scripts en el servidor que aloja la copia de seguridad montada.
  • En el campo Timeout in Seconds correspondiente, especifica el tiempo que necesita la secuencia de comandos para completarse.
  • Especifica un poscripto según sea necesario. Es la secuencia de comandos posterior que se usa para realizar una operación en los datos después de que se activan o desactivan. Este script debe residir en una carpeta llamada /act/scripts en el servidor que aloja la copia de seguridad montada.
  • En el campo Timeout in Seconds correspondiente, especifica el tiempo que necesita la secuencia de comandos para completarse.

Secuencias de comandos previas y posteriores del flujo de trabajo de Backup and DR

Los flujos de trabajo de Backup and DR activan y desactivan las copias de seguridad según una programación o a pedido. En un flujo de trabajo de Backup and DR, puedes llamar a lo siguiente:

  • Es una secuencia de comandos previa que se ejecuta antes de que se monte o desmonte una copia de seguridad.
  • Es una secuencia de comandos posterior que se ejecuta después de que se activa o desactiva una copia de seguridad.

La capacidad de ejecutar una secuencia de comandos antes y después de que se activen o desactiven los datos te permite hacer lo siguiente:

  • Cómo borrar información sensible
  • Genera informes
  • Datos del almacén, en especial para las operaciones de extracción, transformación y carga (ETL)

Las secuencias de comandos deben residir en una carpeta llamada /act/scripts en el servidor que aloja la copia de seguridad del flujo de trabajo de Backup and DR montado.

Variables de entorno

Las variables de entorno te permiten invocar comandos que se aplican a trabajos, tipos de trabajos o aplicaciones específicos. Las variables de entorno tienen el prefijo ACT_. Por ejemplo, una variable de entorno para una base de datos podría verse de la siguiente manera:

    [$ACT_APPNAME =="productiondb"]

o una variable de entorno para una operación de montaje podría verse de la siguiente manera:

    [$ACT_JOBTYPE == "mount"]

A continuación, se incluye una lista de variables de entorno comunes con valores de muestra:

  • JOBNAME: Es el nombre del trabajo, por ejemplo, Job_0123456.
  • APPID: Es el ID de la aplicación, por ejemplo, 4186.
  • APPNAME: Nombre de la aplicación, por ejemplo, My-DB.
  • HOSTNAME: Es el nombre del host que es el destino de este trabajo, por ejemplo, Jupiter.
  • SOURCEHOST: Es el nombre del host que fue la fuente de esta aplicación, por ejemplo, Saturn.
  • JOBTYPE: Es una versión de texto de la clase de trabajo, por ejemplo, montaje o desmontaje.
  • PHASE: Es una cadena de texto que describe la fase del trabajo, por ejemplo, previa o posterior.
  • TIMEOUT: Define la duración de la secuencia de comandos, es decir, el tiempo que se le permite ejecutarse.
  • OPTIONS: Son las opciones de política que se aplican a este trabajo.

Ejemplo de secuencia de comandos

En el siguiente ejemplo de secuencia de comandos, se usan tres variables de entorno:

  • ACT_JOBTYPE: Identifica si el trabajo es una operación de montaje o desmontaje.
  • ACT_PHASE: Identifica si la fase es previa o posterior.
  • ACT_MULTI_END: Se usa solo si se activan una base de datos y su registro. Cuando es verdadero, la base de datos está en un estado en el que se puede acceder a ella.

    ```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 $?
    ```