Tips en trucs voor het gebruik van Azure-toepassing hulpprogramma Voor consistente momentopnamen

Dit artikel bevat tips en trucs die nuttig kunnen zijn wanneer u AzAcSnap gebruikt.

Algemene onderdrukkingsinstellingen om het gedrag van azacsnap te beheren

AzAcSnap 8 heeft een nieuw algemeen instellingenbestand (.azacsnaprc) geïntroduceerd dat zich in dezelfde (huidige werkmap) moet bevinden als azacsnap wordt uitgevoerd. De bestandsnaam is .azacsnaprc en door het teken punt '.' te gebruiken als het begin van de bestandsnaam, wordt deze verborgen in standaardlijstvermeldingen. Met het bestand kunnen globale instellingen het gedrag van AzAcSnap worden ingesteld. De indeling is één vermelding per regel met een ondersteunde aanpassingsvariabele en een nieuwe onderdrukkingswaarde.

Instellingen, die kan worden beheerd door het algemene onderdrukkingsinstellingenbestand toe te voegen/te bewerken of door ze in te stellen als omgevingsvariabelen zijn:

  • MAINLOG_LOCATION die de locatie van het uitvoerbestand 'main-log' aanpast, dat wordt aangeroepen azacsnap.log en is geïntroduceerd in AzAcSnap 8. Waarden moeten absolute paden zijn en de standaardwaarde = '.' (dit is de huidige werkmap). Als u er bijvoorbeeld voor wilt zorgen dat het uitvoerbestand 'main-log' naar het /home/azacsnap/bin/logs bestand gaat, voegt u het volgende toe aan het .azacsnaprc bestand:
    • MAINLOG_LOCATION=/home/azacsnap/bin/logs
  • AZURE_MANAGEMENT_ENDPOINT om de locatie van het Azure Management-eindpunt aan te passen waarnaar AzAcSnap Azure REST API-aanroepen zal maken, is geïntroduceerd in AzAcSnap 9a. Waarden moeten URL-paden zijn en de standaardwaarde = 'https://management.azure.com'. Als u bijvoorbeeld AzAcSnap wilt configureren om ervoor te zorgen dat alle beheeraanroepen naar het Azure Management Endpoint for US Govt Cloud (ref: Azure Government Guidance for developers) gaan, voegt u het volgende toe aan het .azacsnaprc bestand:
    • AZURE_MANAGEMENT_ENDPOINT=https://management.usgovcloudapi.net

Notitie

Vanaf AzAcSnap 9a kunnen al deze waarden ook worden ingesteld als opdrachtregelomgevingsvariabelen, of in plaats van .azacsnaprc het bestand. In Linux AZURE_MANAGEMENT_ENDPOINT kunt u bijvoorbeeld instellen met export AZURE_MANAGEMENT_ENDPOINT=https://management.usgovcloudapi.net voordat u AzAcSnap uitvoert.

Parseren van hoofdlogboeken

AzAcSnap 8 heeft een nieuw 'main-log' geïntroduceerd om eenvoudigere uitvoeringen van AzAcSnap te parseren. De inspiratie voor dit bestand is de SAP HANA-back-upcatalogus, die laat zien wanneer AzAcSnap is gestart, hoe lang het duurde en wat de naam van de momentopname is. Met AzAcSnap is dit idee verder gebruikt om informatie op te nemen voor elk van de AzAcSnap-opdrachten, met name de -c opties, en het bestand heeft de volgende headers:

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

Wanneer AzAcSnap wordt uitgevoerd, wordt de juiste informatie toegevoegd aan het logboek, afhankelijk van de -c gebruikte opdracht, zijn voorbeelden van uitvoer als volgt:

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;

Deze indeling maakt het bestand parserend met de Linux-opdrachten watch, grep, headen tailcolumn om continue updates van AzAcSnap-back-ups te krijgen. Een voorbeeld van een combinatie van deze opdrachten in één shellscript voor het bewaken van AzAcSnap is als volgt:

#!/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

Hiermee wordt de volgende uitvoer elke twee seconden vernieuwd.

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

Machtigingen voor service-principals beperken

