Condividi tramite


Suggerimenti e consigli per l'uso dello strumento snapshot coerente con app Azure

Questo articolo fornisce suggerimenti e consigli utili quando si usa AzAcSnap.

Impostazioni di override globali per controllare il comportamento di azacsnap

AzAcSnap 8 ha introdotto un nuovo file di impostazioni globali (.azacsnaprc) che deve trovarsi nella stessa directory di lavoro corrente in cui viene eseguito azacsnap. Il nome file è .azacsnaprc e usando il carattere punto '.' come inizio del nome file lo rende nascosto agli elenchi di directory standard. Il file consente di impostare le impostazioni globali che controllano il comportamento di AzAcSnap. Il formato è una voce per riga con una variabile supportata di personalizzazione e un nuovo valore di override.

Impostazioni, che può essere controllato aggiungendo/modificando il file delle impostazioni di override globale o impostandoli come variabili di ambiente:

  • MAINLOG_LOCATION che personalizza il percorso del file di output "main-log", chiamato azacsnap.log ed introdotto in AzAcSnap 8. I valori devono essere percorsi assoluti e il valore predefinito = '.' (ovvero la directory di lavoro corrente). Ad esempio, per assicurarsi che il file di output "main-log" venga /home/azacsnap/bin/logs aggiunto quanto segue al .azacsnaprc file:
    • MAINLOG_LOCATION=/home/azacsnap/bin/logs
  • AZURE_MANAGEMENT_ENDPOINT personalizzare la posizione dell'endpoint di gestione di Azure a cui AzAcSnap effettuerà chiamate api REST di Azure è stata introdotta in AzAcSnap 9a. I valori devono essere percorsi URL e il valore predefinito = 'https://management.azure.com'. Ad esempio, per configurare AzAcSnap per assicurarsi che tutte le chiamate di gestione vadano all'endpoint di gestione di Azure per US Govt Cloud (riferimento: Azure per enti pubblici Indicazioni per gli sviluppatori) aggiungere il codice seguente al .azacsnaprc file:
    • AZURE_MANAGEMENT_ENDPOINT=https://management.usgovcloudapi.net

Nota

A partire da AzAcSnap 9a tutti questi valori possono essere impostati anche come variabili di ambiente della riga di comando o invece del .azacsnaprc file. Ad esempio, in Linux AZURE_MANAGEMENT_ENDPOINT può essere impostato con export AZURE_MANAGEMENT_ENDPOINT=https://management.usgovcloudapi.net prima di eseguire AzAcSnap.

Analisi del log principale

AzAcSnap 8 ha introdotto un nuovo "main-log" per fornire un'analisi più semplice delle esecuzioni di AzAcSnap. L'ispirazione per questo file è il catalogo di backup di SAP HANA, che mostra quando è stato avviato AzAcSnap, il tempo necessario e il nome dello snapshot. Con AzAcSnap, questa idea è stata presa ulteriormente per includere informazioni per ognuno dei comandi AzAcSnap, in particolare le -c opzioni e il file ha le intestazioni seguenti:

DATE_TIME,OPERATION_NAME,STATUS,SID,DATABASE_TYPE,DURATION,SNAPSHOT_NAME,AZACSNAP_VERSION,AZACSNAP_CONFIG_FILE,VOLUME

Quando AzAcSnap viene eseguito, aggiunge al log le informazioni appropriate a seconda del -c comando usato, gli esempi di output sono i seguenti:

2023-03-29T16:10:57.8643546+13:00,about,started,,,,,8,azacsnap.json,
2023-03-29T16:10:57.8782148+13:00,about,SUCCESS,,,0:00:00.0258013,,8,azacsnap.json,
2023-03-29T16:11:55.7276719+13:00,backup,started,PR1,Hana,,pr1_hourly__F47B181A117,8,PR1.json,(data)HANADATA_P;(data)HANASHARED_P;(data)VGvol01;
2023-03-29T16:13:03.3774633+13:00,backup,SUCCESS,PR1,Hana,0:01:07.7558663,pr1_hourly__F47B181A117,8,PR1.json,(data)HANADATA_P;(data)HANASHARED_P;(data)VGvol01;
2023-03-29T16:13:30.1312963+13:00,details,started,PR1,Hana,,,8,PR1.json,(data)HANADATA_P;(data)HANASHARED_P;(data)VGvol01;(other)HANALOGBACKUP_P;
2023-03-29T16:13:33.1806098+13:00,details,SUCCESS,PR1,Hana,0:00:03.1380686,,8,PR1.json,(data)HANADATA_P;(data)HANASHARED_P;(data)VGvol01;(other)HANALOGBACKUP_P;

