Sugerencias y trucos de uso de la herramienta Azure Application Consistent Snapshot
En este artículo se ofrecen sugerencias y trucos que pueden resultar útiles cuando se usa AzAcSnap.
Configuración de invalidación global para controlar el comportamiento de azacsnap
AzAcSnap 8 introdujo un nuevo archivo de configuración global (.azacsnaprc
) que debe encontrarse en el mismo directorio (actual de trabajo) en el que se ejecuta azacsnap. El nombre de archivo es .azacsnaprc
y con el carácter de punto '.' como inicio del nombre de archivo lo oculta en las listas de directorios estándar. El archivo permite que la configuración global controle el comportamiento de AzAcSnap que se va a establecer. El formato es una entrada por línea con una variable de personalización compatible y un nuevo valor de invalidación.
Configuración, que se puede controlar agregando o editando el archivo de configuración de invalidación global o estableciéndolos como variables de entorno:
- MAINLOG_LOCATION que personaliza la ubicación del archivo de salida "main-log", que se denomina
azacsnap.log
y se introdujo en AzAcSnap 8. Los valores deben ser rutas de acceso absolutas y el valor predeterminado = '.' (que es el directorio de trabajo actual). Por ejemplo, para asegurarse de que el archivo de salida "main-log" vaya al/home/azacsnap/bin/logs
agregue lo siguiente al archivo.azacsnaprc
:MAINLOG_LOCATION=/home/azacsnap/bin/logs
- AZURE_MANAGEMENT_ENDPOINT para personalizar la ubicación del punto de conexión de administración de Azure al que AzAcSnap realizará llamadas a la API REST de Azure en se introdujo en AzAcSnap 9a. Los valores deben ser rutas de acceso de dirección URL y el valor predeterminado = 'https://management.azure.com'. Por ejemplo, para configurar AzAcSnap para asegurarse de que todas las llamadas de administración van al punto de conexión de administración de Azure para US Govt Cloud (ref: Guía de Azure Government para desarrolladores) agregue lo siguiente al archivo
.azacsnaprc
:AZURE_MANAGEMENT_ENDPOINT=https://management.usgovcloudapi.net
Nota:
A partir de AzAcSnap 9a, todos estos valores también se pueden establecer como variables de entorno de línea de comandos, o en lugar de, el archivo .azacsnaprc
. Por ejemplo, en Linux, el AZURE_MANAGEMENT_ENDPOINT
se puede establecer con export AZURE_MANAGEMENT_ENDPOINT=https://management.usgovcloudapi.net
antes de ejecutar AzAcSnap.
Análisis del registro principal
AzAcSnap 8 introdujo un nuevo "main-log" para proporcionar un análisis más sencillo de las ejecuciones de AzAcSnap. La inspiración de este archivo es el catálogo de copia de seguridad de SAP HANA, que muestra cuándo se inició AzAcSnap, cuánto tiempo tardó y cuál es el nombre de la instantánea. Con AzAcSnap, esta idea se ha llevado más allá para incluir información para cada uno de los comandos AzAcSnap, concretamente las opciones -c
, y el archivo tiene las siguientes cabeceras:
DATE_TIME,OPERATION_NAME,STATUS,SID,DATABASE_TYPE,DURATION,SNAPSHOT_NAME,AZACSNAP_VERSION,AZACSNAP_CONFIG_FILE,VOLUME
Cuando AzAcSnap se ejecuta, anexa al registro la información adecuada según el -c
comando usado, los ejemplos de salida son los siguientes:
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;
Este formato permite analizar el archivo con los comandos de Linux watch
, grep
, head
, tail
y column
para obtener actualizaciones continuas de las copias de seguridad de AzAcSnap. Una combinación de ejemplo de estos comandos en un script de shell único para supervisar AzAcSnap es la siguiente:
#!/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
Genera la salida siguiente actualizada cada dos segundos.
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
Limitación de permisos de entidad de servicio
Puede que sea necesario limitar el ámbito de la entidad de servicio de AzAcSnap. Revise la documentación de Azure RBAC para obtener más información sobre la administración de acceso específico de recursos de Azure.
A continuación se proporciona una definición de roles de ejemplo con las acciones mínimas necesarias para que AzAcSnap funcione.
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>"] \
}'
Para que las opciones de restauración funcionen correctamente, la entidad de servicio AzAcSnap también debe ser capaz de crear volúmenes. En este caso, la definición de roles necesita una cláusula "Actions" adicional agregada, por lo que la entidad de servicio completa debe tener un aspecto similar al del ejemplo siguiente.
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>"] \
}'
Realización manual de instantáneas
Antes de ejecutar los comandos de copia de seguridad (azacsnap -c backup
), compruebe la configuración ejecutando los comandos de prueba y compruebe que se ejecutan correctamente. La ejecución correcta de estas pruebas ha demostrado que azacsnap
puede comunicarse con la base de datos de SAP HANA y el sistema de almacenamiento subyacente del sistema SAP HANA en Azure (instancias grandes) o Azure NetApp Files.
azacsnap -c test --test hana
azacsnap -c test --test storage
A continuación, para realizar una copia de seguridad manual de la instantánea de base de datos, ejecute el siguiente comando:
azacsnap -c backup --volume data --prefix hana_TEST --retention=1
Configuración de la copia de seguridad automática de instantáneas
Es habitual que los sistemas Unix/Linux usen cron
para automatizar la ejecución de comandos en un sistema. La práctica estándar de las herramientas de instantáneas consiste en configurar el crontab
del usuario.
A continuación se muestra un ejemplo de crontab
para que el usuario azacsnap
automatice las instantáneas.
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)
Explicación del crontab anterior.
MAILTO=""
: al tener un valor vacío, esto impide que cron intente enviar automáticamente el correo electrónico al usuario local de Linux al ejecutar la entrada crontab.- Las versiones abreviadas de intervalos para las entradas de crontab se explican por sí mismas:
@monthly
= se ejecuta una vez al mes, es decir, "0 0 1 * *".@weekly
= se ejecuta una vez a la semana, es decir, "0 0 * * 0".@daily
= se ejecuta una vez al día, es decir, "0 0 * * *".@hourly
= se ejecuta una vez a la hora, es decir, "0 * * * *".
- Las cinco primeras columnas se usan para designar horas, consulte los ejemplos de columna siguientes:
0,15,30,45
: cada 15 minutos0-23
: cada hora*
:todos los días*
: cada mes*
: todos los días de la semana
- Línea de comandos que se va a ejecutar entre paréntesis "()"
. /home/azacsnap/.profile
= extraer el perfil del usuario para configurar su entorno, incluidos $PATH, etc.cd /home/azacsnap/bin
= cambiar el directorio de ejecución a la ubicación "/home/azacsnap/bin" donde se encuentran los archivos de configuración.azacsnap -c .....
= comando azacsnap completo que se va a ejecutar, incluidas todas las opciones.
Para obtener más información sobre cron y el formato del archivo crontab, vea cron.
Nota:
Los usuarios son responsables de supervisar los trabajos cron para asegurarse de que las instantáneas se generan correctamente.
Administración de archivos de registro de AzAcSnap
AzAcSnap escribe la salida de su operación en los archivos de registro para ayudar con la depuración y para validar el funcionamiento correcto. Estos archivos de registro siguen creciendo a menos que se administren activamente. Afortunadamente, los sistemas basados en UNIX tienen una herramienta para administrar y archivar los archivos de registro llamada logrotate.
La salida siguiente proporciona una configuración de ejemplo para logrotate. Esta configuración guarda un máximo de 31 registros (aproximadamente un mes), y cuando los archivos de registro son mayores de 10 000 los alterna cambiándoles el nombre con un número agregado al nombre del archivo y los comprime.
# azacsnap logrotate configuration file
compress
~/bin/azacsnap*.log {
rotate 31
size 10k
}
Una vez creado el archivo logrotate.conf
, el comando logrotate
debe ejecutarse periódicamente para archivar los archivos de registro de AzAcSnap en consecuencia. La automatización del comando logrotate
se puede realizar mediante cron. La salida siguiente es una línea de crontab del usuario de azacsnap, en este ejemplo se ejecuta logrotate diariamente mediante el archivo de configuración ~/logrotate.conf
.
@daily /usr/sbin/logrotate -s ~/logrotate.state ~/logrotate.conf >> ~/logrotate.log
Nota:
En el ejemplo anterior, el archivo logrotate.conf está en el directorio principal del usuario (~).
Después de varios días, los archivos de registro de azacsnap deben ser similares a la siguiente lista de directorios.
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
Supervisión de las instantáneas
Se deben supervisar las siguientes condiciones para garantizar un sistema correcto:
- Espacio disponible en disco. Las instantáneas consumen lentamente espacio en disco en función de la tasa de cambio de nivel de bloque, ya que se conservan los bloques de disco más antiguos en la instantánea.
- Para ayudar a automatizar la administración del espacio en disco, use las opciones
--retention
y--trim
para limpiar automáticamente las instantáneas y los archivos de registro de base de datos antiguos.
- Para ayudar a automatizar la administración del espacio en disco, use las opciones
- Ejecución correcta de las herramientas de instantáneas
- Compruebe el archivo
*.result
para ver si se ha realizado la última ejecución deazacsnap
. - Compruebe
/var/log/messages
para ver la salida del comandoazacsnap
.
- Compruebe el archivo
- Coherencia de las instantáneas mediante su restauración en otro sistema periódicamente.
Nota:
Para mostrar los detalles de la instantánea, ejecute el comando azacsnap -c details
.
Eliminación de una instantánea
Para eliminar una instantánea, use el comando azacsnap -c delete
. No es posible eliminar instantáneas del nivel de sistema operativo. Debe usar el comando correcto (azacsnap -c delete
) para eliminar las instantáneas de almacenamiento.
Importante
Tenga cuidado al eliminar una instantánea. Una vez eliminadas, es IMPOSIBLE recuperar las instantáneas eliminadas.
Restauración de una instantánea
Una instantánea de volumen de almacenamiento se puede restaurar en un otro volumen (-c restore --restore snaptovol
). En el caso de Azure (instancias grandes), el volumen se puede revertir a una instantánea (-c restore --restore revertvolume
).
Nota:
NO se ha proporcionado ningún comando de recuperación de base de datos.
Una instantánea puede volver a copiarse en el área de datos de SAP HANA, pero SAP HANA no debe estar en ejecución cuando se realiza una copia (cp /hana/data/H80/mnt00001/.snapshot/hana_hourly.2020-06-17T113043.1586971Z/*
).
En el caso de Azure (instancias grandes), puede ponerse en contacto con el equipo de operaciones de Microsoft; para ello, abra una solicitud de servicio para restaurar la instantánea que quiera a partir de las instantáneas existentes disponibles. Puede abrir una solicitud de servicio a través de Azure Portal.
Si decide realizar la conmutación por error de recuperación ante desastres, el comando azacsnap -c restore --restore revertvolume
en el sitio de recuperación ante desastres pone automáticamente a disposición las instantáneas de volumen más recientes (/hana/data
y /hana/logbackups
) para permitir una recuperación de SAP HANA. Use este comando con precaución, ya que interrumpe la replicación entre los sitios de producción y de recuperación ante desastres.
Configuración de instantáneas solo para volúmenes de "arranque"
Importante
Esta operación solo se aplica a Azure (instancias grandes).
En algunos casos, los clientes ya tienen herramientas para proteger SAP HANA y solo quieren configurar instantáneas de volumen de "arranque". En este caso, solo es necesario completar los pasos siguientes.
Complete los pasos del 1 al 4 de los requisitos previos para la instalación.
Habilitar la comunicación con el almacenamiento.
Descargue y ejecute el instalador para instalar las herramientas de instantánea.
Complete la configuración de las herramientas de instantáneas.
Obtenga la lista de volúmenes que se van a agregar al archivo de configuración azacsnap; en este ejemplo, el nombre de usuario de Storage es
cl25h50backup
y la dirección IP de Storage es10.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:
En este ejemplo, este host forma parte de un sistema de 3 nodos de escalabilidad horizontal y los tres volúmenes de arranque se pueden ver desde este host. Esto significa que los tres volúmenes de arranque pueden ser instantáneas de este host y que los tres deben agregarse al archivo de configuración en el paso siguiente.
Cree otro archivo de configuración tal y como se indica a continuación. Los detalles del volumen de arranque deben estar en la estrofa 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'.
Compruebe el archivo de configuración, consulte el ejemplo siguiente:
Use el comando
cat
para ver el contenido del archivo de configuración: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": [] } } ] }
Prueba de una copia de seguridad de volumen de arranque
azacsnap -c backup --volume other --prefix TestBootVolume --retention 1 --configfile BootVolume.json
Compruebe que aparece, tenga en cuenta la adición de la opción
--snapshotfilter
para limitar la lista de instantáneas devuelta.azacsnap -c details --snapshotfilter TestBootVolume --configfile BootVolume.json
Salida 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
Opcional Configure la copia de seguridad automática de instantáneas con
crontab
o un programador adecuado capaz de ejecutar los comandos de copia de seguridad deazacsnap
.
Nota:
No es necesario configurar la comunicación con SAP HANA.
Restauración de una instantánea de "arranque"
Importante
Esta operación solo se destina a Azure (instancias grandes). El servidor se restaurará hasta el momento en que se tomó la instantánea.
Se puede recuperar una instantánea de "arranque" tal y como se indica a continuación:
- El cliente debe apagar el servidor.
- Después de apagar el servidor, el cliente tendrá que abrir una solicitud de servicio que contenga el identificador de la máquina y la instantánea que se va a restaurar.
Los clientes pueden abrir una solicitud de servicio a través de Azure Portal.
- Microsoft restaura el LUN del sistema operativo mediante el identificador de máquina y la instantánea especificados y, a continuación, arranca el servidor.
- A continuación, el cliente debe confirmar que el servidor ha arrancado y se encuentra en buen estado.
No se realizará ningún otro paso después de la restauración.
Hechos clave que se deben conocer sobre las instantáneas
Atributos clave de las instantáneas de volumen de almacenamiento:
Ubicación de las instantáneas: las instantáneas se pueden encontrar en un directorio virtual (
.snapshot
) dentro del volumen. Consulte los siguientes ejemplos de Azure (instancias grandes).- Base de datos:
/hana/data/<SID>/mnt00001/.snapshot
- Elementos compartidos:
/hana/shared/<SID>/.snapshot
- Registros:
/hana/logbackups/<SID>/.snapshot
- Arranque: las instantáneas de arranque para HLI son no visibles desde el nivel de sistema operativo, pero se pueden mostrar con
azacsnap -c details
.
Nota:
.snapshot
es una carpeta virtual oculta de solo lectura que proporciona acceso de solo lectura a las instantáneas.- Base de datos:
Instantánea máxima: el hardware puede admitir hasta 250 instantáneas por volumen. El comando snapshot mantiene un número máximo de instantáneas para el prefijo en función del conjunto de retención en la línea de comandos. Se eliminan más instantáneas, más allá del número de retención con el mismo prefijo.
Nombre de instantánea: el nombre de la instantánea incluye la etiqueta de prefijo proporcionada por el cliente.
Tamaño de la instantánea: depende del tamaño o los cambios en el nivel de base de datos.
Ubicación de los archivos de registro: los archivos de registro generados por los comandos se muestran en carpetas, tal y como se define en el archivo de configuración JSON, que, de forma predeterminada, es una subcarpeta en la que se ejecuta el comando (por ejemplo,
./logs
).