Het kan nodig zijn om het bereik van de AzAcSnap-service-principal te beperken. Raadpleeg de Documentatie van Azure RBAC voor meer informatie over gedetailleerd toegangsbeheer van Azure-resources.

Hier volgt een voorbeeld van een roldefinitie met de minimaal vereiste acties die nodig zijn om AzAcSnap te laten functioneren.

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>"] \
}'

Voor een succesvolle werking van herstelopties moet de AzAcSnap-service-principal ook volumes kunnen maken. In dit geval moet voor de roldefinitie een extra component 'Acties' worden toegevoegd. Daarom moet de volledige service-principal eruitzien als in het volgende voorbeeld.

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>"] \
}'

Handmatig momentopnamen maken

Voordat u back-upopdrachten uitvoert (azacsnap -c backup), controleert u de configuratie door de testopdrachten uit te voeren en te controleren of ze zijn uitgevoerd. De correcte uitvoering van deze tests azacsnap kan communiceren met de geïnstalleerde SAP HANA-database en het onderliggende opslagsysteem van het SAP HANA op Azure Large Instance of Azure NetApp Files-systeem .

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

Voer vervolgens de volgende opdracht uit om een handmatige back-up van een databasemomentopname te maken:

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

Automatische back-up van momentopnamen instellen

Het is gebruikelijk om unix-/Linux-systemen te gebruiken cron om het uitvoeren van opdrachten op een systeem te automatiseren. De standaardpraktijk voor de hulpprogramma's voor momentopnamen is het instellen van crontabde gebruiker.

Hier volgt een voorbeeld van een crontab voor de gebruiker azacsnap om momentopnamen te automatiseren.

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)

Uitleg van de bovenstaande crontab.

  • MAILTO="": door een lege waarde te hebben, voorkomt u dat cron automatisch probeert de lokale Linux-gebruiker te e-mailen bij het uitvoeren van de crontab-vermelding.
  • Verkorte versies van timing voor crontab-vermeldingen zijn duidelijk:
    • @monthly = Eenmaal per maand uitvoeren, dat wil gezegd: "0 0 1 * *".
    • @weekly = Eenmaal per week uitvoeren, dat wil gezegd: "0 0 * * 0".
    • @daily = Eenmaal per dag uitvoeren, dat wil gezegd: "0 0 * * *".
    • @hourly = Eenmaal per uur uitvoeren, dat wil gezegd: "0 * * * *".
  • De eerste vijf kolommen worden gebruikt om tijden aan te wijzen. Raadpleeg de volgende kolomvoorbeelden:
    • 0,15,30,45: om de 15 minuten
    • 0-23: Elk uur
    • * :Elke dag
    • * : Elke maand
    • * : Elke dag van de week
  • Opdrachtregel die moet worden uitgevoerd tussen vierkante haken ()'
    • . /home/azacsnap/.profile = haal het .profiel van de gebruiker op om hun omgeving in te stellen, inclusief $PATH, enzovoort.
    • cd /home/azacsnap/bin = de uitvoeringsmap wijzigen in de locatie '/home/azacsnap/bin' waar configuratiebestanden zich bevinden.
    • azacsnap -c ..... = de volledige azacsnap-opdracht die moet worden uitgevoerd, inclusief alle opties.

Zie cron voor meer informatie over cron en de indeling van het crontab-bestand.

Notitie

Gebruikers zijn verantwoordelijk voor het controleren van de cron-taken om ervoor te zorgen dat momentopnamen worden gegenereerd.

AzAcSnap-logboekbestanden beheren

AzAcSnap schrijft uitvoer van de bewerking naar logboekbestanden om te helpen bij foutopsporing en om de juiste bewerking te valideren. Deze logboekbestanden blijven groeien, tenzij ze actief worden beheerd. Gelukkig hebben UNIX-systemen een hulpprogramma voor het beheren en archiveren van logboekbestanden met de naam logrotate.

De volgende uitvoer bevat een voorbeeldconfiguratie voor logrotate. Deze configuratie behoudt maximaal 31 logboeken (ongeveer één maand) en wanneer de logboekbestanden groter zijn dan 10.000, worden ze gedraaid door de naam te wijzigen met een getal dat aan de bestandsnaam is toegevoegd en gecomprimeerd.

# azacsnap logrotate configuration file
compress

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

