Skrip kustom

Saat menentukan Alur Kerja Pencadangan dan DR LiveClone yang melakukan pra-pembersihan, Anda dapat memilih dari penyamaran data privasi Optim atau skrip kustom.

Untuk skrip kustom, tentukan minimal satu skrip pra-pemrosesan atau pasca-pemrosesan.

  • Tentukan pra-skrip sesuai kebutuhan. Pra-skrip digunakan untuk mengonfigurasi lingkungan sebelum memasang atau melepas aplikasi. Skrip ini harus berada di folder bernama /act/scripts di server yang menghosting image yang dipasang.
  • Di Waktu tunggu dalam Detik yang sesuai, tentukan waktu yang diperlukan untuk menyelesaikan skrip.
  • Tentukan post-script sesuai kebutuhan. Post-skrip yang digunakan untuk melakukan operasi pada data setelah dipasang atau dilepas. Skrip ini harus berada di folder bernama /act/scripts di server yang menghosting image yang dipasang.
  • Di Waktu tunggu dalam Detik yang sesuai, tentukan waktu yang diperlukan untuk menyelesaikan skrip.

Skrip Pra dan Pasca Alur Kerja Pencadangan dan DR

Alur Kerja Pencadangan dan DR memasang dan melepas pemasangan image cadangan sesuai jadwal atau sesuai permintaan. Dalam Alur Kerja Backup dan DR, Anda dapat memanggil hal berikut:

  • Pra-skrip yang berjalan sebelum image dipasang atau dilepas
  • Post-script yang berjalan setelah image dipasang atau dilepas

Kemampuan untuk menjalankan skrip sebelum dan setelah data dipasang atau di-unmount memungkinkan Anda melakukan hal berikut:

  • Menghapus informasi sensitif
  • Membuat laporan
  • Data warehouse, terutama untuk operasi ekstrak, transformasi, dan pemuatan—ETL—

Skrip harus berada di folder bernama /act/scripts di server yang menghosting image Alur Kerja DR dan Pencadangan yang terpasang.

Variabel lingkungan

Variabel lingkungan memungkinkan Anda memanggil perintah yang berlaku untuk tugas, jenis tugas, atau aplikasi tertentu. Variabel lingkungan diawali dengan ACT_. Misalnya, variabel lingkungan untuk database dapat terlihat seperti:

    [$ACT_APPNAME =="productiondb"]

atau variabel lingkungan untuk operasi pemasangan dapat terlihat seperti:

    [$ACT_JOBTYPE == "mount"]

Berikut adalah daftar variabel lingkungan umum dengan nilai sampel:

  • JOBNAME: Nama tugas—misalnya, Job_0123456.
  • APPID: ID aplikasi—misalnya, 4186.
  • APPNAME: Nama aplikasi—misalnya, My-DB.
  • HOSTNAME: Nama host yang merupakan target tugas ini—misalnya, Jupiter.
  • SOURCEHOST: Nama host yang merupakan sumber untuk aplikasi ini—misalnya, Saturn.
  • JOBTYPE: Versi teks dari class tugas—misalnya, mount atau unmount.
  • PHASE: String teks yang mendeskripsikan fase tugas—misalnya, pra atau pasca.
  • TIMEOUT: Menentukan durasi skrip, berapa lama skrip diizinkan untuk berjalan.
  • OPTIONS: Opsi kebijakan yang berlaku untuk tugas ini.

Contoh skrip

Contoh skrip berikut menggunakan tiga variabel lingkungan:

  • ACT_JOBTYPE: Mengidentifikasi apakah tugas adalah operasi pemasangan atau penghapusan pemasangan.
  • ACT_PHASE: Mengidentifikasi apakah fase tersebut adalah pra-pengujian atau pasca-pengujian.
  • ACT_MULTI_END: Hanya digunakan jika database dan lognya dipasang. Jika ini benar, database berada dalam status yang dapat diakses.

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