Backup e recuperação baseados em snapshot de disco para SAP HANA

Neste guia de planejamento, descrevemos o recurso de snapshot do disco do Agente para SAP do Google Cloud. Para informações sobre os outros recursos, consulte o Guia de planejamento do agente para SAP do Google Cloud.

O recurso de snapshot de disco permite executar operações de backup e recuperação para sistemas de escalonamento vertical do SAP HANA em execução em instâncias de VM do Compute Engine.

Esse recurso é integrado ao recurso de snapshots de dados do SAP HANA, que permite usar snapshots padrão do disco /hana/data para fazer backup e recuperar o banco de dados do SAP HANA.

Para instruções sobre como executar operações de backup e recuperação para o SAP HANA usando esse recurso do agente, consulte Executar backup e recuperação do SAP HANA usando snapshots de disco.

Estimativa de custo mensal

Os snapshots padrão criados serão cobrados. Para informações sobre preços, consulte Snapshots de disco.

Para estimar os custos mensais do uso de snapshots de disco como backups do volume de dados do SAP HANA, use a calculadora de preços do Google Cloud. Use as informações a seguir para estimar melhor o custo:

  • Tamanho total estimado para o snapshot do disco inicial.
  • Tamanho estimado do delta para cada snapshot do disco.
  • Frequência de snapshots. Por exemplo, se você criar um snapshot por dia, a frequência será de 24 horas.
  • Tempo de retenção do snapshot.
  • Redundância de armazenamento de snapshots: região única ou multirregião.
  • Transferência de dados estimada entre regiões e entre regiões pela sua rede. Por exemplo, você pode gerar taxas de rede se criar ou restaurar um snapshot padrão armazenado em um local diferente do disco de origem.

Limitações

As limitações a seguir se aplicam ao backup e recuperação baseados em snapshots ao usar o agente para SAP do Google Cloud:

  • Não é possível usar o recurso de snapshot de disco do agente para implantações de escalonamento horizontal do SAP HANA. Para mais informações, consulte Como usar snapshots com implantações de escalonamento horizontal.
  • Você precisa garantir o seguinte para seu volume /hana/data:
    • É hospedado de maneira independente em um volume de Persistent Disk baseado em SSD ou Hyperdisk sem faixa. Esse disco não pode hospedar outro volume do SAP HANA. Conforme descrito na Nota SAP 2039883 - Perguntas frequentes: banco de dados SAP HANA e snapshots de dados (snapshots de armazenamento), para ser possível recuperar o banco de dados SAP HANA, o snapshot do armazenamento não pode incluem a área de registro do banco de dados.
    • Ele é mapeado para um volume lógico. Isso permite que o agente processe corretamente o ponto de montagem durante operações de backup ou recuperação baseadas em snapshots de disco.
  • Se você tiver implantado o sistema SAP HANA usando ferramentas de infraestrutura como código (IaC, na sigla em inglês), como o Terraform, o agente poderá criar backups baseados em snapshot, mas não poderá executar operações de recuperação. Para mais informações, consulte Como usar snapshots com implantações baseadas em ferramentas de IaC.
  • Execute operações de backup e recuperação usando a instância do agente em execução na VM do host do SAP HANA. Não é possível usar instâncias de agente em execução em outras VMs.
  • Para executar as operações de backup e recuperação, é preciso conceder acesso de sudo a determinados comandos do sistema operacional, fornecendo acesso raiz ou usando um grupo sudo apropriado. Para mais informações, consulte Definir permissões.

Permissões necessárias

Para permitir que o Agente para SAP do Google Cloud execute operações de backup e recuperação baseadas em snapshots de disco para seu sistema SAP HANA, é necessário definir permissões para:

  • O projeto do Google Cloud em que seu sistema SAP HANA está em execução.
  • O usuário que executa os comandos do agente no sistema operacional, que pode ser o usuário do sistema operacional SAP HANA ou seu próprio usuário.
  • O usuário do banco de dados SAP HANA usado pelo agente.

Para informações sobre as permissões que você precisa conceder, consulte Definir permissões.

Criar backups baseados em snapshot de disco

Para criar backups baseados em snapshot de disco para SAP HANA usando o Agente para SAP do Google Cloud, execute o comando hanadiskbackup. Para instruções, consulte Executar backup e recuperação do SAP HANA usando snapshots de disco.

O fluxograma a seguir mostra as etapas que o agente executa para criar o backup:

Fluxograma para backup baseado em snapshot de disco para SAP HANA usando o agente do Google Cloud para SAP

Como o recurso de snapshot de disco do agente cria backup para o SAP HANA