Questo formato rende il file analizzabili con i comandi watchdi Linux , , tailgrephead, e column per ottenere aggiornamenti continui dei backup di AzAcSnap. Di seguito è riportato un esempio di combinazione di questi comandi in un singolo script della shell per monitorare AzAcSnap:

#!/bin/bash
#
# mainlog-watcher.sh
# Monitor execution of AzAcSnap backup commands
#
# These values can be modified as appropriate.
# Mainlog header fields:
#       1. DATE_TIME,
#       2. OPERATION_NAME,
#       3. STATUS,
#       4. SID,
#       5. DATABASE_TYPE,
#       6. DURATION,
#       7. SNAPSHOT_NAME,
#       8. AZACSNAP_VERSION,
#       9. AZACSNAP_CONFIG_FILE,
#       10. VOLUME
FIELDS_TO_INCLUDE="1,2,3,5,4,6,7"
SCREEN_REFRESH_SECS=2
#
# Use AzAcSnap global settings file (.azacsnaprc) if available,
# otherwise use the default location of the current working directory.
AZACSNAP_RC=".azacsnaprc"
if [ -f ${AZACSNAP_RC} ]; then
    source ${AZACSNAP_RC} 2> /dev/null
else
    MAINLOG_LOCATION="."
fi
cd ${MAINLOG_LOCATION}
echo "Changing current working directory to ${MAINLOG_LOCATION}"
#
# Default MAINLOG filename.
HOSTNAME=$(hostname)
MAINLOG_FILENAME="azacsnap.log"
#
# High-level explanation of how commands used.
# `watch` - continuously monitoring the command output.
# `grep` - filter only backup runs.
# `head` and `tail` - add/remove column headers.
# `sed` to remove millisecs from date.
# `awk` format output for `column`.
# `column` - provide pretty output.
FIELDS_FOR_AWK=$(echo "${FIELDS_TO_INCLUDE}" | sed 's/^/\\\$/g' | sed 's/,/,\\\$/g')
PRINTOUT="{OFS=\\\",\\\";print ${FIELDS_FOR_AWK}}"
#
echo -n "Parsing '${MAINLOG_FILENAME}' for field #s ${FIELDS_TO_INCLUDE} = "
bash -c "cat ${MAINLOG_FILENAME} | grep -e \"DATE\" | head -n1 -  | awk -F\",\" \"${PRINTOUT}\" "
#
watch -t -n ${SCREEN_REFRESH_SECS} \
  "\
  echo -n \"Monitoring AzAcSnap on '${HOSTNAME}' @ \" ; \
  date ; \
  echo ; \
  cat ${MAINLOG_FILENAME} \
    | grep -e \"DATE\" -e \",backup,\" \
    | ( sleep 1; head -n1 - ; sleep 1; tail -n+2 - | tail -n20 \
      | sed 's/\(:[0-9][0-9]\)\.[0-9]\{7\}/\1/' ; sleep 1 ) \
    | awk -F\",\" \"${PRINTOUT}\" \
    | column -s\",\" -t \
  "
exit 0

Produce l'output seguente aggiornato ogni due secondi.

Monitoring AzAcSnap on 'azacsnap' @ Thu Sep 21 11:27:40 NZST 2023