Nadat het logrotate.conf bestand is gemaakt, moet de logrotate opdracht regelmatig worden uitgevoerd om AzAcSnap-logboekbestanden dienovereenkomstig te archiveren. Het automatiseren van de logrotate opdracht kan worden uitgevoerd met cron. De volgende uitvoer is één regel van de crontab van de azacsnap-gebruiker. In dit voorbeeld wordt logrotate dagelijks uitgevoerd met behulp van het configuratiebestand ~/logrotate.conf.

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

Notitie

In het bovenstaande voorbeeld bevindt het bestand logrotate.conf zich in de basismap van de gebruiker (~).

Na enkele dagen moeten de azacsnap-logboekbestanden er ongeveer uitzien als in de volgende lijst.

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

De momentopnamen bewaken

De volgende voorwaarden moeten worden gecontroleerd om een gezond systeem te garanderen:

  1. Beschikbare schijfruimte. Momentopnamen verbruiken langzaam schijfruimte op basis van de wijzigingssnelheid op blokniveau, omdat oudere schijfblokken behouden blijven in de momentopname.
    1. Gebruik de --retention en --trim opties om de oude momentopnamen en databaselogboekbestanden automatisch op te schonen om het beheer van schijfruimte te automatiseren.
  2. Geslaagde uitvoering van de hulpprogramma's voor momentopnamen
    1. Controleer het *.result bestand op het slagen of mislukken van de meest recente uitvoering van azacsnap.
    2. Controleer op /var/log/messages uitvoer van de azacsnap opdracht.
  3. Consistentie van de momentopnamen door ze periodiek te herstellen naar een ander systeem.

Notitie

Als u de details van de momentopname wilt weergeven, voert u de opdracht azacsnap -c detailsuit.

Een momentopname verwijderen

Als u een momentopname wilt verwijderen, gebruikt u de opdracht azacsnap -c delete. Het is niet mogelijk om momentopnamen van het besturingssysteemniveau te verwijderen. U moet de juiste opdracht (azacsnap -c delete) gebruiken om de momentopnamen van de opslag te verwijderen.

Belangrijk

Wees voorzichtig wanneer u een momentopname verwijdert. Zodra het is verwijderd, is het ONMOGELIJK om de verwijderde momentopnamen te herstellen.

Een momentopname herstellen

Een momentopname van een opslagvolume kan worden hersteld naar een nieuw volume (-c restore --restore snaptovol). Voor Azure Large Instance kan het volume worden teruggezet naar een momentopname (-c restore --restore revertvolume).

Notitie

Er is geen opdracht voor databaseherstel beschikbaar.