Depois de executar o comando hanadiskbackup, o agente faz o seguinte:

  1. Valida todos os argumentos de entrada fornecidos para o comando hanadiskbackup.
  2. Conecta-se ao banco de dados SAP HANA usando as entradas fornecidas para o comando "hanadiskbackup".
  3. Verifica se não há snapshots existentes.

    Se houver algum snapshot do disco que hospeda o volume /hana/data e se você não tiver especificado abandon-prepared=TRUE com o comando hanadiskbackup, o agente sairá sai desse procedimento e nenhum backup é criado. Em seguida, revise manualmente e execute o comando hanadiskbackup de novo.

  4. Informa ao SAP HANA que a criação do snapshot foi iniciada.
  5. Cria um snapshot do volume do Persistent Disk Hyperdisk que hospeda o volume /hana/data.
  6. Informa ao SAP HANA que a criação do snapshot foi bem-sucedida.

Se o agente não concluir alguma etapa do procedimento de backup, ele marcará a criação do snapshot como UNSUCCESSFUL e sairá do procedimento. Em seguida, revise manualmente e execute o comando hanadiskbackup de novo. Você pode visualizar as entradas no arquivo /var/log/google-cloud-sap-agent/hanadiskbackup.log para descobrir por que o agente saiu do procedimento de backup.

Criar backups delta

Quando você executa o comando hanadiskbackup, o agente cria um snapshot padrão para o disco especificado.

Uma vantagem dos snapshots de disco padrão é que eles são incrementais, em que cada backup subsequente armazena apenas alterações incrementais de blocos em vez de criar um backup totalmente novo. Isso significa que, depois que você criar o primeiro snapshot de disco para SAP HANA usando o agente para SAP do Google Cloud, todos os snapshots criados serão backups delta, por padrão. Nenhuma outra ação é necessária para criar backups delta.

Para mais informações, consulte Como funcionam os snapshots padrão incrementais.

Criptografar snapshots de disco

Por padrão, os dados no Google Cloud são criptografados em repouso com o AES-256. Isso se aplica aos dados armazenados em discos e snapshots de disco. Como alternativa, criptografe os snapshots usando uma chave de criptografia gerenciada pelo cliente (CMEK, na sigla em inglês) ou uma chave de criptografia fornecida pelo cliente (CSEK, na sigla em inglês).

Também é possível implementar uma camada extra de segurança ativando a criptografia fornecida pelo SAP HANA para o volume de dados. Para mais informações sobre essa opção, consulte Como ativar a criptografia de dados e volumes de registros.

Recuperar dados do SAP HANA usando snapshots de disco

Para iniciar a recuperação do banco de dados SAP HANA usando um backup baseado em snapshot de disco, execute o comando hanadiskrestore. Para instruções, consulte Executar backup e recuperação do SAP HANA usando snapshots de disco.

O fluxograma a seguir mostra como usar o recurso de snapshot de disco do agente para recuperar um banco de dados do SAP HANA:

Fluxograma para recuperação baseada em snapshot de disco para SAP HANA usando o agente para SAP do Google Cloud

Como executar a recuperação do SAP HANA usando o recurso de snapshot de disco do agente

Para recuperar o banco de dados SAP HANA usando snapshots de disco, faça o seguinte:

  1. Recupere o disco que hospeda o volume /hana/data usando o agente para SAP do Google Cloud. Para fazer isso, execute o comando hanadiskrestore do agente. Para instruções, consulte Executar backup e recuperação do SAP HANA usando snapshots de disco.

    Veja a seguir o procedimento de alto nível que o agente realiza para recuperar o volume de dados do SAP HANA usando um snapshot de disco. O fluxograma anterior mostra essas etapas.

    1. Valida todos os argumentos de entrada fornecidos para o comando hanadiskrestore.
    2. Interrompe o SAP HANA.
    3. Desconecte o volume /hana/data.
    4. Desconecte o disco que hospeda o volume /hana/data da VM do host.
    5. Crie um novo disco para o volume /hana/data a partir de um snapshot de disco.
    6. Anexe o novo disco à VM do host.
    7. Faça a verificação novamente dos grupos de volumes para o SAP HANA.
  2. Recupere manualmente o banco de dados SAP HANA para o horário do snapshot ou um momento específico, conforme descrito nas subseções a seguir.

Se o agente não concluir alguma etapa do procedimento, ele sairá do procedimento. Em seguida, é necessário analisar manualmente, resolver problemas, se necessário, e tentar o comando hanadiskrestore de novo. É possível visualizar as entradas no arquivo /var/log/google-cloud-sap-agent/hanadiskrestore.log para descobrir por que o agente saiu do procedimento de recuperação do banco de dados.

Recuperar um ponto no tempo específico

Para recuperar o banco de dados SAP HANA para um momento específico, além de um snapshot do disco que hospeda o volume /hana/data, você precisa dos backups delta e de registro do SAP HANA necessários criados anteriormente para do seu banco de dados.