DATE_TIME                  OPERATION_NAME  STATUS   DATABASE_TYPE  SID       DURATION         SNAPSHOT_NAME
2023-09-21T07:00:02+12:00  backup          started  Oracle         ORATEST1                   all-volumes__F6B07A2D77A
2023-09-21T07:02:10+12:00  backup          SUCCESS  Oracle         ORATEST1  0:02:08.0338537  all-volumes__F6B07A2D77A
2023-09-21T08:00:03+12:00  backup          started  Oracle         ORATEST1                   all-volumes__F6B09C83210
2023-09-21T08:02:12+12:00  backup          SUCCESS  Oracle         ORATEST1  0:02:09.9954439  all-volumes__F6B09C83210
2023-09-21T09:00:03+12:00  backup          started  Oracle         ORATEST1                   all-volumes__F6B0BED814B
2023-09-21T09:00:03+12:00  backup          started  Hana           PR1                        pr1_hourly__F6B0BED817F
2023-09-21T09:01:10+12:00  backup          SUCCESS  Hana           PR1       0:01:07.8575664  pr1_hourly__F6B0BED817F
2023-09-21T09:02:12+12:00  backup          SUCCESS  Oracle         ORATEST1  0:02:09.4572157  all-volumes__F6B0BED814B

Limitare le autorizzazioni dell'entità servizio

Potrebbe essere necessario limitare l'ambito dell'entità servizio AzAcSnap. Vedere la documentazione di Controllo degli accessi in base al ruolo di Azure per altri dettagli sulla gestione degli accessi con granularità fine delle risorse di Azure.

Di seguito è riportata una definizione di ruolo di esempio con le azioni minime necessarie per il funzionamento di AzAcSnap.

az role definition create --role-definition '{ \
  "Name": "Azure Application Consistent Snapshot tool", \
  "IsCustom": "true", \
  "Description": "Perform snapshots on ANF volumes.", \
  "Actions": [ \
    "Microsoft.NetApp/*/read", \
    "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots/write", \
    "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots/delete" \
  ], \
  "NotActions": [], \
  "DataActions": [], \
  "NotDataActions": [], \
  "AssignableScopes": ["/subscriptions/<insert your subscription id>"] \
}'

Per il corretto funzionamento delle opzioni di ripristino, anche l'entità servizio AzAcSnap deve essere in grado di creare volumi. In questo caso, per la definizione del ruolo è necessaria una clausola aggiuntiva "Actions", pertanto l'entità servizio completa dovrebbe essere simile all'esempio seguente.

az role definition create --role-definition '{ \
  "Name": "Azure Application Consistent Snapshot tool", \
  "IsCustom": "true", \
  "Description": "Perform snapshots and restores on ANF volumes.", \
  "Actions": [ \
    "Microsoft.NetApp/*/read", \
    "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots/write", \
    "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots/delete", \
    "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/write" \
  ], \
  "NotActions": [], \
  "DataActions": [], \
  "NotDataActions": [], \
  "AssignableScopes": ["/subscriptions/<insert your subscription id>"] \
}'

Creare snapshot manualmente

Prima di eseguire tutti i comandi di backup (azacsnap -c backup), controllare la configurazione eseguendo i comandi di test e verificare che vengano eseguiti correttamente. L'esecuzione corretta di questi test ha dimostrato azacsnap di poter comunicare con il database SAP HANA installato e con il sistema di archiviazione sottostante del sistema SAP HANA in Istanza Large di Azure o azure NetApp Files .

  • azacsnap -c test --test hana
  • azacsnap -c test --test storage

Eseguire quindi il comando seguente per eseguire un backup manuale dello snapshot del database:

azacsnap -c backup --volume data --prefix hana_TEST --retention=1

Configurare il backup automatico degli snapshot

È pratica comune nei sistemi Unix/Linux usare cron per automatizzare l'esecuzione di comandi in un sistema. La procedura standard per gli strumenti di snapshot consiste nel configurare l'oggetto dell'utente crontab.

Di seguito è riportato un crontab esempio di che consente all'utente azacsnap di automatizzare gli snapshot.

MAILTO=""
# =============== TEST snapshot schedule ===============
# Data Volume Snapshots - taken every hour.
@hourly (. /home/azacsnap/.profile ; cd /home/azacsnap/bin ; azacsnap -c backup --volume data --prefix hana_TEST --retention=9)
# Other Volume Snapshots - taken every 5 minutes, excluding the top of the hour when hana snapshots taken
5,10,15,20,25,30,35,40,45,50,55 * * * * (. /home/azacsnap/.profile ; cd /home/azacsnap/bin ; azacsnap -c backup --volume other --prefix logs_TEST --retention=9)
# Other Volume Snapshots - using an alternate config file to snapshot the boot volume daily.
@daily (. /home/azacsnap/.profile ; cd /home/azacsnap/bin ; azacsnap -c backup --volume other --prefix DailyBootVol --retention=7 --configfile boot-vol.json)

