Expansão da alta disponibilidade do SAP HANA com o Azure NetApp Files no SUSE Linux Enterprise
Este artigo descreve como configurar a replicação do sistema do SAP HANA em uma implantação de expansão quando os sistemas de arquivos do HANA são montados por meio do NFS usando o Azure NetApp Files (ANF). Nos exemplos de configurações e comandos de instalação, são usadas a instância número 03 e a ID HN1 do sistema do HANA. A replicação do SAP HANA consiste de um nó primário e pelo menos um nó secundário.
Quando as etapas contidas nesse documento são marcadas com os prefixos a seguir, isso significa que:
- [A] : A etapa se aplica a todos os nós.
- [1]: A etapa se aplica apenas ao node1.
- [2]: A etapa se aplica apenas ao node2.
Primeiro, leia os seguintes documentos e Notas SAP:
- A Nota do SAP 1928533 contém:
- A lista de tamanhos de VM do Azure que têm suporte para a implantação de software SAP.
- Informações de capacidade importantes sobre tamanhos de máquina virtual (VM) do Azure.
- O software SAP e o sistema operacional (SO) com suporte e combinações de banco de dados.
- A versão do kernel do SAP necessária para o Windows e o Linux no Azure.
- A Nota SAP 2015553 lista pré-requisitos para implantações de software SAP com suporte do SAP no Azure.
- A Nota do SAP 405827 lista o sistema de arquivos recomendado para o ambiente do HANA.
- A Nota do SAP 2684254 tem configurações de sistema operacional recomendadas para o SUSE Linux Enterprise Server (SLES) 15/SLES para Aplicativos SAP 15.
- A Nota do SAP 1944799 tem diretrizes do SAP HANA para instalação do sistema operacional do SLES.
- A Nota SAP 2178632 contém informações detalhadas sobre todas as métricas de monitoramentos relatadas para o SAP no Azure.
- A Nota SAP 2191498 tem a versão necessária do SAP Host Agent para Linux no Azure.
- A Nota SAP 2243692 tem informações sobre o licenciamento do SAP no Linux no Azure.
- A Nota SAP 1999351 tem mais informações de solução de problemas para a extensão de Monitoramento Avançado do Azure para SAP.
- A Nota do SAP 1900823 contém informações sobre os requisitos de armazenamento do SAP HANA.
- Os Guias de Boas Práticas de Alta Disponibilidade (HA) do SAP para SUSE contêm todas as informações necessárias para configurar a HA do NetWeaver e a replicação do sistema SAP HANA local (para ser usada como uma linha de base geral). Eles fornecem informações muito mais detalhadas.
- A wiki da comunidade SAP tem todas as notas SAP necessárias para Linux.
- Planejamento e implementação de Máquinas Virtuais do Azure para SAP no Linux
- Implantação de Máquinas Virtuais do Azure para SAP no Linux
- Implantação de Máquinas Virtuais do Azure do DBMS para SAP no Linux
- Documentação geral do SLES:
- Como configurar um cluster do SAP HANA
- Notas de versão do SLES High Availability Extension 15 SP3
- Guia de Reforço de Segurança do Sistema Operacional para SAP HANA para SUSE Linux Enterprise Server 15
- Guia do SUSE Linux Enterprise Server para aplicativos SAP 15 SP3
- SUSE Linux Enterprise Server para aplicativos SAP 15 SP3 SAP Automation
- SUSE Linux Enterprise Server para aplicativos SAP 15 SP3 SAP Monitoramento
- Documentação do SLES específica do Azure:
- Aplicativos SAP NetApp no Microsoft Azure usando o Azure NetApp Files
- Volumes NFS v4.1 no Azure NetApp Files para SAP HANA
- Planejamento e implementação de Máquinas Virtuais do Azure para SAP no Linux
Observação
Este artigo contém referências a um termo que a Microsoft não usa mais. Quando o termo for removido do software, também o removeremos deste artigo.
Visão geral
Tradicionalmente, em um ambiente de expansão, todos os sistemas de arquivos para SAP HANA são montados a partir do armazenamento local. A configuração de HA da replicação do sistema do SAP HANA no SUSE Enterprise Linux está publicada em Configurar a replicação de sistema do SAP HANA no SLES.
Para obter a HA do SAP HANA de um sistema de expansão em compartilhamentos do NFS do Azure NetApp Files, precisamos de uma configuração de recursos extra no cluster. Essa configuração é necessária para que os recursos do HANA possam ser recuperados quando um nó perde o acesso aos compartilhamentos do NFS no Azure NetApp Files.
Os sistemas de arquivos do SAP HANA são montados em compartilhamentos do NFS usando o Azure NetApp Files em cada nó. Os sistemas de arquivos /hana/data, /hana/log e /hana/shared são exclusivos para cada nó.
Montado no node1 (hanadb1):
- 10.3.1.4:/hanadb1-data-mnt00001 em /hana/data
- 10.3.1.4:/hanadb1-log-mnt00001 em /hana/log
- 10.3.1.4:/hanadb1-shared-mnt00001 em /hana/shared
Montado no node2 (hanadb2):
- 10.3.1.4:/hanadb2-data-mnt00001 em /hana/data
- 10.3.1.4:/hanadb2-log-mnt00001 em /hana/log
- 10.3.1.4:/hanadb2-shared-mnt0001 em /hana/shared
Observação
Os sistemas de arquivos /hana/shared, /hana/data e /hana/log não são compartilhados entre os dois nós. Cada nó de cluster tem seus próprios sistemas de arquivos separados.
A configuração da replicação do sistema do SAP HA HANA usa um nome do host virtual dedicado e endereços IP virtuais. No Azure, um balanceador de carga é necessário para usar um endereço IP virtual. A configuração apresentada mostra um balanceador de carga com:
- Endereço IP de configuração do front-end: 10.3.0.50 para hn1-db
- Porta de investigação: 62503
Configurar a infraestrutura do Azure NetApp Files
Antes de continuar com a configuração da infraestrutura do Azure NetApp Files, familiarize-se com a documentação do Azure NetApp Files.
O Azure NetApp Files está disponível em várias regiões do Azure. Verifique se a região do Azure selecionada oferece o Azure NetApp Files.
Para obter informações sobre a disponibilidade do Azure NetApp Files por região do Azure, confira Disponibilidade do Azure NetApp Files por região do Azure.
Considerações importantes
Ao criar seu Azure NetApp Files para sistemas de expansão do SAP HANA, esteja ciente das considerações importantes documentadas em Volumes do NFS v4.1 no Azure NetApp Files para SAP HANA.
Dimensionamento do banco de dados do HANA no Azure NetApp Files
A taxa de transferência de um volume do Azure NetApp Files é uma função do tamanho de volume e do nível de serviço, conforme documentado no Nível de serviço para Azure NetApp Files.
Quando você projeta a infraestrutura para o SAP HANA no Azure com o Azure NetApp Files, esteja ciente das recomendações em Volumes do NFS v4.1 no Azure NetApp Files para SAP HANA.
A configuração incluída neste artigo é apresentada com volumes simples do Azure NetApp Files.
Importante
Para sistemas de produção, sempre que o desempenho for fundamental recomendamos avaliar e pensar em usar o grupo de volumes de aplicativos do Azure NetApp Files para SAP HANA.
Todos os comandos para montar o/hana/shared neste artigo são apresentados para volumes do NFSv4.1/hana/shared. Se você implantou os volumes do /hana/shared como volumes NFSv3, não se esqueça de ajustar os comandos de montagem do /hana/shared para NFSv3.
Implantar recursos do Azure NetApp Files
As instruções a seguir pressupõem que você já tenha implantado a Rede Virtual do Azure. Os recursos do Azure NetApp Files e as VMs nas quais os recursos do Azure NetApp Files são montados precisam ser implantados na mesma rede virtual do Azure ou em redes virtuais do Azure emparelhadas.
Crie uma conta do NetApp na região do Azure selecionada, seguindo as instruções em Criar uma conta do NetApp.
Configure um pool de capacidade do Azure NetApp Files seguindo as instruções em Configurar um pool de capacidade do Azure NetApp Files.
A arquitetura do HANA apresentada neste artigo usa um único pool de capacidade do Azure NetApp Files no nível de serviço Ultra. Para cargas de trabalho do HANA no Azure, recomendamos usar um nível de serviço Ultra ou Premium do Azure NetApp Files.
Delegue uma sub-rede para o Azure NetApp Files, conforme descrito nas instruções em Delegar uma sub-rede ao Azure NetApp Files.
Implante volumes do Azure NetApp Files seguindo as instruções em Criar um volume NFS para o Azure NetApp Files.
Ao implantar os volumes, certifique-se de selecionar a versão NFSv4.1. Implante os volumes na sub-rede designada do Azure NetApp Files. Os endereços IP dos volumes do Azure NetApp Files são atribuídos automaticamente.
Os recursos do Azure NetApp Files e as VMs do Azure precisam estar na mesma rede virtual do Azure ou em redes virtuais do Azure com peering. Por exemplo, os nomes de volume são hanadb1-data-mnt00001, hanadb1-log-mnt00001 e assim por diante, e os caminhos de arquivo para os volumes do Azure NetApp Files são nfs://10.3.1.4/hanadb1-data-mnt00001, nfs://10.3.1.4/hanadb1-log-mnt00001 e assim por diante.
No hanadb1:
- Volume hanadb1-data-mnt00001 (nfs://10.3.1.4:/hanadb1-data-mnt00001)
- Volume hanadb1-log-mnt00001 (nfs://10.3.1.4:/hanadb1-log-mnt00001)
- Volume hanadb1-shared-mnt00001 (nfs://10.3.1.4:/hanadb1-shared-mnt00001)
No hanadb2:
- Volume hanadb2-data-mnt00001 (nfs://10.3.1.4:/hanadb2-data-mnt00001)
- Volume hanadb2-log-mnt00001 (nfs://10.3.1.4:/hanadb2-log-mnt00001)
- Volume hanadb2-shared-mnt00001 (nfs://10.3.1.4:/hanadb2-shared-mnt00001)
Preparar a infraestrutura
O agente de recursos para HANA SAP está incluído no SUSE Linux Enterprise Server for SAP Applications. Uma imagem do SUSE Linux Enterprise Server para aplicativos SAP 12 ou 15 está disponível no Azure Marketplace. Você pode usar a imagem para implantar novas VMs.
Implantar VMs do Linux manualmente por meio do portal do Azure
Esse documento pressupõe que você já implantou um grupo de recursos, uma Rede Virtual do Azure e uma sub-rede.
Implantar VMs para o SAP HANA. Escolha uma imagem do SLES adequada que tenha suporte para o sistema HANA. Você pode implantar uma VM em qualquer uma das opções de disponibilidade: conjunto de dimensionamento de máquinas virtuais, zona de disponibilidade ou conjunto de disponibilidade.
Importante
Certifique-se de que o sistema operacional selecionado conte com a certificação SAP para o SAP HANA para os tipos de VM específicas que você planeja usar em sua implantação. Você pode pesquisar tipos de VM certificadas pelo SAP HANA e suas versões do sistema operacional nas Plataformas de IaaS Certificadas do SAP HANA. Certifique-se de clicar nos detalhes do tipo de VM para obter a lista completa de versões do sistema operacional com suporte do SAP HANA para o tipo de VM específico.
Configurar o Azure Load Balancer
Durante a configuração de VMs, você tem a opção de criar ou selecionar o balanceador de carga existente na seção de rede. Siga as próximas etapas para configurar um balanceador de carga padrão para a configuração de HA do banco de dados do HANA.
Siga as etapas em Criar balanceador de carga para configurar um balanceador de carga padrão para um sistema SAP de alta disponibilidade usando o portal do Azure. Durante a configuração do balanceador de carga, considere os seguintes pontos:
- Configuração de IP front-end: Crie um IP front-end. Selecione a mesma rede virtual e nome de sub-rede das máquinas virtuais de banco de dados.
- Pool de back-end: Crie um pool de back-end e adicione VMs de banco de dados.
- Regras de entrada: Crie uma regra de balanceamento de carga. Siga as mesmas etapas para ambas as regras de balanceamento de carga.
- Endereço IP de front-end: Selecione um IP de front-end.
- Pool de back-end: selecione um pool de back-end.
- Portas de alta disponibilidade: selecione essa opção.
- Protocolo: selecione TCP.
- Sonda de integridade: crie uma sonda de integridade com os seguintes detalhes:
- Protocolo: selecione TCP.
- Porta: Por exemplo, 625<instância-não.>.
- Intervalo: Inserir 5.
- Limite de investigação: insira 2.
- Tempo limite de inatividade (minutos): Inserir 30.
- Habilitar IP Flutuante: Selecione essa opção.
Observação
A propriedade de configuração da investigação de integridade numberOfProbes
, também conhecida como Limite não íntegro no portal, não é respeitada. Para controlar o número de análises consecutivas bem-sucedidas ou com falha, configure a propriedade probeThreshold
para 2
. Atualmente não é possível definir essa propriedade utilizando o portal do Azure, por isso utilize o CLI do Azure ou o comando PowerShell.
Para obter mais informações sobre as portas necessárias para o SAP HANA, leia o capítulo Conexões aos bancos de dados de locatário no guia Bancos de dados de locatário do SAP HANA ou Nota SAP 2388694.
Quando as VMs sem endereços IP públicos forem colocadas no pool de back-end do Standard Load Balancer do Azure interno (sem endereço IP público), não haverá nenhuma conectividade de saída para a internet se não houver uma configuração adicional para permitir o roteamento para pontos de extremidade públicos. Para obter mais informações sobre como obter conectividade de saída, confira Conectividade de ponto de extremidade público para VMs usando o Standard Load Balancer do Azure em cenários de alta disponibilidade do SAP.
Importante
- Não habilite carimbos de data/hora de TCP em VMs do Azure posicionadas de forma subjacente em relação ao Azure Load Balancer. Habilitar carimbos de data/hora de TCP faz as investigações de integridade falharem. Defina o parâmetro
net.ipv4.tcp_timestamps
como0
. Para saber mais, confira Investigações de integridade do Load Balancer e Nota do SAP 2382421. - Para evitar que o saptune altere o valor
net.ipv4.tcp_timestamps
definido manualmente voltando de0
para1
, atualize a versão do saptune para 3.1.1 ou superior. Para obter mais informações, confira Saptune 3.1.1: preciso atualizar?.
Montar o volume de Azure NetApp Files
[A] Crie pontos de montagem para os volumes de banco de dados do HANA.
sudo mkdir -p /hana/data/HN1/mnt00001 sudo mkdir -p /hana/log/HN1/mnt00001 sudo mkdir -p /hana/shared/HN1
[A] Verifique a configuração do domínio NFS. Certifique-se de que o domínio esteja configurado como o domínio padrão do Azure NetApp Files, ou seja, defaultv4iddomain.com e de que o mapeamento esteja definido como nobody.
sudo cat /etc/idmapd.conf
Exemplo de saída:
[General] Domain = defaultv4iddomain.com [Mapping] Nobody-User = nobody Nobody-Group = nobody
Importante
É preciso que você defina o domínio NFS em /etc/idmapd.conf na VM para corresponder à configuração de domínio padrão no Azure NetApp Files: defaultv4iddomain.com. Se houver uma incompatibilidade entre a configuração de domínio no cliente do NFS (ou seja, a VM) e o servidor do NFS (ou seja, a configuração do Azure NetApp Files), as permissões para arquivos nos volumes do Azure NetApp Files que forem montados nas VMs serão exibidas como nobody.
[A] Edite
/etc/fstab
em ambos os nós para montar os volumes relevantes para cada nó permanentemente. O exemplo a seguir mostra como montar os volumes permanentemente.sudo vi /etc/fstab
Adicione as entradas a seguir em
/etc/fstab
em ambos os nós.Exemplo para o hanadb1:
10.3.1.4:/hanadb1-data-mnt00001 /hana/data/HN1/mnt00001 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0 10.3.1.4:/hanadb1-log-mnt00001 /hana/log/HN1/mnt00001 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0 10.3.1.4:/hanadb1-shared-mnt00001 /hana/shared/HN1 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0
Exemplo para o hanadb2:
10.3.1.4:/hanadb2-data-mnt00001 /hana/data/HN1/mnt00001 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0 10.3.1.4:/hanadb2-log-mnt00001 /hana/log/HN1/mnt00001 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0 10.3.1.4:/hanadb2-shared-mnt00001 /hana/shared/HN1 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0
Monte todos os volumes.
sudo mount -a
Para cargas de trabalho que requerem taxa de transferência mais alta, pense em usar a opção de montagem
nconnect
, conforme descrita em Volumes do NFS v4.1 no Azure NetApp Files para SAP HANA. Verifique senconnect
é compatível com o Azure NetApp Files em sua versão do Linux.[A] Verifique se todos os volumes do HANA estão montados com o protocolo NFS versão NFSv4.
sudo nfsstat -m
Verifique se o sinalizador
vers
está configurado como 4.1.Exemplo do hanadb1:
/hana/log/HN1/mnt00001 from 10.3.1.4:/hanadb1-log-mnt00001 Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4 /hana/data/HN1/mnt00001 from 10.3.1.4:/hanadb1-data-mnt00001 Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4 /hana/shared/HN1 from 10.3.1.4:/hanadb1-shared-mnt00001 Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4
[A] Verifique nfs4_disable_idmapping. Ele deve ser definido como Y. Para criar a estrutura de diretório na qual o nfs4_disable_idmapping está localizado, execute o comando de montagem. Você não conseguirá criar o diretório manualmente em
/sys/modules
porque o acesso é reservado para o kernel/drivers.#Check nfs4_disable_idmapping sudo cat /sys/module/nfs/parameters/nfs4_disable_idmapping #If you need to set nfs4_disable_idmapping to Y sudo echo "Y" > /sys/module/nfs/parameters/nfs4_disable_idmapping #Make the configuration permanent sudo echo "options nfs nfs4_disable_idmapping=Y" >> /etc/modprobe.d/nfs.conf
Instalação do SAP HANA
[A] Configure a resolução do nome do host para todos os hosts.
Você pode usar um servidor DNS ou modificar o arquivo
/etc/hosts
em todos os nós. Este exemplo mostra como usar o arquivo/etc/hosts
. Substitua o endereço IP e o nome do host nos comandos a seguir:sudo vi /etc/hosts
Insira as linhas a seguir no arquivo
/etc/hosts
. Altere o endereço IP e o nome do host para corresponder ao seu ambiente.10.3.0.4 hanadb1 10.3.0.5 hanadb2
[A] Prepare o sistema operacional para executar o SAP HANA no Azure NetApp com NFS, conforme descrito na Nota do SAP 3024346 — Configurações do kernel do Linux para o NetApp NFS. Crie o arquivo de configuração
/etc/sysctl.d/91-NetApp-HANA.conf
para definir as configurações do NetApp.sudo vi /etc/sysctl.d/91-NetApp-HANA.conf
Adicione as seguintes entradas no arquivo de configuração:
net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.ipv4.tcp_rmem = 4096 131072 16777216 net.ipv4.tcp_wmem = 4096 16384 16777216 net.core.netdev_max_backlog = 300000 net.ipv4.tcp_slow_start_after_idle=0 net.ipv4.tcp_no_metrics_save = 1 net.ipv4.tcp_moderate_rcvbuf = 1 net.ipv4.tcp_window_scaling = 1 net.ipv4.tcp_sack = 1
[A] Crie o arquivo de configuração
/etc/sysctl.d/ms-az.conf
com mais configurações de otimização.sudo vi /etc/sysctl.d/ms-az.conf
Adicione as seguintes entradas no arquivo de configuração:
net.ipv6.conf.all.disable_ipv6 = 1 net.ipv4.tcp_max_syn_backlog = 16348 net.ipv4.conf.all.rp_filter = 0 sunrpc.tcp_slot_table_entries = 128 vm.swappiness=10
Dica
Evite configurar
net.ipv4.ip_local_port_range
enet.ipv4.ip_local_reserved_ports
explicitamente nos arquivos de configuração sysctl para permitir que o Agente de Host do SAP gerencie os intervalos de portas. Para saber mais, confira a Nota do SAP 2382421.[A] Ajuste as configurações de
sunrpc
, conforme recomendado na Nota do SAP 3024346 — Configurações do Kernel do Linux para o NetApp NFS.sudo vi /etc/modprobe.d/sunrpc.conf
Insira a seguinte linha:
options sunrpc tcp_max_slot_table_entries=128
[A] Configurar o SLES para HANA.
Configure o SLES conforme descrito nas seguintes Notas do SAP com base na sua versão do SLES:
- 2684254 configurações de SO recomendadas para SLES 15 / SLES para aplicativos SAP 15
- 2205917 configurações de SO recomendadas para SLES 12 / SLES para aplicativos SAP 12
- 2455582 Linux: executar aplicativos SAP compilados com GCC 6.x
- 2593824 Linux: executar aplicativos SAP compilados com GCC 7.x
- 2886607 Linux: executar aplicativos SAP compilados com GCC 9.x
[A] Instale o SAP HANA.
A partir do HANA 2.0 SPS 01, os Contêineres de Banco de Dados Multilocatário (MDC) são a opção padrão. Quando você instala o sistema HANA, um SYSTEMDB e um locatário com o mesmo SID são criados ao mesmo tempo. Em alguns casos, você não deseja o locatário padrão. Se não quiser criar o locatário inicial junto com a instalação, siga as instruções na Nota do SAP 2629711.
Inicie o programa
hdblcm
a partir do diretório do software de instalação do HANA../hdblcm
No prompt, insira os valores a seguir:
- Para Escolher a instalação: insira 1 (para instalar).
- Para Selecionar componentes adicionais para a instalação: insira 1.
- Para Inserir o caminho de instalação [/hana/shared]: pressione Enter para aceitar o padrão.
- Para Inserir o nome do host local [..]: pressione Enter para aceitar o padrão.
- Em Deseja adicionar outros hosts ao sistema? (s/n) [n]: Selecione n.
- Para Inserir a ID do sistema SAP HANA: insira HN1.
- Para Inserir o número da instância [00]: insira 03.
- Para Selecionar o modo de banco de dados/inserir o índice [1]: pressione Enter para aceitar o padrão.
- Para Selecionar Uso do Sistema/Inserir Índice [4]: insira 4 (para personalizado).
- Para Inserir o local dos Volumes de Dados [/hana/data]: pressione Enter para aceitar o padrão.
- Para Inserir o local dos Volumes de Log [/hana/log]: pressione Enter para aceitar o padrão.
- Para Restringir a alocação máxima de memória? [n]: pressione Enter para aceitar o padrão.
- Para Inserir o nome do host do certificado para o host "..." [...]: pressione Enter para aceitar o padrão.
- Para Inserir a senha de usuário do agente do host do SAP (sapadm): insira a senha de usuário do agente do host.
- Para Confirmar a senha de usuário do agente do host do SAP (sapadm): insira a senha de usuário do agente do host novamente para confirmar.
- Para Inserir a senha do administrador do sistema (hn1adm): insira a senha do administrador do sistema.
- Para Confirmar a senha do administrador do sistema (hn1adm): insira a senha do administrador do sistema novamente para confirmar.
- Para Inserir o diretório base do administrador do sistema [/usr/sap/HN1/home]: pressione Enter para aceitar o padrão.
- Para Inserir o shell de login do administrador do sistema [/bin/sh]: pressione Enter para aceitar o padrão.
- Para Inserir a ID de usuário do administrador do sistema [1001]: pressione Enter para aceitar o padrão.
- Para Inserir a ID do grupo de usuários (sapsys) [79]: pressione ENTER para aceitar o padrão.
- Para Inserir a senha de usuário do banco de dados (SYSTEM): insira a senha do usuário do banco de dados.
- Para Confirmar a senha do usuário do banco de dados (SYSTEM): insira a senha do usuário do banco de dados novamente para confirmar.
- Para Reiniciar o sistema após a reinicialização do computador? [n]: pressione Enter para aceitar o padrão.
- Para Quer prosseguir? (s/n): valide o resumo. Insira y para continuar.
[A] Atualize o Agente de Host do SAP.
Baixe o último arquivo do Agente de Host do SAP no Centro de Software do SAP e execute o comando a seguir para atualizar o agente. Substitua o caminho do arquivo para apontar para o arquivo que você baixou.
sudo /usr/sap/hostctrl/exe/saphostexec -upgrade -archive <path to SAP Host Agent SAR>
Configurar a replicação do sistema do SAP HANA
Siga as etapas em Replicação do sistema SAP HANA para configurar a replicação do sistema SAP HANA.
Configuração do cluster
Essa seção descreve as etapas necessárias exigidas para que o cluster opere de forma integrada quando o SAP HANA é instalado em compartilhamentos do NFS usando o Azure NetApp Files.
Criar um cluster do Pacemaker
Siga as etapas em Como configurar o Pacemaker no SUSE Enterprise Linux no Azure para criar um cluster básico do Pacemaker para o servidor HANA em questão.
Implementar os ganchos do HANA SAPHanaSR e susChkSrv
Essa importante etapa otimiza a integração com o cluster e aprimora a detecção quando um failover de cluster é necessário. Recomendamos fortemente que você configure tanto os ganchos SAPHanaSR quanto os susChkSrv do Python. Siga as etapas em Implementar os ganchos de replicação do sistema Python SAPHanaSR/SAPHanaSR-angi e susChkSrv.
Configurar os recursos de cluster do SAP HANA
Essa seção descreve as etapas necessárias exigidas para configurar os recursos de cluster do SAP HANA.
Crie os recursos de cluster do SAP HANA
Siga as etapas em Como criar recursos de cluster do SAP HANA para criar os recursos de cluster para o servidor do HANA. Após os recursos terem sido criados, você deverá ver o status do cluster com o comando abaixo:
sudo crm_mon -r
Exemplo de saída:
# Online: [ hn1-db-0 hn1-db-1 ]
# Full list of resources:
# stonith-sbd (stonith:external/sbd): Started hn1-db-0
# Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]
# Started: [ hn1-db-0 hn1-db-1 ]
# Master/Slave Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03]
# Masters: [ hn1-db-0 ]
# Slaves: [ hn1-db-1 ]
# Resource Group: g_ip_HN1_HDB03
# rsc_ip_HN1_HDB03 (ocf::heartbeat:IPaddr2): Started hn1-db-0
# rsc_nc_HN1_HDB03 (ocf::heartbeat:azure-lb): Started hn1-db-0
Criar os recursos do sistema de arquivos
O sistema de arquivos /hana/shared/SID é necessário para a operação do HANA e também para ações de monitoramento do Pacemaker que determinam o estado do HANA. Implemente agentes de recursos para monitorar e agir em caso de falhas. A seção contém duas opções, uma para SAPHanaSR
e outra para SAPHanaSR-angi
.
Crie um recurso fictício de cluster do sistema de arquivos. O recurso irá monitorar e relatar falhas se houver algum problema para acessar o sistema de arquivos montado no NFS /hana/shared. Isso permite que o cluster acione o failover se houver um problema para acessar /hana/shared. Para obter mais detalhes, confira Falha no tratamento do compartilhamento de NFS no cluster de alta disponibilidade do SUSE para replicação do sistema HANA
[A] Crie a estrutura de diretórios em ambos os nós.
sudo mkdir -p /hana/shared/HN1/check sudo mkdir -p /hana/shared/check
[1] Configure o cluster para adicionar a estrutura de diretório para monitoramento.
sudo crm configure primitive rsc_fs_check_HN1_HDB03 Filesystem params \ device="/hana/shared/HN1/check/" \ directory="/hana/shared/check/" fstype=nfs \ options="bind,defaults,rw,hard,rsize=262144,wsize=262144,proto=tcp,noatime,_netdev,nfsvers=4.1,lock,sec=sys" \ op monitor interval=120 timeout=120 on-fail=fence \ op_params OCF_CHECK_LEVEL=20 \ op start interval=0 timeout=120 \ op stop interval=0 timeout=120
[1] Clone e verifique o volume recentemente configurado no cluster.
sudo crm configure clone cln_fs_check_HN1_HDB03 rsc_fs_check_HN1_HDB03 meta clone-node-max=1 interleave=true
Exemplo de saída:
sudo crm status # Cluster Summary: # Stack: corosync # Current DC: hanadb1 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum # Last updated: Tue Nov 2 17:57:39 2021 # Last change: Tue Nov 2 17:57:38 2021 by root via crm_attribute on hanadb1 # 2 nodes configured # 11 resource instances configured # Node List: # Online: [ hanadb1 hanadb2 ] # Full List of Resources: # Clone Set: cln_azure-events [rsc_azure-events]: # Started: [ hanadb1 hanadb2 ] # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]: # rsc_SAPHanaTopology_HN1_HDB03 (ocf::suse:SAPHanaTopology): Started hanadb1 (Monitoring) # rsc_SAPHanaTopology_HN1_HDB03 (ocf::suse:SAPHanaTopology): Started hanadb2 (Monitoring) # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable): # rsc_SAPHana_HN1_HDB03 (ocf::suse:SAPHana): Master hanadb1 (Monitoring) # Slaves: [ hanadb2 ] # Resource Group: g_ip_HN1_HDB03: # rsc_ip_HN1_HDB03 (ocf::heartbeat:IPaddr2): Started hanadb1 # rsc_nc_HN1_HDB03 (ocf::heartbeat:azure-lb): Started hanadb1 # rsc_st_azure (stonith:fence_azure_arm): Started hanadb2 # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ]
O atributo
OCF_CHECK_LEVEL=20
é adicionado à operação de monitoramento para que as operações de monitoramento executem um teste de leitura/gravação no sistema de arquivos. Sem esse atributo, a operação de monitoramento só verifica se o sistema de arquivos está montado. Isso pode ser um problema pois, quando a conectividade é perdida, o sistema de arquivos pode permanecer montado, apesar de estar inacessível.O atributo
on-fail=fence
também é adicionado à operação de monitoramento. Com essa opção, se a operação de monitoramento falhar em um nó, esse nó será imediatamente isolado.
Importante
Os tempos-limite na configuração acima podem precisar ser adaptados para o HANA específico configurado para evitar ações de isolamento desnecessárias. Não defina valores de tempo-limite muito baixos. Lembre-se de que o monitor do sistema de arquivos não é relacionado à replicação do sistema HANA. Para obter mais informações, confira a Documentação do SUSE.
Testar a configuração do cluster
Esta seção descreve como é possível testar a configuração.
Antes de começar um teste, certifique-se de que o Pacemaker não tem nenhuma ação com falha (por meio do status do crm) e nenhuma restrição de local inesperada (por exemplo, restos de um teste de migração). Além disso, certifique-se de que a replicação do sistema HANA esteja em estado de sincronização, por exemplo, com
systemReplicationStatus
.sudo su - hn1adm -c "python /usr/sap/HN1/HDB03/exe/python_support/systemReplicationStatus.py"
Verifique o status dos recursos do HANA usando esse comando:
SAPHanaSR-showAttr # You should see something like below # hanadb1:~ SAPHanaSR-showAttr # Global cib-time maintenance # -------------------------------------------- # global Mon Nov 8 22:50:30 2021 false # Sites srHook # ------------- # SITE1 PRIM # SITE2 SOK # Site2 SOK # Hosts clone_state lpa_hn1_lpt node_state op_mode remoteHost roles score site srmode sync_state version vhost # -------------------------------------------------------------------------------------------------------------------------------------------------------------- # hanadb1 PROMOTED 1636411810 online logreplay hanadb2 4:P:master1:master:worker:master 150 SITE1 sync PRIM 2.00.058.00.1634122452 hanadb1 # hanadb2 DEMOTED 30 online logreplay hanadb1 4:S:master1:master:worker:master 100 SITE2 sync SOK 2.00.058.00.1634122452 hanadb2
Verifique a configuração do cluster para um cenário de falha quando um nó é desligado. O exemplo a seguir mostra como desligar o nó 1:
sudo crm status sudo crm resource move msl_SAPHana_HN1_HDB03 hanadb2 force sudo crm resource cleanup
Exemplo de saída:
sudo crm status #Cluster Summary: # Stack: corosync # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum # Last updated: Mon Nov 8 23:25:36 2021 # Last change: Mon Nov 8 23:25:19 2021 by root via crm_attribute on hanadb2 # 2 nodes configured # 11 resource instances configured # Node List: # Online: [ hanadb1 hanadb2 ] # Full List of Resources: # Clone Set: cln_azure-events [rsc_azure-events]: # Started: [ hanadb1 hanadb2 ] # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ] # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable): # Masters: [ hanadb2 ] # Stopped: [ hanadb1 ] # Resource Group: g_ip_HN1_HDB03: # rsc_ip_HN1_HDB03 (ocf::heartbeat:IPaddr2): Started hanadb2 # rsc_nc_HN1_HDB03 (ocf::heartbeat:azure-lb): Started hanadb2 # rsc_st_azure (stonith:fence_azure_arm): Started hanadb2 # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ]
Pare o HANA no Node1:
sudo su - hn1adm sapcontrol -nr 03 -function StopWait 600 10
Registre o nó 1 como o nó secundário e verifique o status:
hdbnsutil -sr_register --remoteHost=hanadb2 --remoteInstance=03 --replicationMode=sync --name=SITE1 --operationMode=logreplay
Exemplo de saída:
#adding site ... #nameserver hanadb1:30301 not responding. #collecting information ... #updating local ini files ... #done.
sudo crm status
sudo SAPHanaSR-showAttr
Verifique a configuração do cluster para um cenário de falha quando um nó perde o acesso ao compartilhamento do NFS (/hana/shared).
Os agentes de recurso do SAP HANA dependem dos binários armazenados em /hana/shared para executar operações durante o failover. O sistema de arquivos /hana/shared é montado por meio do NFS no cenário apresentado.
É difícil simular uma falha, em que um dos servidores perde o acesso ao compartilhamento NFS. À guisa de teste, você pode remontar o sistema de arquivos como somente leitura. Essa abordagem valida que o cluster será capaz de realizar o failover se o acesso ao /hana/shared for perdido no nó ativo.
Resultado esperado: ao tornar o /hana/shared um sistema de arquivos somente leitura, o atributo
OCF_CHECK_LEVEL
do recursohana_shared1
, que executa operações de leitura/gravação no sistema de arquivos, irá falhar. Irá falhar porque não pode gravar nada no sistema de arquivos e executa um failover de recurso do HANA. O mesmo resultado é esperado quando o nó do HANA perde o acesso aos compartilhamentos NFS.Estado do recurso antes de iniciar o teste:
sudo crm status #Cluster Summary: # Stack: corosync # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum # Last updated: Mon Nov 8 23:01:27 2021 # Last change: Mon Nov 8 23:00:46 2021 by root via crm_attribute on hanadb1 # 2 nodes configured # 11 resource instances configured #Node List: # Online: [ hanadb1 hanadb2 ] #Full List of Resources: # Clone Set: cln_azure-events [rsc_azure-events]: # Started: [ hanadb1 hanadb2 ] # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ] # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable): # Masters: [ hanadb1 ] # Slaves: [ hanadb2 ] # Resource Group: g_ip_HN1_HDB03: # rsc_ip_HN1_HDB03 (ocf::heartbeat:IPaddr2): Started hanadb1 # rsc_nc_HN1_HDB03 (ocf::heartbeat:azure-lb): Started hanadb1 # rsc_st_azure (stonith:fence_azure_arm): Started hanadb2 # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ]
Você pode colocar o /hana/shared no modo somente leitura no nó do cluster ativo usando esse comando:
sudo mount -o ro 10.3.1.4:/hanadb1-shared-mnt00001 /hana/sharedb
O servidor
hanadb1
é reinicializado ou desligado com base no conjunto de ações. Após o servidorhanadb1
se tornar inativo, o recurso do HANA será movido parahanadb2
. Você pode verificar o status do cluster nohanadb2
.sudo crm status #Cluster Summary: # Stack: corosync # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum # Last updated: Wed Nov 10 22:00:27 2021 # Last change: Wed Nov 10 21:59:47 2021 by root via crm_attribute on hanadb2 # 2 nodes configured # 11 resource instances configured #Node List: # Online: [ hanadb1 hanadb2 ] #Full List of Resources: # Clone Set: cln_azure-events [rsc_azure-events]: # Started: [ hanadb1 hanadb2 ] # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ] # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable): # Masters: [ hanadb2 ] # Stopped: [ hanadb1 ] # Resource Group: g_ip_HN1_HDB03: # rsc_ip_HN1_HDB03 (ocf::heartbeat:IPaddr2): Started hanadb2 # rsc_nc_HN1_HDB03 (ocf::heartbeat:azure-lb): Started hanadb2 # rsc_st_azure (stonith:fence_azure_arm): Started hanadb2 # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ]
Recomendamos testar a configuração do cluster do SAP HANA minuciosamente fazendo também os testes descritos em Replicação do sistema do SAP HANA.