Compartir a través de


Configuración de la herramienta de instantánea coherente con la App de Azure lication

En este artículo se muestra cómo ejecutar el azacsnap -c configure comando de la herramienta de instantánea coherente de App de Azure lication (AzAcSnap) que puede usar con Azure NetApp Files.

Comandos para el archivo de configuración

Puede crear o editar el archivo de configuración de AzAcSnap mediante el azacsnap -c configure comando . El comando tiene las siguientes opciones:

  • --configuration new para crear un nuevo archivo de configuración

  • --configuration edit para editar un archivo de configuración existente

  • [--configfile <config filename>] (parámetro opcional) para permitir nombres de archivo de configuración personalizados

De forma predeterminada, el nombre del archivo de configuración es azacsnap.json. Puede usar un nombre de archivo personalizado con el --configfile= parámetro (por ejemplo, --configfile=<customname>.json).

En el ejemplo siguiente se crea un archivo de configuración para una configuración de Azure Large Instances:

azacsnap -c configure --configuration new

Ejemplo de SAP HANA con el almacenamiento de Azure NetApp Files

+----------------------------------------------------------+
+  For details on configuring AzAcSnap please visit        +
+          https://aka.ms/azacsnap-configure               +
+----------------------------------------------------------+
Building new config file

Q. Add comment #1 to config file (blank entry to exit adding comments)?
A. This is a new config file for AzAcSnap 11 with SAP HANA and Azure NetApp Files

Q. Add comment #2 to config file (blank entry to exit adding comments)?
A.

Q. Enter the database type to add, 'hana', 'oracle', 'db2', 'mssql',
   'exit' (to abort without saving), 'save' (to save and exit)?
A. hana

Checking for SAP HANA external program dependency 'hdbsql'
External dependency 'hdbsql' found.

=== Add SAP HANA details ===

Q. What is the SAP HANA SID (e.g. H80)?
A. H81

Q. What is the SAP HANA Instance Number (e.g. 00)?
A. 00

Q. What is the SAP HANA HDB User Store Key (e.g. `hdbuserstore List`)?
A. AZACSNAP

Q. What is the SAP HANA Server's Address (hostname or IP address)?
A. saphana1

Q. Do you need AzAcSnap to automatically disable/enable backint during snapshot?
   ('y' for yes, 'n' for no) [default='n']
A.

=== Add Hana Storage section ===

Q. Do you want to add Hana database Storage?
   ('y' for yes, 'n' for no)
A. y

--- DATA Volumes are specially prepared before they are snapshot ---

Q. Do you want to add Hana storage + DataVolume #1?
   ('y' for yes, 'n' for no)
A. y

Q. Do you want to add Hana storage + DataVolume #1 + Azure NetApp Files entry #1?
   ('y' for yes, 'n' for no)
A. y

Q. What is the Hana storage + DataVolume #1 + Azure NetApp Files entry #1 + ResourceId?
  (e.g. /subscriptions/.../resourceGroups/.../providers/Microsoft.NetApp/netAppAccounts/.../capacityPools/Premium/volumes/...)?
A. /subscriptions/99999999-9zz9-9z99-z9z9-z999z999zzz9/resourceGroups/saphanasystems/providers/Microsoft.NetApp/netAppAccounts/saphanaanf/capacityPools/Premium/volumes/HANADATA01

Q. What is the Hana storage + DataVolume #1 + Azure NetApp Files entry #1 + Service Principal AuthenticationFile
   (e.g. auth-file.json or <blank> if using Azure Managed ID)?
A.
Hana storage + DataVolume #1 + Azure NetApp Files entry #1 (added)


Q. Do you want to add Hana storage + DataVolume #1 + Azure NetApp Files entry #2?
   ('y' for yes, 'n' for no)
A. n

Q. Do you want to add Hana storage + DataVolume #1 + Azure Large Instance entry #1?
   ('y' for yes, 'n' for no)
A. n

Q. Do you want to add Hana storage + DataVolume #1 + Azure Managed Disk entry #1?
   ('y' for yes, 'n' for no)
A. n

Q. Do you want to add Hana storage + DataVolume #2?
   ('y' for yes, 'n' for no)
A. n

--- OTHER Volumes are snapshot immediately (no special preparation) ---

Q. Do you want to add Hana storage + OtherVolume #1?
   ('y' for yes, 'n' for no)
A. n


Q. Enter the database type to add, 'hana', 'oracle', 'db2', 'mssql',
   'exit' (to abort without saving), 'save' (to save and exit)?
A. save


Editing configuration complete, writing output to 'azacsnap.json'.

Ejemplo de SAP HANA con el almacenamiento de Azure (instancias grandes)