Spiegazione della crontab precedente.

  • MAILTO="": con un valore vuoto questo impedisce a cron di provare automaticamente a inviare un messaggio di posta elettronica all'utente Linux locale durante l'esecuzione della voce crontab.
  • Le versioni abbreviate di temporizzazione per le voci crontab sono autoesplicative:
    • @monthly = Eseguire una volta al mese, ovvero "0 0 1 * *".
    • @weekly = Eseguire una volta alla settimana, ovvero "0 0 * * 0".
    • @daily = Eseguire una volta al giorno, ovvero "0 0 * * *".
    • @hourly = Eseguire una volta un'ora, ovvero "0 * * * *".
  • Le prime cinque colonne vengono usate per designare i tempi, fare riferimento agli esempi di colonna seguenti:
    • 0,15,30,45: ogni 15 minuti
    • 0-23: ogni ora
    • * :Ogni giorno
    • * : ogni mese
    • * : ogni giorno della settimana
  • Riga di comando da eseguire inclusa tra parentesi quadre "()"
    • . /home/azacsnap/.profile = eseguire il pull del profilo dell'utente per configurare il proprio ambiente, tra cui $PATH e così via.
    • cd /home/azacsnap/bin = modificare la directory di esecuzione nel percorso "/home/azacsnap/bin" in cui si trovano i file di configurazione.
    • azacsnap -c ..... = il comando azacsnap completo da eseguire, incluse tutte le opzioni.

Per altre informazioni su cron e sul formato del file crontab, vedere cron.

Nota

Gli utenti sono responsabili del monitoraggio dei processi cron per garantire che gli snapshot vengano generati correttamente.

Gestire i file di log di AzAcSnap

AzAcSnap scrive l'output dell'operazione nei file di log per facilitare il debug e convalidare l'operazione corretta. Questi file di log continuano a crescere a meno che non vengano gestiti attivamente. Fortunatamente i sistemi basati su UNIX hanno uno strumento per gestire e archiviare i file di log denominati logrotate.

L'output seguente fornisce una configurazione di esempio per logrotate. Questa configurazione mantiene un massimo di 31 log (circa un mese) e quando i file di log sono più grandi di 10.000, li ruota ridenominazione con un numero aggiunto al nome file e li comprime.

# azacsnap logrotate configuration file
compress

~/bin/azacsnap*.log {
    rotate 31
    size 10k
}

Dopo aver creato il logrotate.conf file, il logrotate comando deve essere eseguito regolarmente per archiviare i file di log azAcSnap di conseguenza. L'automazione del logrotate comando può essere eseguita usando cron. L'output seguente è una riga del crontab dell'utente azacsnap. Questo esempio esegue logrotate ogni giorno usando il file ~/logrotate.confdi configurazione .

@daily /usr/sbin/logrotate -s ~/logrotate.state ~/logrotate.conf >> ~/logrotate.log

Nota

Nell'esempio precedente il file logrotate.conf si trova nella directory home (~) dell'utente.

Dopo alcuni giorni, i file di log azacsnap dovrebbero essere simili all'elenco di directory seguente.

ls -ltra ~/bin/logs
-rw-r--r-- 1 azacsnap users 127431 Mar 14 23:56 azacsnap-backup-azacsnap.log.6.gz
-rw-r--r-- 1 azacsnap users 128379 Mar 15 23:56 azacsnap-backup-azacsnap.log.5.gz
-rw-r--r-- 1 azacsnap users 129272 Mar 16 23:56 azacsnap-backup-azacsnap.log.4.gz
-rw-r--r-- 1 azacsnap users 128010 Mar 17 23:56 azacsnap-backup-azacsnap.log.3.gz
-rw-r--r-- 1 azacsnap users 128947 Mar 18 23:56 azacsnap-backup-azacsnap.log.2.gz
-rw-r--r-- 1 azacsnap users 128971 Mar 19 23:56 azacsnap-backup-azacsnap.log.1.gz
-rw-r--r-- 1 azacsnap users 167921 Mar 20 01:21 azacsnap-backup-azacsnap.log