É possível criar o backup de registro do SAP HANA usando o recurso Backint do agente ou um backup do sistema de arquivos do banco de dados SAP HANA.

Durante a recuperação, se você especificar um carimbo de data/hora no futuro, seu banco de dados SAP HANA será recuperado para o estado mais recente.

Recuperar de uma fonte externa

É possível usar os backups baseados em snapshot de disco que você criou para um sistema SAP HANA para recuperar outro sistema SAP HANA. Também é possível usar esse recurso para mover sistemas entre ambientes, por exemplo, de um ambiente de teste para um de controle de qualidade.

Para instruções, consulte Executar uma cópia ou atualização do sistema.

Como usar snapshots de disco com implantações do SAP HANA

As seções a seguir fornecem informações de planejamento específicas do cenário para usar o recurso de snapshot de disco do Agent for SAP do Google Cloud, com sistemas de escalonamento vertical do SAP HANA:+

Como usar snapshots com implantações de alta disponibilidade

Em um sistema de escalonamento vertical do SAP HANA em execução em um cluster de alta disponibilidade (HA), você precisa instalar o agente do Google Cloud para SAP no nó principal e no nó de espera do cluster.

Para criar backups baseados em snapshot de disco para um sistema de alta disponibilidade do SAP HANA, você precisa executar o comando hanadiskbackup apenas no disco /hana/data do nó principal. Se ocorrer um evento de failover, será necessário executar o comando hanadiskbackup no novo nó principal. Além disso, ao executar o comando, é preciso especificar o nome do host ou o endereço IP do SAP HANA do host do nó principal. Não especifique o IP virtual (VIP, na sigla em inglês) do SAP HANA usado no cluster.

Ao executar operações de recuperação, use o snapshot do disco para recuperar o disco que hospeda o volume /hana/data no nó principal ou de espera. É possível recuperar o banco de dados SAP HANA na hora em que o snapshot do disco foi criado ou em qualquer momento específico.

Como usar snapshots com implantações de DR

Para um sistema de escalonamento vertical do SAP HANA em uma implantação de recuperação de desastres (DR) no Google Cloud, você precisa instalar o agente do Google Cloud para SAP nos hosts primário e em espera.

Para criar backups baseados em snapshot de disco para um sistema de alta disponibilidade do SAP HANA, você precisa executar o comando hanadiskbackup apenas no disco /hana/data na instância de banco de dados principal. Se você interromper a replicação do sistema SAP HANA e promover a instância do banco de dados em espera, será necessário executar o comando hanadiskbackup na nova instância principal.

Para implantações de DR, você executa operações de recuperação na instância do banco de dados primária. É possível recuperar o banco de dados SAP HANA na hora em que o snapshot do disco foi criado ou em qualquer momento específico.

Como usar snapshots com implantações de escalonamento horizontal

O recurso de snapshot de disco do agente para SAP do Google Cloud não é compatível com implantações de escalonamento horizontal do SAP HANA.

No entanto, é possível usar as opções a seguir para executar operações de backup e recuperação para implantações de escalonamento horizontal do SAP HANA:

Como usar snapshots com implantações baseadas em ferramentas de IaC

O recurso de snapshot de disco do agente para SAP do Google Cloud é parcialmente compatível com sistemas SAP HANA que foram implantados usando ferramentas de infraestrutura como código (IaC, na sigla em inglês), como o Terraform.

O agente pode criar backups baseados em snapshots para esses sistemas, mas não pode executar operações de recuperação. Isso ocorre porque a recuperação baseada em snapshot usando o agente inclui a recriação do disco para o volume /hana/data, o que pode causar conflitos ou problemas com a forma como a IaC executa o gerenciamento de estado.

Por exemplo, depois de executar a recuperação usando o agente, sempre que a ferramenta de IaC verificar o status do disco que hospeda o volume /hana/data, a ferramenta tentará reverter para a configuração definida do sistema anexando o disco anterior ou excluindo o novo disco e recriando o disco anterior. Qualquer uma dessas ações pode afetar gravemente seu banco de dados SAP HANA, a ponto de torná-lo inutilizável.