+----------------------------------------------------------+
+  For details on configuring AzAcSnap please visit        +
+          https://aka.ms/azacsnap-configure               +
+----------------------------------------------------------+
Building new config file

Q. Add comment #1 to config file (blank entry to exit adding comments)?
A. This is a new config file for AzAcSnap 11

Q. Add comment #2 to config file (blank entry to exit adding comments)?
A.

Q. Enter the database type to add, 'hana', 'oracle', 'db2', 'mssql',
   'exit' (to abort without saving), 'save' (to save and exit)?
A. hana

Checking for SAP HANA external program dependency 'hdbsql'
External dependency 'hdbsql' found.

=== Add SAP HANA details ===

Q. What is the SAP HANA SID (e.g. H80)?
A. H80

Q. What is the SAP HANA Instance Number (e.g. 00)?
A. 00

Q. What is the SAP HANA HDB User Store Key (e.g. `hdbuserstore List`)?
A. AZACSNAP

Q. What is the SAP HANA Server's Address (hostname or IP address)?
A. testing01

Q. Do you need AzAcSnap to automatically disable/enable backint during snapshot?
   ('y' for yes, 'n' for no) [default='n']
A.

=== Add Hana Storage section ===

Q. Do you want to add Hana database Storage?
   ('y' for yes, 'n' for no)
A. y

--- DATA Volumes are specially prepared before they are snapshot ---

Q. Do you want to add Hana storage + DataVolume #1?
   ('y' for yes, 'n' for no)
A. y

Q. Do you want to add Hana storage + DataVolume #1 + Azure NetApp Files entry #1?
   ('y' for yes, 'n' for no)
A. n

Q. Do you want to add Hana storage + DataVolume #1 + Azure Large Instance entry #1?
   ('y' for yes, 'n' for no)
A. y

Q. What is the Hana storage + DataVolume #1 + Azure Large Instance entry #1 + Storage Certificate File
   (e.g. svmadm_cert.p12)?
A. svm01.p12

Q. What is the Hana storage + DataVolume #1 + Azure Large Instance entry #1 + Storage ResourceId
   (e.g. <hostname>/api/storage/volumes/<UUID>)?
A. svm01/api/storage/volumes/0892dcdc-f760-11ee-a301-000c2989d71e

Q. What is the Hana storage + DataVolume #1 + Azure Large Instance entry #1 + Storage Resource Name
   (e.g. volume01)?
A. hana_data_01

Q. What is the Hana storage + DataVolume #1 + Azure Large Instance entry #1 + Storage Resource Type
   (e.g. volumes or consistency-groups)?
A. volumes
Hana storage + DataVolume #1 + Azure Large Instance entry #1 (added)


Q. Do you want to add Hana storage + DataVolume #1 + Azure Large Instance entry #2?
   ('y' for yes, 'n' for no)
A. n

Q. Do you want to add Hana storage + DataVolume #1 + Azure Managed Disk entry #1?
   ('y' for yes, 'n' for no)
A. n

Q. Do you want to add Hana storage + DataVolume #2?
   ('y' for yes, 'n' for no)
A. n

--- OTHER Volumes are snapshot immediately (no special preparation) ---

Q. Do you want to add Hana storage + OtherVolume #1?
   ('y' for yes, 'n' for no)
A. n


Q. Enter the database type to add, 'hana', 'oracle', 'db2', 'mssql',
   'exit' (to abort without saving), 'save' (to save and exit)?
A. save


Editing configuration complete, writing output to 'azacsnap.json'.

Valores necesarios para el archivo de configuración

En las secciones siguientes se proporcionan instrucciones detalladas sobre los valores necesarios para la sección de base de datos del archivo de configuración.

Al agregar una base de datos de SAP HANA a la configuración, se requieren los siguientes valores:

  • HANA SID (clave JSON: sid): el identificador del sistema (SID) de SAP HANA.

  • HANA Instance Number (Clave JSON: instanceNumber): número de instancia de SAP HANA.

  • HANA HDB User Store Key (clave JSON: hdbUserStoreName): la clave de SAP HANA tal y como se muestra en el hdbuserstore List comando que usa la clave para vincular el usuario con permisos para ejecutar copias de seguridad de base de datos a LAV (nombre de host y puerto). En la sección Habilitar comunicación con la base de datos se proporcionan más detalles y ejemplos.

  • HANA Server's Address (clave JSON: serverAddress): el nombre de host o la dirección IP del servidor de SAP HANA.

  • Do you need AzAcSnap to automatically disable/enable backint during snapshot: el valor predeterminado es n (no). Puede establecerlo y en (sí) para permitir que AzAcSnap deshabilite o vuelva a habilitar la interfaz Backint. En la sección Coexistencia de Backint de este artículo se explica esta opción con más detalle.

  • HANA Server's Address Debe ser uno de los siguientes:

    • Nodo único : nombre de host y dirección IP del nodo.
    • HSR con STONITH : nombre de host y dirección IP del nodo.
    • Escalado horizontal (N+N, N+M): nombre de host actual y dirección IP del nodo maestro.
    • HSR sin STONITH : nombre de host y dirección IP del nodo.
    • Varios SID en un solo nodo : nombre de host y dirección IP del nodo que hospeda esos SID.