Monitorare gli snapshot

Per garantire un sistema integro, è necessario monitorare le condizioni seguenti:

  1. Spazio su disco disponibile. Gli snapshot consumano lentamente spazio su disco in base alla frequenza di modifica a livello di blocco, in quanto i blocchi di disco meno recenti vengono mantenuti nello snapshot.
    1. Per automatizzare la gestione dello spazio su disco, usare le --retention opzioni e --trim per pulire automaticamente gli snapshot precedenti e i file di log del database.
  2. Esecuzione corretta degli strumenti di snapshot
    1. Controllare se il *.result file ha esito positivo o negativo dell'ultima esecuzione di azacsnap.
    2. Controllare /var/log/messages l'output del azacsnap comando.
  3. Coerenza degli snapshot ripristinandoli in un altro sistema periodicamente.

Nota

Per elencare i dettagli dello snapshot, eseguire il comando azacsnap -c details.

Eliminare uno snapshot

Per eliminare uno snapshot, usare il comando azacsnap -c delete. Non è possibile eliminare gli snapshot dal livello del sistema operativo. Per eliminare gli snapshot di archiviazione, è necessario usare il comando corretto (azacsnap -c delete).

Importante

Prestare attenzione quando si elimina uno snapshot. Dopo l'eliminazione, è impossibile recuperare gli snapshot eliminati.

Ripristinare uno snapshot

Uno snapshot del volume di archiviazione può essere ripristinato in un nuovo volume (-c restore --restore snaptovol). Per Istanza large di Azure, il volume può essere ripristinato a uno snapshot (-c restore --restore revertvolume).

Nota

Non è disponibile alcun comando di ripristino del database.

È possibile copiare uno snapshot nell'area dati SAP HANA, ma SAP HANA non deve essere in esecuzione quando viene eseguita una copia (cp /hana/data/H80/mnt00001/.snapshot/hana_hourly.2020-06-17T113043.1586971Z/*).

Per Istanza large di Azure, è possibile contattare il team operativo Microsoft aprendo una richiesta di servizio per ripristinare uno snapshot desiderato dagli snapshot disponibili esistenti. È possibile aprire una richiesta di servizio tramite il portale di Azure.

Se si decide di eseguire il failover di ripristino di emergenza, il azacsnap -c restore --restore revertvolume comando nel sito di ripristino di emergenza rende automaticamente disponibili gli snapshot del volume più recenti (/hana/data e /hana/logbackups) per consentire un ripristino di SAP HANA. Usare questo comando con cautela perché interrompe la replica tra siti di produzione e ripristino di emergenza.

Configurare gli snapshot solo per i volumi di avvio

Importante

Questa operazione si applica solo all'istanza large di Azure.

