Alta disponibilidade para SAP NetWeaver em VMs do Azure no Red Hat Enterprise Linux para aplicativos SAP multi-SID
Este artigo descreve como implantar vários sistemas altamente disponíveis do SAP NetWeaver (multi-SID) em um cluster de dois nós em VMs do Azure com o Red Hat Enterprise Linux para aplicativos SAP.
Nas configurações de exemplo, três sistemas SAP NetWeaver 7.50 são implantados em um cluster de alta disponibilidade de dois nós. Os SIDs de sistemas SAP são:
NW1
: instância número 00 do ASCS e nome do host virtualmsnw1ascs
. Instância número 02 do ERS e nome do host virtualmsnw1ers
.NW2
: instância número 10 do ASCS e nome do host virtualmsnw2ascs
. Instância número 12 do ERS e nome do host virtualmsnw2ers
.NW3
: instância número 20 do ASCS e nome do host virtualmsnw3ascs
. Instância número 22 do ERS e nome do host virtualmsnw3ers
.
O artigo não aborda a camada de banco de dados e a implantação dos compartilhamentos NFS do SAP.
Os exemplos neste artigo usam o volume sapMSID
do Azure NetApp Files para os compartilhamentos NFS, supondo que o volume já esteja implantado. Os exemplos pressupõem que o volume do Azure NetApp Files esteja implantado com o protocolo NFSv3. Eles usam os seguintes caminhos de arquivo para os recursos de cluster para as instâncias do ASCS e do ERS dos sistemas SAP NW1
, NW2
eNW3
:
- volume sapMSID (nfs://10.42.0.4/sapmntNW1)
- volume sapMSID (nfs://10.42.0.4/usrsapNW1ascs)
- volume sapMSID (nfs://10.42.0.4/usrsapNW1sys)
- volume sapMSID (nfs://10.42.0.4/usrsapNW1ers)
- volume sapMSID (nfs://10.42.0.4/sapmntNW2)
- volume sapMSID (nfs://10.42.0.4/usrsapNW2ascs)
- volume sapMSID (nfs://10.42.0.4/usrsapNW2sys)
- volume sapMSID (nfs://10.42.0.4/usrsapNW2ers)
- volume sapMSID (nfs://10.42.0.4/sapmntNW3)
- volume sapMSID (nfs://10.42.0.4/usrsapNW3ascs)
- volume sapMSID (nfs://10.42.0.4/usrsapNW3sys)
- volume sapMSID (nfs://10.42.0.4/usrsapNW3ers)
Antes de começar, consulte as seguintes Notas e documentos do SAP:
- A Nota SAP 1928533, que tem:
- Lista de tamanhos de VM do Azure com suporte para a implantação de software SAP.
- Informações importantes sobre capacidade para tamanhos de VM do Azure.
- Software SAP com suporte e combinações de SO (sistema operacional) e banco de dados.
- Versão do kernel do SAP necessária para Windows e para Linux no Microsoft Azure.
- Documentação do Azure NetApp Files.
- A Nota SAP 2015553 tem os pré-requisitos para implantações de software SAP com suporte do SAP no Azure.
- A Nota SAP 2002167 recomendou configurações do sistema operacional para o Red Hat Enterprise Linux.
- A Nota SAP 2009879 tem diretrizes SAP HANA para Red Hat Enterprise Linux.
- 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.
- WIKI da comunidade do 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.
- SAP Netweaver no cluster do Pacemaker.
- Documentação geral do RHEL:
- Visão geral do complemento de alta disponibilidade
- Administração de complemento de alta disponibilidade
- Referência de complemento de alta disponibilidade
- Configurando o ASCS/ERS do SAP Netweaver com recursos autônomos no RHEL 7.5
- Configurar o SAP S/4HANA ASCS/ERS com o ENSA2 (Servidor de Enfileiramento Autônomo 2) no Pacemaker no RHEL
- Documentação do RHEL específica do Azure:
- Aplicativos SAP NetApp no Microsoft Azure usando o Azure NetApp Files
Visão geral
As máquinas virtuais que fazem parte do cluster devem ser dimensionadas de modo a conseguirem executar todos os recursos caso ocorra um failover. Cada SID do SAP pode fazer failover de modo independente uma da outra no cluster de alta disponibilidade de vários SIDs.
Para obter alta disponibilidade, o SAP NetWeaver requer armazenamento compartilhado com alta disponibilidade. Este artigo mostra exemplos com os compartilhamentos do SAP implantados em volumes NFS do Azure NetApp Files. Em vez disso, você pode hospedar os compartilhamentos no cluster GlusterFS de alta disponibilidade, que pode ser usado por vários sistemas SAP.
Importante
O suporte para clustering de vários SIDs do SAP ASCS/ERS com Red Hat Linux como sistema operacional convidado em VMs do Azure é limitado a cinco SIDs do SAP no mesmo cluster. Cada novo SID aumenta a complexidade. A combinação do Servidor de Replicação de Enfileiramento 1 e do Servidor de Replicação de Enfileiramento 2 do SAP no mesmo cluster não é compatível. O clustering de vários SIDs descreve a instalação de várias instâncias do SAP ASCS/ERS com SIDs diferentes em um cluster Pacemaker. Atualmente, o clustering de vários SIDs é compatível somente para ASCS/ERS.
Dica
O clustering de vários SIDs do SAP ASCS/ERS é uma solução com maior complexidade. É mais complexo de implementar. Também envolve um esforço administrativo maior ao executar atividades de manutenção, como a aplicação de patch de SO. Antes de iniciar a implementação real, reserve um tempo para planejar cuidadosamente a implantação e todos os componentes envolvidos, como VMs, montagens de NFS, VIPs, configurações do balanceador de carga e assim por diante.
O SAP NetWeaver ASCS, o SAP NetWeaver SCS e o SAP NetWeaver ERS usam o nome do host virtual e os endereços IP virtuais. No Azure, um balanceador de carga é necessário para usar um endereço IP virtual. É recomendável usar o Standard Load Balancer.
- Endereços IP de front-end para o ASCS: 10.3.1.50 (NW1), 10.3.1.52 (NW2) e 10.3.1.54 (NW3)
- Endereços IP de front-end para o ERS: 10.3.1.51 (NW1), 10.3.1.53 (NW2) e 10.3.1.55 (NW3)
- Porta de investigação 62000 para o NW1 ASCS, 62010 para o NW2 ASCS e 62020 para o NW3 ASCS
- Porta de investigação 62102 para o NW1 ASCS, 62112 para o NW2 ASCS e 62122 para o NW3 ASCS
Observação
Quando VMs sem endereços IP públicos forem colocadas no pool de back-end do balanceador de carga Standard do Azure interno (sem endereço IP público), não haverá conectividade de saída com a Internet se não houver configuração adicional para permitir o roteamento para pontos de extremidade públicos. Para obter detalhes sobre como alcançar conectividade de saída, confira Conectividade de ponto de extremidade público para Máquinas Virtuais usando o Azure Standard Load Balancer em cenários de alta disponibilidade do SAP.
Importante
Não habilite carimbos de data/hora de TCP em VMs do Azure posicionadas subjacentemente 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
como 0. Para saber mais, confira Investigações de integridade do Load Balancer.
Compartilhamentos SAP
O SAP NetWeaver requer armazenamento compartilhado para o transporte, o diretório de perfil e assim por diante. Para um sistema SAP com alta disponibilidade, é importante ter compartilhamentos altamente disponíveis. Você precisa decidir quanto à arquitetura de seus compartilhamentos do SAP. Uma opção é implantar os compartilhamentos em volumes do Azure NetApp Files NFS. Com o Azure NetApp Files, você tem alta disponibilidade interna para os compartilhamentos NFS do SAP.
Outra opção é criar GlusterFS em VMs do Azure no Red Hat Enterprise Linux para SAP NetWeaver, que pode ser compartilhado entre vários sistemas SAP.
Implantar o primeiro sistema SAP no cluster
Após decidir a arquitetura dos compartilhamentos SAP, implante o primeiro sistema SAP no cluster seguindo a documentação correspondente.
- Se você usa volumes de NFS do Azure NetApp Files, acompanhe a Alta disponibilidade de VMs do Azure para SAP NetWeaver no Red Hat Enterprise Linux com o Azure NetApp Files para aplicativos SAP.
- Se você usa o cluster do GlusterFS, consulte GlusterFS em VMs do Azure no Red Hat Enterprise Linux para SAP NetWeaver.
Esses documentos orientam você nas etapas para preparar a infraestrutura necessária, criar o cluster e preparar o sistema operacional para executar o aplicativo SAP.
Dica
Sempre teste a funcionalidade de failover do cluster após o primeiro sistema ser implantado, antes de incluir os SIDs adicionais do SAP ao cluster. Assim, você saberá que o cluster funciona antes de incluir a complexidade de sistemas SAP adicionais ao cluster.
Implantar mais sistemas SAP no cluster
Neste exemplo, presumimos que o sistema NW1
já foi implantado no cluster. Este exemplo mostra como implantar os sistemas SAP NW2
e NW3
no cluster.
Os seguintes itens são prefixados com:
- [A]: Aplicável a todos os nós
- [1] Aplicável somente ao nó 1
- [2] Aplicável somente ao nó 2
Pré-requisitos
Importante
Antes de seguir as instruções para implantar sistemas SAP adicionais no cluster, implante o primeiro sistema SAP no cluster. Há etapas que são necessárias apenas durante a primeira implantação do sistema.
Este artigo supõe que:
- O cluster Pacemaker já está configurado e em execução.
- Pelo menos um sistema SAP (instância de ASCS/ERS) já está implantado e está em execução no cluster.
- A funcionalidade de failover de cluster foi testada.
- Os compartilhamentos NFS para todos os sistemas SAP estão implantados.
Preparar para a Instalação do SAP NetWeaver
Adicione a configuração para o sistema recém-implantado (ou seja,
NW2
eNW3
) no Azure Load Balancer existente, seguindo as instruções de Implantar Azure Load Balancer manualmente por meio do portal do Azure. Ajuste os endereços IP, as portas de investigação de integridade e as regras de balanceamento de carga para sua configuração.[A] Configure a resolução de nomes para os sistemas SAP adicionais. Você pode usar um servidor DNS ou modificar /etc/hosts em todos os nós. Este exemplo mostra como usar o arquivo /etc/hosts. Adapte os endereços IP e os nomes de host ao seu ambiente.
sudo vi /etc/hosts # IP address of the load balancer frontend configuration for NW2 ASCS 10.3.1.52 msnw2ascs # IP address of the load balancer frontend configuration for NW3 ASCS 10.3.1.54 msnw3ascs # IP address of the load balancer frontend configuration for NW2 ERS 10.3.1.53 msnw2ers # IP address of the load balancer frontend configuration for NW3 ERS 10.3.1.55 msnw3ers
[A] Crie os diretórios compartilhados para os sistemas SAP
NW2
eNW3
a serem implantados no cluster.sudo mkdir -p /sapmnt/NW2 sudo mkdir -p /usr/sap/NW2/SYS sudo mkdir -p /usr/sap/NW2/ASCS10 sudo mkdir -p /usr/sap/NW2/ERS12 sudo mkdir -p /sapmnt/NW3 sudo mkdir -p /usr/sap/NW3/SYS sudo mkdir -p /usr/sap/NW3/ASCS20 sudo mkdir -p /usr/sap/NW3/ERS22 sudo chattr +i /sapmnt/NW2 sudo chattr +i /usr/sap/NW2/SYS sudo chattr +i /usr/sap/NW2/ASCS10 sudo chattr +i /usr/sap/NW2/ERS12 sudo chattr +i /sapmnt/NW3 sudo chattr +i /usr/sap/NW3/SYS sudo chattr +i /usr/sap/NW3/ASCS20 sudo chattr +i /usr/sap/NW3/ERS22
[A] Adicione as entradas de montagem para os sistemas de arquivos /sapmnt/SID e /usr/sap/SID/SYS para os outros sistemas SAP que você está implantando no cluster. Neste exemplo, são
NW2
eNW3
.Atualize o arquivo
/etc/fstab
com os sistemas de arquivos para os outros sistemas SAP que você está implantando no cluster.- Se estiver usando o Azure NetApp Files, siga as instruções em Alta disponibilidade de VMs do Azure para SAP NW no RHEL com Azure NetApp Files.
- Se estiver usando o cluster GlusterFS, siga as instruções em Alta disponibilidade de VMs do Azure para SAP NW no RHEL.
Instalar o ASCS/ERS
Crie o IP virtual e os recursos do cluster de investigação de integridade para as instâncias do ASCS dos outros sistemas SAP que você está implantando no cluster. O exemplo usa o ASCS
NW2
eNW3
, usando o NFS em volumes do Azure NetApp Files com o protocolo NFSv3.sudo pcs resource create fs_NW2_ASCS Filesystem device='10.42.0.4:/sapMSIDR/usrsapNW2ascs' \ directory='/usr/sap/NW2/ASCS10' fstype='nfs' force_unmount=safe \ op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \ --group g-NW2_ASCS sudo pcs resource create vip_NW2_ASCS IPaddr2 \ ip=10.3.1.52 \ --group g-NW2_ASCS sudo pcs resource create nc_NW2_ASCS azure-lb port=62010 \ --group g-NW2_ASCS sudo pcs resource create fs_NW3_ASCS Filesystem device='10.42.0.4:/sapMSIDR/usrsapNW3ascs' \ directory='/usr/sap/NW3/ASCS20' fstype='nfs' force_unmount=safe \ op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \ --group g-NW3_ASCS sudo pcs resource create vip_NW3_ASCS IPaddr2 \ ip=10.3.1.54 \ --group g-NW3_ASCS sudo pcs resource create nc_NW3_ASCS azure-lb port=62020 \ --group g-NW3_ASCS
Confira se o status do cluster está como ok e se todos os recursos estão iniciados. Não é importante saber em qual nó os recursos estão sendo executados.
[1] Instale o ASCS do SAP NetWeaver.
Instale o ASCS do SAP NetWeaver como raiz, usando um nome de host virtual que mapeia para o endereço IP da configuração de front-end do balanceador de carga para o ASCS. Por exemplo, para o sistema
NW2
, o nome do host virtual émsnw2ascs
,10.3.1.52
e o número da instância que você usou para a investigação do balanceador de carga, por exemplo,10
. Para o sistemaNW3
, o nome do host virtual émsnw3ascs
,10.3.1.54
e o número da instância que você usou para a investigação do balanceador de carga, por exemplo,20
. Anote em qual nó de cluster você instalou o ASCS para cada SID do SAP.Você pode usar o parâmetro
SAPINST_REMOTE_ACCESS_USER
desapinst
para permitir que um usuário não raiz se conecte à sapinst. Você pode usar o parâmetroSAPINST_USE_HOSTNAME
para instalar o SAP usando o nome do host virtual.# Allow access to SWPM. This rule is not permanent. If you reboot the machine, you have to run the command again sudo firewall-cmd --zone=public --add-port=4237/tcp sudo swpm/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
Se a instalação não conseguir criar uma subpasta em /usr/sap/<SID>/ASCS<Instance#>, tente definir o proprietário como <sid>adm e o grupo como sapsys do ASCS<Instance#> e tente novamente.
[1] Crie um IP virtual e os recursos do cluster de investigação de integridade para a instância do ERS do outro sistema SAP que você está implantando no cluster. O exemplo é referente ao ERS
NW2
eNW3
, usando o NFS em volumes do Azure NetApp Files com o protocolo NFSv3.sudo pcs resource create fs_NW2_AERS Filesystem device='10.42.0.4:/sapMSIDR/usrsapNW2ers' \ directory='/usr/sap/NW2/ERS12' fstype='nfs' force_unmount=safe \ op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \ --group g-NW2_AERS sudo pcs resource create vip_NW2_AERS IPaddr2 \ ip=10.3.1.53 \ --group g-NW2_AERS sudo pcs resource create nc_NW2_AERS azure-lb port=62112 \ --group g-NW2_AERS sudo pcs resource create fs_NW3_AERS Filesystem device='10.42.0.4:/sapMSIDR/usrsapNW3ers' \ directory='/usr/sap/NW3/ERS22' fstype='nfs' force_unmount=safe \ op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \ --group g-NW3_AERS sudo pcs resource create vip_NW3_AERS IPaddr2 \ ip=10.3.1.55 \ --group g-NW3_AERS sudo pcs resource create nc_NW3_AERS azure-lb port=62122 \ --group g-NW3_AERS
Confira se o status do cluster está como ok e se todos os recursos estão iniciados.
Em seguida, confira se os recursos do grupo do ERS recém-criado estão em execução no nó do cluster, oposto ao nó do cluster em que a instância do ASCS do mesmo sistema SAP foi instalada. Por exemplo, se o NW2 do ASCS foi instalado em
rhelmsscl1
, confira se o grupo NW2 do ERS está em execução emrhelmsscl2
. Você pode migrar o grupo NW2 do ERS pararhelmsscl2
executando o seguinte comando em um dos recursos de cluster no grupo:pcs resource move fs_NW2_AERS rhelmsscl2
[2] Instale o ERS do SAP NetWeaver.
Instale o ERS do SAP NetWeaver como raiz, usando um nome de host virtual que mapeia para o endereço IP da configuração de front-end do balanceador de carga para o ERS. Por exemplo, para o sistema
NW2
, o nome do host virtual émsnw2ers
,10.3.1.53
e o número da instância que você usou para a investigação do balanceador de carga, por exemplo,12
. Para o sistemaNW3
, o nome do host virtual émsnw3ers
,10.3.1.55
e o número da instância que você usou para a investigação do balanceador de carga, por exemplo,22
.Você pode usar o parâmetro
SAPINST_REMOTE_ACCESS_USER
desapinst
para permitir que um usuário não raiz se conecte à sapinst. Você pode usar o parâmetroSAPINST_USE_HOSTNAME
para instalar o SAP usando o nome do host virtual.# Allow access to SWPM. This rule is not permanent. If you reboot the machine, you have to run the command again sudo firewall-cmd --zone=public --add-port=4237/tcp sudo swpm/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
Observação
Use SWPM SP 20 PL 05 ou superior. Versões anteriores não configuram as permissões corretamente e a instalação falha.
Se a instalação não conseguir criar uma subpasta em /usr/sap/<NW2>/ERS<Instance#>, tente definir o proprietário como <sid>adm e o grupo como sapsys da pasta ERS<Instance#> e tente novamente.
Se for necessário migrar o grupo ERS do sistema SAP recém-implantado para um nó de cluster diferente, não se esqueça de remover a restrição de local do grupo ERS. Você pode remover a restrição executando o comando a seguir. Este exemplo é dado para os sistemas SAP
NW2
eNW3
. Não esqueça de remover as restrições temporárias para o mesmo recurso usado no comando para mover o grupo de clusters ERS.pcs resource clear fs_NW2_AERS pcs resource clear fs_NW3_AERS
[1] Adapte os perfis de instância do ASCS/SCS e do ERS para os sistemas SAP recém-instalados. O exemplo mostrado abaixo é referente ao
NW2
. Você precisa adaptar os perfis do ASCS/SCS e do ERS para todas as instâncias SAP adicionadas ao cluster.Perfil do ASCS/SCS
sudo vi /sapmnt/NW2/profile/NW2_ASCS10_msnw2ascs # Change the restart command to a start command #Restart_Program_01 = local $(_EN) pf=$(_PF) Start_Program_01 = local $(_EN) pf=$(_PF) # Add the keep alive parameter, if using ENSA1 enque/encni/set_so_keepalive = TRUE
Para ENSA1 e ENSA2, verifique se os
keepalive
parâmetros do sistema operacional estão definidos conforme descrito na nota do SAP 1410736.Perfil do ERS
sudo vi /sapmnt/NW2/profile/NW2_ERS12_msnw2ers # Change the restart command to a start command #Restart_Program_00 = local $(_ER) pf=$(_PFL) NR=$(SCSID) Start_Program_00 = local $(_ER) pf=$(_PFL) NR=$(SCSID) # remove Autostart from ERS profile # Autostart = 1
[A] Atualize o arquivo /usr/sap/sapservices.
Para evitar que as instâncias sejam inicializadas pelo script de inicialização sapinit, todas as instâncias gerenciadas pelo Pacemaker devem ser comentadas no arquivo /usr/sap/sapservices. O exemplo mostrado abaixo é para os sistemas
NW2
eNW3
do SAP.# Depending on whether the SAP Startup framework is integrated with systemd, you may observe below entries on the node for ASCS instances. You should comment out the line(s). # LD_LIBRARY_PATH=/usr/sap/NW2/ASCS10/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/NW2/ASCS10/exe/sapstartsrv pf=/usr/sap/NW2/SYS/profile/NW2_ASCS10_msnw2ascs -D -u nw2adm # LD_LIBRARY_PATH=/usr/sap/NW3/ASCS20/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/NW3/ASCS20/exe/sapstartsrv pf=/usr/sap/NW3/SYS/profile/NW3_ASCS20_msnw3ascs -D -u nw3adm # systemctl --no-ask-password start SAPNW2_10 # sapstartsrv pf=/usr/sap/NW2/SYS/profile/NW2_ASCS10_msnw2ascs # systemctl --no-ask-password start SAPNW3_20 # sapstartsrv pf=/usr/sap/NW3/SYS/profile/NW3_ASCS20_msnw3ascs # Depending on whether the SAP Startup framework is integrated with systemd, you may observe below entries on the node for ERS instances. You should comment out the line(s). #LD_LIBRARY_PATH=/usr/sap/NW2/ERS12/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/NW2/ERS12/exe/sapstartsrv pf=/usr/sap/NW2/ERS12/profile/NW2_ERS12_msnw2ers -D -u nw2adm #LD_LIBRARY_PATH=/usr/sap/NW3/ERS22/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/NW3/ERS22/exe/sapstartsrv pf=/usr/sap/NW3/ERS22/profile/NW3_ERS22_msnw3ers -D -u nw3adm # systemctl --no-ask-password start SAPNW2_12 # sapstartsrv pf=/usr/sap/NW2/ERS12/profile/NW2_ERS12_msnw2ers # systemctl --no-ask-password start SAPNW3_22 # sapstartsrv pf=/usr/sap/NW3/ERS22/profile/NW3_ERS22_msnw3ers
Importante
Com o SAP Startup Framework baseado em sistema, as instâncias do SAP agora podem ser gerenciadas pelo sistema. A versão mínima necessária do Red Hat Enterprise Linux (RHEL) é RHEL 8 para SAP. Conforme descrito na Nota 3115048 do SAP, uma nova instalação de um kernel do SAP com suporte integrado do SAP Startup Framework baseado em sistema sempre resultará em uma instância do SAP controlada pelo sistema. Após uma atualização do kernel do SAP de uma instalação do SAP existente para um kernel que tem suporte do SAP Startup Framework baseado no sistema, no entanto, algumas etapas manuais precisam ser executadas conforme documentado na Nota 3115048 do SAP, para converter o ambiente de inicialização do SAP existente em um que seja controlado pelo sistema.
Ao utilizar os serviços de HA do Red Hat para SAP (configuração de cluster) para gerenciar instâncias do servidor de aplicativos SAP, como SAP ASCS e SAP ERS, serão necessárias modificações adicionais para garantir a compatibilidade entre o agente de recursos SAPInstance e a nova estrutura de inicialização SAP baseada em sistema. Portanto, depois que as instâncias do servidor de aplicativos SAP tiverem sido instaladas ou alternadas para um Kernel SAP habilitado para sistema, de acordo com a Nota 3115048 do SAP, as etapas mencionadas no Red Hat KBA 6884531 deverão ser concluídas com êxito em todos os nós de cluster.
[1] Crie os recursos de cluster do SAP para o sistema SAP recém-instalado.
Dependendo do fato de você estar executando um sistema ENSA1 ou ENSA2, selecione a respectiva guia para definir os recursos para os sistemas SAP
NW2
eNW3
da seguinte forma. O SAP introduziu o suporte para ENSA2, incluindo replicação, no SAP NetWeaver 7.52. Da Plataforma ABAP 1809 em diante, o ENSA2 é instalado por padrão. Para suporte ENSA2, consulte a Nota SAP 2630416 para suporte ao servidor de enfileiramento 2.Se você usar a arquitetura do servidor de filas 2 (ENSA2), instale o agente de recursos resource-agents-sap-4.1.1-12.el7.x86_64 ou mais recente e defina os recursos para os sistemas SAP
NW2
eNW3
da seguinte forma:sudo pcs property set maintenance-mode=true sudo pcs resource create rsc_sap_NW2_ASCS10 SAPInstance \ InstanceName=NW2_ASCS10_msnw2ascs START_PROFILE="/sapmnt/NW2/profile/NW2_ASCS10_msnw2ascs" \ AUTOMATIC_RECOVER=false \ meta resource-stickiness=5000 migration-threshold=1 failure-timeout=60 \ op monitor interval=20 on-fail=restart timeout=60 \ op start interval=0 timeout=600 op stop interval=0 timeout=600 \ --group g-NW2_ASCS sudo pcs resource meta g-NW2_ASCS resource-stickiness=3000 sudo pcs resource create rsc_sap_NW2_ERS12 SAPInstance \ InstanceName=NW2_ERS12_msnw2ers START_PROFILE="/sapmnt/NW2/profile/NW2_ERS12_msnw2ers" \ AUTOMATIC_RECOVER=false IS_ERS=true \ op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600 \ --group g-NW2_AERS sudo pcs constraint colocation add g-NW2_AERS with g-NW2_ASCS -5000 sudo pcs constraint location rsc_sap_NW2_ASCS10 rule score=2000 runs_ers_NW2 eq 1 sudo pcs constraint order start g-NW2_ASCS then stop g-NW2_AERS kind=Optional symmetrical=false sudo pcs resource create rsc_sap_NW3_ASCS20 SAPInstance \ InstanceName=NW3_ASCS20_msnw3ascs START_PROFILE="/sapmnt/NW3/profile/NW3_ASCS20_msnw3ascs" \ AUTOMATIC_RECOVER=false \ meta resource-stickiness=5000 migration-threshold=1 failure-timeout=60 \ op monitor interval=20 on-fail=restart timeout=60 \ op start interval=0 timeout=600 op stop interval=0 timeout=600 \ --group g-NW3_ASCS sudo pcs resource meta g-NW3_ASCS resource-stickiness=3000 sudo pcs resource create rsc_sap_NW3_ERS22 SAPInstance \ InstanceName=NW3_ERS22_msnw3ers START_PROFILE="/sapmnt/NW3/profile/NW2_ERS22_msnw3ers" \ AUTOMATIC_RECOVER=false IS_ERS=true \ op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600 \ --group g-NW3_AERS sudo pcs constraint colocation add g-NW3_AERS with g-NW3_ASCS -5000 sudo pcs constraint location rsc_sap_NW3_ASCS20 rule score=2000 runs_ers_NW3 eq 1 sudo pcs constraint order start g-NW3_ASCS then stop g-NW3_AERS kind=Optional symmetrical=false sudo pcs property set maintenance-mode=false
Se você estiver atualizando de uma versão mais antiga e alternando para o servidor de enfileiramento 2, confira a nota SAP 2641019.
Observação
Os tempos limite na configuração acima são apenas exemplos e talvez precisem ser adaptados à configuração específica do SAP.
Verifique se o status do cluster é ok e se todos os recursos estão iniciados. Não é importante saber em qual nó os recursos estão sendo executados. O exemplo a seguir mostra o status de recursos do cluster depois que os sistemas
NW2
eNW3
do SAP foram adicionados ao cluster.sudo pcs status # Online: [ rhelmsscl1 rhelmsscl2 ] # Full list of resources: # rsc_st_azure (stonith:fence_azure_arm): Started rhelmsscl1 # Resource Group: g-NW1_ASCS # fs_NW1_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl1 # vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 # nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl1 # rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 # Resource Group: g-NW1_AERS # fs_NW1_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl2 # vip_NW1_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 # nc_NW1_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl2 # rsc_sap_NW1_ERS02 (ocf::heartbeat:SAPInstance): Started rhelmsscl2 # Resource Group: g-NW2_ASCS # fs_NW2_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl1 # vip_NW2_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 # nc_NW2_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl1 # rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 # Resource Group: g-NW2_AERS # fs_NW2_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl1 # vip_NW2_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 # nc_NW2_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl1 # rsc_sap_NW2_ERS12 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 # Resource Group: g-NW3_ASCS # fs_NW3_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl1 # vip_NW3_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 # nc_NW3_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl1 # rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 # Resource Group: g-NW3_AERS # fs_NW3_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl1 # vip_NW3_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 # nc_NW3_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl1 # rsc_sap_NW3_ERS22 (ocf::heartbeat:SAPInstance): Started rhelmsscl1
[A] Adicione regras de firewall ao ASCS e ERS em ambos os nós. O exemplo a seguir mostra as regras de firewall para os sistemas
NW2
eNW3
do SAP.# NW1 - ASCS sudo firewall-cmd --zone=public --add-port={62010,3210,3610,3910,8110,51013,51014,51016}/tcp --permanent sudo firewall-cmd --zone=public --add-port={62010,3210,3610,3910,8110,51013,51014,51016}/tcp # NW2 - ERS sudo firewall-cmd --zone=public --add-port={62112,3212,3312,51213,51214,51216}/tcp --permanent sudo firewall-cmd --zone=public --add-port={62112,3212,3312,51213,51214,51216}/tcp # NW3 - ASCS sudo firewall-cmd --zone=public --add-port={62020,3220,3620,3920,8120,52013,52014,52016}/tcp --permanent sudo firewall-cmd --zone=public --add-port={62020,3220,3620,3920,8120,52013,52014,52016}/tcp # NW3 - ERS sudo firewall-cmd --zone=public --add-port={62122,3222,3322,52213,52214,52216}/tcp --permanent sudo firewall-cmd --zone=public --add-port={62122,3222,3322,52213,52214,52216}/tcp
Continuar com a instalação do SAP
Conclua a instalação do SAP ao:
- Preparar os servidores de aplicativos SAP NetWeaver.
- Instalar uma instância do DBMS.
- Instalar o servidor de aplicativos primário SAP.
- Instalar uma ou mais instâncias adicionais de aplicativos SAP.
Testar as configurações dos vários SIDs do cluster
Os testes a seguir são um subconjunto dos casos de teste nos guias de práticas recomendadas do Red Hat. Eles foram incluídos para sua conveniência. Para obter a lista completa dos testes de cluster, consulte a seguinte documentação:
- Se você usa volumes NFS do Azure NetApp Files, acompanhe a Alta disponibilidade de VMs do Azure para SAP NetWeaver no RHEL com o Azure NetApp Files para aplicativos SAP
- Se você usa o
GlusterFS
de alta disponibilidade, acompanhe a Alta disponibilidade de VMs do Azure para SAP NetWeaver no RHEL para aplicativos SAP.
Sempre leia os guias de melhores práticas do Red Hat e execute todos os outros testes que podem ter sido incluídos. Os testes apresentados estão em um cluster de dois nós com vários SIDs e com três sistemas SAP instalados.
Migre manualmente a instância do ASCS. O exemplo mostra a migração da instância ASCS para o sistema NW3 do SAP.
Estado do recurso antes de iniciar o teste:
Online: [ rhelmsscl1 rhelmsscl2 ] Full list of resources: rsc_st_azure (stonith:fence_azure_arm): Started rhelmsscl1 Resource Group: g-NW1_ASCS fs_NW1_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 Resource Group: g-NW1_AERS fs_NW1_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW1_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW1_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW1_ERS02 (ocf::heartbeat:SAPInstance): Started rhelmsscl2 Resource Group: g-NW2_ASCS fs_NW2_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW2_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW2_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance): Started rhelmsscl2 Resource Group: g-NW2_AERS fs_NW2_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW2_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW2_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW2_ERS12 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 Resource Group: g-NW3_ASCS fs_NW3_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW3_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW3_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance): Started rhelmsscl2 Resource Group: g-NW3_AERS fs_NW3_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW3_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW3_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW3_ERS22 (ocf::heartbeat:SAPInstance): Started rhelmsscl1
Execute os seguintes comandos como raiz para migrar a instância NW3 do ASCS.
pcs resource move rsc_sap_NW3_ASCS200 # Clear temporary migration constraints pcs resource clear rsc_sap_NW3_ASCS20 # Remove failed actions for the ERS that occurred as part of the migration pcs resource cleanup rsc_sap_NW3_ERS22
Estado do recurso após o teste:
Online: [ rhelmsscl1 rhelmsscl2 ] Full list of resources: rsc_st_azure (stonith:fence_azure_arm): Started rhelmsscl1 Resource Group: g-NW1_ASCS fs_NW1_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 Resource Group: g-NW1_AERS fs_NW1_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW1_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW1_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW1_ERS02 (ocf::heartbeat:SAPInstance): Started rhelmsscl2 Resource Group: g-NW2_ASCS fs_NW2_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW2_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW2_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance): Started rhelmsscl2 Resource Group: g-NW2_AERS fs_NW2_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW2_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW2_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW2_ERS12 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 Resource Group: g-NW3_ASCS fs_NW3_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW3_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW3_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 Resource Group: g-NW3_AERS fs_NW3_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW3_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW3_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW3_ERS22 (ocf::heartbeat:SAPInstance): Started rhelmsscl2
Simular falhas de nó.
Estado do recurso antes de iniciar o teste:
Online: [ rhelmsscl1 rhelmsscl2 ] Full list of resources: rsc_st_azure (stonith:fence_azure_arm): Started rhelmsscl1 Resource Group: g-NW1_ASCS fs_NW1_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 Resource Group: g-NW1_AERS fs_NW1_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW1_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW1_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW1_ERS02 (ocf::heartbeat:SAPInstance): Started rhelmsscl2 Resource Group: g-NW2_ASCS fs_NW2_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW2_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW2_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 Resource Group: g-NW2_AERS fs_NW2_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW2_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW2_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW2_ERS12 (ocf::heartbeat:SAPInstance): Started rhelmsscl2 Resource Group: g-NW3_ASCS fs_NW3_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW3_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW3_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 Resource Group: g-NW3_AERS fs_NW3_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW3_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW3_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW3_ERS22 (ocf::heartbeat:SAPInstance): Started rhelmsscl2
Execute o comando a seguir como raiz em um nó em que pelo menos uma instância do ASCS esteja em execução. Este exemplo executa o comando em
rhelmsscl1
, em que as instâncias do ASCS paraNW1
,NW2
eNW3
estão em execução.echo c > /proc/sysrq-trigger
O status após o teste e após o nó com falha ter sido iniciado novamente deverá ser semelhante a estes resultados:
Full list of resources: rsc_st_azure (stonith:fence_azure_arm): Started rhelmsscl2 Resource Group: g-NW1_ASCS fs_NW1_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance): Started rhelmsscl2 Resource Group: g-NW1_AERS fs_NW1_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW1_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW1_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW1_ERS02 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 Resource Group: g-NW2_ASCS fs_NW2_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW2_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW2_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance): Started rhelmsscl2 Resource Group: g-NW2_AERS fs_NW2_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW2_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW2_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW2_ERS12 (ocf::heartbeat:SAPInstance): Started rhelmsscl1 Resource Group: g-NW3_ASCS fs_NW3_ASCS (ocf::heartbeat:Filesystem): Started rhelmsscl2 vip_NW3_ASCS (ocf::heartbeat:IPaddr2): Started rhelmsscl2 nc_NW3_ASCS (ocf::heartbeat:azure-lb): Started rhelmsscl2 rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance): Started rhelmsscl2 Resource Group: g-NW3_AERS fs_NW3_AERS (ocf::heartbeat:Filesystem): Started rhelmsscl1 vip_NW3_AERS (ocf::heartbeat:IPaddr2): Started rhelmsscl1 nc_NW3_AERS (ocf::heartbeat:azure-lb): Started rhelmsscl1 rsc_sap_NW3_ERS22 (ocf::heartbeat:SAPInstance): Started rhelmsscl1
Se houver mensagens para recursos com falha, limpe o status dos recursos com falha. Por exemplo:
pcs resource cleanup rsc_sap_NW1_ERS02
Próximas etapas
- Planejamento e implementação de Máquinas Virtuais do Azure para o SAP
- Implantação de Máquinas Virtuais do Azure para SAP
- Implantação do DBMS de Máquinas Virtuais do Azure para SAP
Para saber como estabelecer a alta disponibilidade e o plano de recuperação de desastre do SAP HANA em VMs do Azure, consulte Alta disponibilidade do SAP HANA em VMs (Máquinas Virtuais) do Azure.