Coexistencia de backint

El servicio Azure Backup proporciona una herramienta de copia de seguridad alternativa para SAP HANA. Puede transmitir copias de seguridad de base de datos y registros a Azure Backup.

Algunos clientes quieren combinar las copias de seguridad basadas en Backint de streaming con copias de seguridad normales basadas en instantáneas. Sin embargo, las copias de seguridad basadas en Backint bloquean otros métodos de copia de seguridad, como el uso de una copia de seguridad basada en archivos o una copia de seguridad basada en instantáneas de almacenamiento (por ejemplo, AzAcSnap). Para más información, consulte Ejecución de copias de seguridad de clientes nativos de SAP HANA en una base de datos con Azure Backup.

El proceso que describe la documentación de Azure Backup se ha implementado con AzAcSnap para realizar automáticamente los pasos siguientes:

  1. Forzar un vaciado de copia de seguridad de registros en Backint.
  2. Espere a que finalicen las copias de seguridad en ejecución.
  3. Deshabilite la copia de seguridad basada en Backint.
  4. Coloque SAP HANA en un estado coherente para la copia de seguridad.
  5. Realice una copia de seguridad basada en instantáneas de almacenamiento.
  6. Versión de SAP HANA.
  7. Vuelva a habilitar la copia de seguridad basada en Backint.

Esta opción está deshabilitada de forma predeterminada. Puede habilitarlo ejecutando azacsnap -c configure –configuration edit y respondiendo y (sí) a la pregunta Do you need AzAcSnap to automatically disable/enable backint during snapshot? (y/n) [n].

Al editar la configuración como se describe, se establece el autoDisableEnableBackint valor true en en en el archivo de configuración JSON (por ejemplo, azacsnap.json). Para cambiar este valor también se puede editar el archivo de configuración directamente.

Al agregar el almacenamiento de Azure (instancias grandes) a una sección de base de datos, se requieren los siguientes valores:

  • Storage Certificate File (clave JSON: certificateFile): el archivo de certificado que se usa para autenticarse en el back-end de almacenamiento.
  • Storage ResourceId (clave JSON: resourceUri): el URI completo del recurso, empezando por el nombre de host (por ejemplo, <hostname>/api/storage/volumes/<UUID>)
  • Storage Resource Name (clave JSON: resourceName): el nombre "descriptivo" del recurso (por ejemplo, vol01)
  • Storage Resource Type (clave JSON: resourceType): el tipo de recurso, "volúmenes" o "consistency-groups".

Ejemplo de archivo de configuración

La salida siguiente es solo un archivo de configuración de ejemplo, este ejemplo es el resultado del ejemplo de almacenamiento de SAP HANA con Azure NetApp Files.

cat azacsnap.json
{
  "version": "11",
  "logPath": "./logs",
  "securityPath": "./security",
  "comments": [
    "This is a new config file for AzAcSnap 11 with SAP HANA and Azure NetApp Files"
  ],
  "database": [
    {
      "hana": {
        "serverAddress": "saphana1",
        "sid": "H81",
        "instanceNumber": "00",
        "hdbUserStoreName": "AZACSNAP",
        "savePointAbortWaitSeconds": 600,
        "autoDisableEnableBackint": false,
        "storage": [
          {
            "dataVolumes": [
              {
                "anfStorageVolumes": [
                  {
                    "resourceId": "/subscriptions/99999999-9zz9-9z99-z9z9-z999z999zzz9/resourceGroups/saphanasystems/providers/Microsoft.NetApp/netAppAccounts/saphanaanf/capacityPools/Premium/volumes/HANADATA01",
                    "authFile": "",
                    "subscription": "99999999-9zz9-9z99-z9z9-z999z999zzz9",
                    "resourceGroupName": "saphanasystems",
                    "accountName": "saphanaanf",
                    "poolName": "Premium",
                    "volume": "HANADATA01"
                  }
                ]
              }
            ]
          }
        ]
      }
    }
  ]
}

Nota:

Para un escenario de recuperación ante desastres (DR) en el que ejecutará copias de seguridad en el sitio de recuperación ante desastres, el nombre del servidor de HANA configurado en el archivo de configuración de recuperación ante desastres (por ejemplo, DR.json) en el sitio de recuperación ante desastres debe ser el mismo que el nombre del servidor de producción.

Pasos siguientes