In alcuni casi, i clienti hanno già strumenti per proteggere SAP HANA e vogliono configurare solo gli snapshot del volume di avvio. In questo caso, è necessario completare solo i passaggi seguenti.

  1. Completare i passaggi da 1 a 4 dei prerequisiti per l'installazione.

  2. Abilitare la comunicazione con l'archiviazione.

  3. Scaricare ed eseguire il programma di installazione per installare gli strumenti di snapshot.

  4. Completare la configurazione degli strumenti di snapshot.

  5. Ottenere l'elenco dei volumi da aggiungere al file di configurazione azacsnap, in questo esempio il nome utente Archiviazione è cl25h50backup e l'indirizzo IP Archiviazione è10.1.1.10

    ssh cl25h50backup@10.1.1.10 "volume show -volume *boot*"
    
    Last login time: 7/20/2021 23:54:03
    Vserver   Volume       Aggregate    State      Type       Size  Available Used%
    --------- ------------ ------------ ---------- ---- ---------- ---------- -----
    ams07-a700s-saphan-1-01v250-client25-nprod t250_sles_boot_sollabams07v51_vol aggr_n01_ssd online RW 150GB 57.24GB  61%
    ams07-a700s-saphan-1-01v250-client25-nprod t250_sles_boot_sollabams07v52_vol aggr_n01_ssd online RW 150GB 81.06GB  45%
    ams07-a700s-saphan-1-01v250-client25-nprod t250_sles_boot_sollabams07v53_vol aggr_n01_ssd online RW 150GB 79.56GB  46%
    3 entries were displayed.
    

    Nota

    In questo esempio, questo host fa parte di un sistema scale-out a 3 nodi e tutti e tre i volumi di avvio possono essere visualizzati da questo host. Ciò significa che tutti i 3 volumi di avvio possono essere snapshot da questo host e tutti e 3 devono essere aggiunti al file di configurazione nel passaggio successivo.

  6. Creare un nuovo file di configurazione come indicato di seguito. I dettagli del volume di avvio devono trovarsi nella stanza OtherVolume:

    azacsnap -c configure --configuration new --configfile BootVolume.json
    
    Building new config file
    Add comment to config file (blank entry to exit adding comments): Boot only config file.
    Add comment to config file (blank entry to exit adding comments):
    Add database to config? (y/n) [n]: y
    HANA SID (for example, H80): X
    HANA Instance Number (for example, 00): X
    HANA HDB User Store Key (for example, `hdbuserstore List`): X
    HANA Server's Address (hostname or IP address): X
    Add ANF Storage to database section? (y/n) [n]:
    Add HLI Storage to database section? (y/n) [n]: y
    Add DATA Volume to HLI Storage section of Database section? (y/n) [n]:
    Add OTHER Volume to HLI Storage section of Database section? (y/n) [n]: y
    Storage User Name (for example, clbackup25): cl25h50backup
    Storage IP Address (for example, 192.168.1.30): 10.1.1.10
    Storage Volume Name (for example, hana_data_soldub41_t250_vol): t250_sles_boot_sollabams07v51_vol
    Add OTHER Volume to HLI Storage section of Database section? (y/n) [n]: y
    Storage User Name (for example, clbackup25): cl25h50backup
    Storage IP Address (for example, 192.168.1.30): 10.1.1.10
    Storage Volume Name (for example, hana_data_soldub41_t250_vol): t250_sles_boot_sollabams07v52_vol
    Add OTHER Volume to HLI Storage section of Database section? (y/n) [n]: y
    Storage User Name (for example, clbackup25): cl25h50backup
    Storage IP Address (for example, 192.168.1.30): 10.1.1.10
    Storage Volume Name (for example, hana_data_soldub41_t250_vol): t250_sles_boot_sollabams07v53_vol
    Add OTHER Volume to HLI Storage section of Database section? (y/n) [n]:
    Add HLI Storage to database section? (y/n) [n]:
    Add database to config? (y/n) [n]:
    
    Editing configuration complete, writing output to 'BootVolume.json'.
    
  7. Controllare il file di configurazione, fare riferimento all'esempio seguente:

    Usare cat il comando per visualizzare il contenuto del file di configurazione:

    cat BootVolume.json
    
    {
      "version": "5.0",
      "logPath": "./logs",
      "securityPath": "./security",
      "comments": [
        "Boot only config file."
      ],
      "database": [
        {
          "hana": {
            "serverAddress": "X",
            "sid": "X",
            "instanceNumber": "X",
            "hdbUserStoreName": "X",
            "savePointAbortWaitSeconds": 600,
            "hliStorage": [
              {
                "dataVolume": [],
                "otherVolume": [
                  {
                    "backupName": "cl25h50backup",
                    "ipAddress": "10.1.1.10",
                    "volume": "t250_sles_boot_sollabams07v51_vol"
                  },
                  {
                    "backupName": "cl25h50backup",
                    "ipAddress": "10.1.1.10",
                    "volume": "t250_sles_boot_sollabams07v52_vol"
                  },
                  {
                    "backupName": "cl25h50backup",
                    "ipAddress": "10.1.1.10",
                    "volume": "t250_sles_boot_sollabams07v53_vol"
                  }
                ]
              }
            ],
            "anfStorage": []
          }
        }
      ]
    }
    
  8. Testare un backup del volume di avvio

    azacsnap -c backup --volume other --prefix TestBootVolume --retention 1 --configfile BootVolume.json
    
  9. Controllare che sia elencato, prendere nota dell'aggiunta dell'opzione --snapshotfilter per limitare l'elenco di snapshot restituito.

    azacsnap -c details --snapshotfilter TestBootVolume --configfile BootVolume.json
    

    Output del comando:

    List snapshot details called with snapshotFilter 'TestBootVolume'
    #, Volume, Snapshot, Create Time, HANA Backup ID, Snapshot Size
    #1, t250_sles_boot_sollabams07v51_vol, TestBootVolume.2020-07-03T034651.7059085Z, "Fri Jul 03 03:48:24 2020", "otherVolume Backup|azacsnap version: 5.0 (Build: 20210421.6349)", 200KB
    , t250_sles_boot_sollabams07v51_vol, , , Size used by Snapshots, 1.31GB
    #1, t250_sles_boot_sollabams07v52_vol, TestBootVolume.2020-07-03T034651.7059085Z, "Fri Jul 03 03:48:24 2020", "otherVolume Backup|azacsnap version: 5.0 (Build: 20210421.6349)", 200KB
    , t250_sles_boot_sollabams07v52_vol, , , Size used by Snapshots, 1.31GB
    #1, t250_sles_boot_sollabams07v53_vol, TestBootVolume.2020-07-03T034651.7059085Z, "Fri Jul 03 03:48:24 2020", "otherVolume Backup|azacsnap version: 5.0 (Build: 20210421.6349)", 200KB
    , t250_sles_boot_sollabams07v53_vol, , , Size used by Snapshots, 1.31GB
    
  10. Facoltativo Configurare il backup automatico degli snapshot con crontabo un'utilità di pianificazione appropriata in grado di eseguire i azacsnap comandi di backup.