Een momentopname kan worden gekopieerd naar het SAP HANA-gegevensgebied, maar SAP HANA mag niet worden uitgevoerd wanneer er een kopie wordt gemaakt (cp /hana/data/H80/mnt00001/.snapshot/hana_hourly.2020-06-17T113043.1586971Z/*).

Voor Azure Large Instance kunt u contact opnemen met het Microsoft Operations-team door een serviceaanvraag te openen om een gewenste momentopname te herstellen van de bestaande beschikbare momentopnamen. U kunt een serviceaanvraag openen via Azure Portal.

Als u besluit om de failover voor herstel na noodgevallen uit te voeren, maakt de azacsnap -c restore --restore revertvolume opdracht op de DR-site automatisch de meest recente (/hana/data en /hana/logbackups) volumemomentopnamen beschikbaar om een SAP HANA-herstel mogelijk te maken. Gebruik deze opdracht met voorzichtigheid wanneer de replicatie tussen productie- en herstel na noodgevallen wordt verbroken.

Alleen momentopnamen instellen voor opstartvolumes

Belangrijk

Deze bewerking is alleen van toepassing op Azure Large Instance.

In sommige gevallen hebben klanten al hulpprogramma's voor het beveiligen van SAP HANA en willen ze alleen momentopnamen van het opstartvolume configureren. In dit geval moeten alleen de volgende stappen worden voltooid.

  1. Voer stap 1 tot en met 4 van de vereisten voor de installatie uit.

  2. Communicatie met opslag inschakelen.

  3. Download en voer het installatieprogramma uit om de hulpprogramma's voor momentopnamen te installeren.

  4. Voltooi de installatie van hulpprogramma's voor momentopnamen.

  5. Haal de lijst met volumes op die moeten worden toegevoegd aan het azacsnap-configuratiebestand, in dit voorbeeld is de gebruikersnaam van de opslag cl25h50backup en het IP-adres van de opslag is 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.
    

    Notitie

    In dit voorbeeld maakt deze host deel uit van een scale-outsysteem van 3 knooppunten en kunnen alle drie de opstartvolumes van deze host worden weergegeven. Dit betekent dat alle drie opstartvolumes een momentopname kunnen zijn van deze host en dat alle 3 in de volgende stap aan het configuratiebestand moeten worden toegevoegd.

  6. Maak als volgt een nieuw configuratiebestand. De details van het opstartvolume moeten zich in de OtherVolume stanza bevinden:

    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. Controleer het configuratiebestand en raadpleeg het volgende voorbeeld:

    Gebruik cat de opdracht om de inhoud van het configuratiebestand weer te geven:

    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. Een back-up van het opstartvolume testen

    azacsnap -c backup --volume other --prefix TestBootVolume --retention 1 --configfile BootVolume.json
    
  9. Controleer of deze wordt vermeld, let op de toevoeging van de --snapshotfilter optie om de geretourneerde lijst met momentopnamen te beperken.

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

    Opdrachtuitvoer:

    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. Optioneel automatische back-up van momentopnamen instellen met crontabof een geschikte planner die de azacsnap back-upopdrachten kan uitvoeren.

Notitie

Het instellen van communicatie met SAP HANA is niet vereist.

Een momentopname van opstarten herstellen

Belangrijk

Deze bewerking is voor Azure Large Instance ony. De server wordt hersteld naar het punt waarop de momentopname is gemaakt.

Een momentopname van opstarten kan als volgt worden hersteld:

  1. De klant moet de server afsluiten.
  2. Nadat de server is afgesloten, moet de klant een serviceaanvraag openen die de machine-id en momentopname bevat die moet worden hersteld.

    Klanten kunnen een serviceaanvraag openen via Azure Portal.

  3. Microsoft herstelt de LUN van het besturingssysteem met behulp van de opgegeven machine-id en momentopname en start vervolgens de server op.
  4. De klant moet vervolgens bevestigen dat Server is opgestart en in orde is.

Er moeten geen andere stappen worden uitgevoerd na het herstellen.

Belangrijke feiten die u moet weten over momentopnamen

Belangrijke kenmerken van momentopnamen van opslagvolumes:

  • Locatie van momentopnamen: Momentopnamen zijn te vinden in een virtuele map (.snapshot) binnen het volume. Zie de volgende voorbeelden voor Azure Large Instance:

    • Database: /hana/data/<SID>/mnt00001/.snapshot
    • Gedeelde: /hana/shared/<SID>/.snapshot
    • Logs: /hana/logbackups/<SID>/.snapshot
    • Opstarten: opstartmomentopnamen voor HLI zijn niet zichtbaar vanaf besturingssysteemniveau, maar kunnen worden vermeld met behulp van azacsnap -c details.

    Notitie

    .snapshot is een alleen-lezen verborgen virtuele map die alleen-lezentoegang biedt tot de momentopnamen.

  • Maximale momentopname: De hardware kan maximaal 250 momentopnamen per volume ondersteunen. Met de opdracht momentopname wordt een maximum aantal momentopnamen voor het voorvoegsel bewaard op basis van de retentieset op de opdrachtregel. Alle momentopnamen, naast het retentienummer met hetzelfde voorvoegsel, worden verwijderd.

  • Naam van momentopname: de naam van de momentopname bevat het voorvoegsellabel dat door de klant wordt geleverd.

  • Grootte van de momentopname: is afhankelijk van de grootte/wijzigingen op databaseniveau.

  • Locatie van logboekbestand: Logboekbestanden die door de opdrachten worden gegenereerd, worden uitgevoerd in mappen zoals gedefinieerd in het JSON-configuratiebestand. Dit is standaard een submap waaronder de opdracht wordt uitgevoerd (bijvoorbeeld ./logs).

Volgende stappen