Fazer backup usando a ferramenta Instantâneo Consistente de Aplicativo do Azure
Este artigo fornece um guia para executar o comando de backup da ferramenta Azure Application Consistent Snapshot que você pode usar com os Arquivos NetApp do Azure.
Introdução
Um backup baseado em instantâneo de armazenamento é executado usando o azacsnap -c backup
comando. Este comando executa a orquestração de um instantâneo de armazenamento consistente de banco de dados nos volumes DATA e um instantâneo de armazenamento (sem qualquer configuração de consistência de banco de dados) nos volumes OTHER.
Para volumes azacsnap
DATA prepara o banco de dados para um instantâneo de armazenamento, em seguida, ele leva um instantâneo de armazenamento para todos os volumes configurados, finalmente, ele informa ao banco de dados que o instantâneo está completo. Ele também gerencia todas as entradas do banco de dados que registram a atividade de backup de snapshot (por exemplo, catálogo de backup do SAP HANA).
Opções de comando
O -c backup
comando usa os seguintes argumentos:
--volume=
tipo de volume para instantâneo, este parâmetro pode conterdata
,other
ouall
data
Captura instantâneos dos volumes dentro dadataVolume
sub-rotina do arquivo de configuração.- processo de instantâneo de volume de dados
- Coloque o banco de dados no modo de backup.
- tirar instantâneos dos volumes listados na sub-rotina do arquivo de
"dataVolume"
configuração. - Tire o banco de dados do modo de backup.
- Execute o gerenciamento de snapshots.
- processo de instantâneo de volume de dados
other
Captura instantâneos dos volumes dentro daotherVolume
sub-rotina do arquivo de configuração.- outro processo de instantâneo de volume
- tirar instantâneos dos volumes listados na sub-rotina do arquivo de
"otherVolume"
configuração. - Execute o gerenciamento de snapshots.
- tirar instantâneos dos volumes listados na sub-rotina do arquivo de
- outro processo de instantâneo de volume
all
Snapshots de todos os volumes na estrofe e, emdataVolume
seguida, todos os volumes naotherVolume
estrofe do arquivo de configuração. O processamento é tratado na ordem descrita da seguinte forma:- todo o processo de snapshot de volumes
- Data Volume Snapshot (igual à opção normal
--volume data
)- Coloque o banco de dados no modo de backup.
- tirar instantâneos dos volumes listados na sub-rotina do arquivo de
"dataVolume"
configuração. - Tire o banco de dados do modo de backup.
- Execute o gerenciamento de snapshots.
- outro instantâneo de volume (igual à opção normal
--volume other
)- tirar instantâneos dos volumes listados na sub-rotina do arquivo de
"otherVolume"
configuração. - Execute o gerenciamento de snapshots.
- tirar instantâneos dos volumes listados na sub-rotina do arquivo de
- Data Volume Snapshot (igual à opção normal
- todo o processo de snapshot de volumes
Nota
Ao criar um arquivo de configuração separado com o volume de inicialização como otherVolume, é possível que
boot
instantâneos sejam tirados em um cronograma totalmente diferente (por exemplo, diariamente).--prefix=
O prefixo do instantâneo do cliente para o nome do instantâneo. Este parâmetro tem duas finalidades. Em primeiro lugar, forneça um nome exclusivo para o agrupamento de instantâneos. Em segundo lugar, para determinar o--retention
número de snapshots de armazenamento que são mantidos para o .--prefix
Importante
Apenas caracteres alfanuméricos ("A-Z,a-z,0-9"), sublinhado ("_") e traço ("-") são permitidos.
--retention
o número de instantâneos do definido--prefix
a ser mantido. Todos os instantâneos extras são removidos depois que um novo instantâneo é tirado para isso--prefix
.--trim
disponível para SAP HANA v2 e posterior, essa opção mantém o catálogo de backup e os backups de log e catálogo em disco. O número de entradas a serem mantidas no catálogo de backup é determinado pela--retention
opção acima e exclui entradas mais antigas para o prefixo definido (--prefix
) do catálogo de backup e do backup de logs físicos relacionados. Ele também exclui todas as entradas de backup de log mais antigas do que a entrada de backup não de log mais antiga. Essa--trim
operação ajuda a evitar que os backups de log esgotem todo o espaço em disco disponível.Nota
O comando de exemplo a seguir manterá 9 snapshots de armazenamento e garantirá que o catálogo de backup seja cortado continuamente para corresponder aos 9 snapshots de armazenamento que estão sendo mantidos.
azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim
[--flush]
uma opção para solicitar que o kernel do sistema operacional libere buffers de E/S para volumes depois que o banco de dados for colocado em "modo de backup". Em versões anteriores usávamos os valores de "ponto de montagem" para indicar volumes a serem liberados, com AzAcSnap 10 a--flush
opção cuidará disso. Portanto, essa chave/valor ("ponto de montagem") pode ser removido do arquivo de configuração.- No Windows, os volumes rotulados como "Windows" ou "Recuperação" e NTFS não serão liberados. Você também pode adicionar "noflush" ao rótulo do volume e ele não será lavado.
- No Linux, todas as E/S são liberadas usando o comando Linux
sync
.
A execução do exemplo a seguir no mesmo host que executa o banco de dados irá:
- Coloque o banco de dados em "modo de backup".
- Solicite uma liberação de buffers de E/S no kernel do sistema operacional para volumes locais (consulte os detalhes específicos do sistema operacional).
- Tire um instantâneo de armazenamento.
- Solte o banco de dados do "modo de backup".
azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim --flush
[--ssl=]
um parâmetro opcional que define o método de criptografia usado para se comunicar com o SAP HANA, ouopenssl
commoncrypto
. Se definido, então oazacsnap -c backup
comando espera encontrar dois arquivos no mesmo diretório, esses arquivos devem ser nomeados após o SID correspondente. Consulte Usando SSL para comunicação com o SAP HANA. O exemplo a seguir tira umhana
instantâneo de tipo com um prefixo dehana_TEST
e mantém9
deles se comunicando com o SAP HANA usando SSL (openssl
).azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim --ssl=openssl
[--configfile <config filename>]
é um parâmetro opcional que permite nomes de arquivo de configuração personalizados.
Os backups de snapshot são rápidos
A duração de um backup de snapshot é independente do tamanho do volume, com um volume de 10 TB sendo ajustado dentro do mesmo tempo aproximado que um volume de 10 GB.
Os principais fatores que afetam o tempo de execução geral são o número de volumes a serem instantâneos e quaisquer alterações no --retention
parâmetro (onde uma redução pode aumentar o tempo de execução à medida que os snapshots em excesso são removidos).
Na configuração de exemplo fornecida para a Instância Grande do Azure, os instantâneos dos dois volumes levaram menos de 5 segundos para serem concluídos. Para os Arquivos NetApp do Azure, os instantâneos para os dois volumes levariam cerca de 60 segundos.
Nota
Se o --retention
for significativamente reduzido em relação ao tempo azacsnap
anterior é executado (por exemplo, de --retention 50
para --retention 5
), então o tempo necessário aumentará conforme azacsnap
a necessidade para remover os instantâneos extras.
Exemplo com data
parâmetro
azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim
O comando não envia para o console, mas grava em um arquivo de log, um arquivo de resultado e /var/log/messages
.
Neste exemplo, o nome do arquivo de log é azacsnap-backup-azacsnap.log
(consulte Arquivos de log).
Ao executar o comando -c backup
com a --volume data
opção, um arquivo de resultado também é gerado como um arquivo para permitir a verificação rápida do resultado de um backup. O arquivo de resultado tem o mesmo nome base que o arquivo de log, com .result
seu sufixo.
Neste exemplo, o nome do arquivo de resultado é azacsnap-backup-azacsnap.result
e contém a seguinte saída:
cat logs/azacsnap-backup-azacsnap.result
Database # 1 (H80) : completed ok
O /var/log/messages
arquivo contém a mesma saída que o .result
arquivo. Veja o exemplo a seguir (executar como root):
grep "azacsnap.*Database" /var/log/messages | tail -n10
Jul 2 05:22:07 server01 azacsnap[183868]: Database # 1 (H80) : completed ok
Jul 2 05:27:06 server01 azacsnap[4069]: Database # 1 (H80) : completed ok
Jul 2 05:32:07 server01 azacsnap[19769]: Database # 1 (H80) : completed ok
Jul 2 05:37:06 server01 azacsnap[35312]: Database # 1 (H80) : completed ok
Jul 2 05:42:06 server01 azacsnap[50877]: Database # 1 (H80) : completed ok
Jul 2 05:47:06 server01 azacsnap[66429]: Database # 1 (H80) : completed ok
Jul 2 05:52:06 server01 azacsnap[82964]: Database # 1 (H80) : completed ok
Jul 2 05:57:06 server01 azacsnap[98522]: Database # 1 (H80) : completed ok
Jul 2 05:59:13 server01 azacsnap[105519]: Database # 1 (H80) : completed ok
Jul 2 06:02:06 server01 azacsnap[114280]: Database # 1 (H80) : completed ok
Exemplo com other
parâmetro
azacsnap -c backup --volume other --prefix logs_TEST --retention 9
O comando não é enviado para o console, mas grava somente em um arquivo de log. Ele não grava em um arquivo de resultado ou /var/log/messages
.
Neste exemplo, o nome do arquivo de log é azacsnap-backup-azacsnap.log
(consulte Arquivos de log).
Exemplo com other
parâmetro (para backup do sistema operacional do host)
Nota
O uso de outro arquivo de configuração (--configfile bootVol.json
) que contém apenas os volumes de inicialização.
azacsnap -c backup --volume other --prefix boot_TEST --retention 9 --configfile bootVol.json
Importante
Para a Instância Grande do Azure, o parâmetro de volume do arquivo de configuração para o volume de inicialização pode não estar visível no nível do sistema operacional host. Esse valor pode ser fornecido pelo Microsoft Operations.
O comando não é enviado para o console, mas grava somente em um arquivo de log. Ele não grava em um arquivo de resultado ou /var/log/messages
.
Neste exemplo, o nome do arquivo de log é azacsnap-backup-bootVol.log
(consulte Arquivos de log).
Ficheiros de registo
O nome do arquivo de log é construído a partir do seguinte "(nome do comando)-(a -c
opção)-(o nome do arquivo de configuração)". Por exemplo, se estiver executando o comando azacsnap -c backup --configfile h80.json --retention 5 --prefix one-off
, o arquivo de log será chamado azacsnap-backup-h80.log
de . Ou se estiver usando a -c test
opção com o mesmo arquivo de configuração (por exemplo azacsnap -c test --configfile h80.json
), o arquivo de log é chamado azacsnap-test-h80.log
de .
Nota
Os arquivos de log podem ser mantidos automaticamente usando este guia.