Nota

La configurazione della comunicazione con SAP HANA non è necessaria.

Ripristinare uno snapshot di avvio

Importante

Questa operazione è per l'istanza large di Azure ony. Il server verrà ripristinato al punto in cui è stato creato lo snapshot.

Uno snapshot 'boot' può essere recuperato nel modo seguente:

  1. Il cliente deve arrestare il server.
  2. Dopo l'arresto del server, il cliente dovrà aprire una richiesta di servizio contenente l'ID computer e lo snapshot da ripristinare.

    I clienti possono aprire una richiesta di servizio tramite il portale di Azure.

  3. Microsoft ripristina il LUN del sistema operativo usando l'ID computer e lo snapshot specificati e quindi avvia il server.
  4. Il cliente deve quindi verificare che server sia avviato e integro.

Nessun altro passaggio da eseguire dopo il ripristino.

Fatti chiave per conoscere gli snapshot

Attributi chiave degli snapshot del volume di archiviazione:

  • Posizione degli snapshot: gli snapshot sono disponibili in una directory virtuale (.snapshot) all'interno del volume. Vedere gli esempi seguenti per Istanza Large di Azure:

    • Database: /hana/data/<SID>/mnt00001/.snapshot
    • Condiviso: /hana/shared/<SID>/.snapshot
    • Registri: /hana/logbackups/<SID>/.snapshot
    • Avvio: gli snapshot di avvio per HLI non sono visibili a livello di sistema operativo, ma possono essere elencati usando azacsnap -c details.

    Nota

    .snapshotè una cartella virtuale nascosta di sola lettura che fornisce l'accesso in sola lettura agli snapshot.

  • Snapshot massimo: l'hardware può sostenere fino a 250 snapshot per volume. Il comando snapshot mantiene un numero massimo di snapshot per il prefisso in base al set di conservazione nella riga di comando. Vengono eliminati altri snapshot, oltre il numero di conservazione con lo stesso prefisso.

  • Nome snapshot: il nome dello snapshot include l'etichetta del prefisso fornita dal cliente.

  • Dimensioni dello snapshot: dipende dalle dimensioni o dalle modifiche a livello di database.

  • Percorso del file di log: i file di log generati dai comandi vengono restituiti in cartelle come definito nel file di configurazione JSON, che per impostazione predefinita è una sottocartella in cui viene eseguito il comando , ad esempio ./logs.

Passaggi successivi