No entanto, a maioria das ferramentas de IaC fornece fluxos de trabalho que permitem modificar o estado do sistema para acompanhar as mudanças na infraestrutura gerenciada. Veja a seguir um procedimento de alto nível que pode ser usado para executar a recuperação de sistemas SAP HANA implantados usando ferramentas de IaC:

  1. Interrompa o banco de dados SAP HANA. Para instruções, consulte o documento da SAP Iniciando e interrompendo sistemas SAP HANA.

  2. Interrompa a instância de VM do Compute Engine que hospeda o sistema SAP HANA. Em implantações de alta disponibilidade ou DR, interrompa todas as VMs. Para mais instruções, consulte Interromper uma VM.

  3. No arquivo de configuração IaC que contém a definição do seu sistema SAP HANA, modifique a definição do disco do volume /hana/data para que ele possa ser recriado usando um snapshot de disco existente. Para implantações de HA/DR, execute essa ação para o nó principal do SAP HANA.

    Por exemplo, se você implantou seu sistema SAP HANA usando uma das Configurações do Terraform fornecidas pelo Google Cloud e, em seguida no arquivo ./terraform/modules/sap_hana/main.tf, inclua o argumento snapshot da seguinte forma:

    # Split data/log/sap disks
    resource "google_compute_disk" "sap_hana_data_disks" {
     count   = var.use_single_shared_data_log_disk ? 0 : var.sap_hana_scaleout_nodes + 1
     name    = format("${var.instance_name}-data%05d", count.index + 1)
     type    = local.final_data_disk_type
     zone    = var.zone
     size    = local.data_pd_size
     snapshot = "hana-SID-snapshot-YYYYMMDD-HHMMSS"
     project = var.project_id
     provisioned_iops = local.final_data_iops
    }
    
  4. Aplique a configuração modificada. Por exemplo, se você estiver usando o Terraform, execute os seguintes comandos:

    terraform validate
    terraform apply
    
  5. Recupere o banco de dados SAP HANA. Para instruções, consulte Executar a recuperação usando um snapshot de disco.

Ativar a geração de registros

Ao executar operações de backup e recuperação baseadas em snapshots de disco, o agente do Google Cloud para SAP grava nos seguintes arquivos de registro: hanadiskbackup.log e hanadiskrestore.log, respectivamente.

Esses arquivos de registro estão localizados no diretório /var/log/google-cloud-sap-agent/ no seu host.

Por padrão, a geração de registros é ativada durante as operações de backup e recuperação. O nível de registro padrão é info. É possível aumentar ou diminuir o nível de registro usando o argumento -loglevel ao executar os comandos hanadiskbackup e hanadiskrestore.

ativar monitoramento

Por padrão, o Agente para SAP do Google Cloud emite as seguintes métricas para o Cloud Monitoring sempre que você executa o comando hanadiskbackup. Isso é controlado pelo argumento -send-metrics-to-monitoring, que tem o valor padrão TRUE.

Você pode visualizar essas métricas em um painel e usá-las para configurar alertas.

Métrica Descrição
workload.googleapis.com/sap/agent/hanadiskbackup/status

Boolean

Informa se a operação de backup com base no snapshot do disco foi bem-sucedida ou não. O valor true significa sucesso e false significa falha.

workload.googleapis.com/sap/agent/hanadiskbackup/totaltime

Int

Informa o tempo, em segundos, que a operação de backup leva para criar o snapshot do disco, incluindo o tempo para fazer upload dele para o bucket especificado do Cloud Storage.

workload.googleapis.com/sap/agent/hanadiskbackup/dbfreezetime

Int

Informa o tempo, em segundos, em que o sistema de arquivos SAP HANA foi congelado durante a operação de backup baseado em snapshot do disco.

Práticas recomendadas

Ao usar snapshots de disco para executar operações de backup e recuperação do SAP HANA, recomendamos as seguintes práticas recomendadas:

  • Prepare opções de recuperação alternativas para seu banco de dados. É altamente recomendável projetar sua estratégia de backup e recuperação de modo que ela combine métodos diferentes. Por exemplo, é possível usar o recurso de snapshot de disco do agente com um backup completo do banco de dados SAP HANA criado usando o recurso Backint do agente ou um arquivo. system backup.
  • Execute verificações de consistência para o volume /hana/data e os snapshots de disco. Como as verificações de integridade no nível de bloco não são realizadas durante operações de backup baseadas em snapshots, recomendamos realizar regularmente as seguintes verificações de consistência usando a ferramenta hdbpersdiag:

    • Execute verificações de consistência de página para seu volume /hana/data. Essa atividade exige inatividade, porque a ferramenta não poderá verificar as páginas de um volume de dados específico se houver um processo usando o volume de dados, como o servidor de índice SAP HANA.
    • Em uma VM que não seja o host do SAP HANA, implante um disco temporário de um snapshot criado usando o comando hanadiskbackup do agente e execute uma verificação de consistência nesse disco. Para instruções, consulte Validar a consistência do snapshot

    Para mais informações sobre a ferramenta hdbpersdiag, consulte o documento da SAP Executar verificações de consistência.

  • Execute atividades de manutenção para os snapshots do disco. Como o Agente para SAP do Google Cloud não executa atividades de manutenção para seus snapshots de disco, recomendamos que você os analise periodicamente e execute atividades como excluir snapshots antigos.

    Para mais informações sobre as práticas recomendadas relacionadas a snapshots de disco, consulte Práticas recomendadas para snapshots de disco do Compute Engine.