Alta disponibilidade para SAP NetWeaver em VMs do Azure no RHEL com NFS nos Arquivos do Azure
Este artigo descreve como implantar e configurar VMs (máquinas virtuais) do Azure, instalar a estrutura do cluster e instalar um sistema SAP NetWeaver HA (de alta disponibilidade) usandoNFS nos Arquivos do Azure. As configurações de exemplo usam VMs que são executadas no RHEL (Red Hat Enterprise Linux).
Pré-requisitos
- Documentação dos Arquivos do Azure
- A Nota SAP 1928533, que tem:
- Um lista de tamanhos de VM do Azure compatíveis com a implantação do software SAP.
- Informações importantes sobre capacidade para tamanhos de VM do Azure.
- Software SAP e combinações de SO (sistema operacional) e banco de dados com suporte.
- Versão do kernel do SAP necessária para Windows e para Linux no Microsoft Azure.
- A Nota SAP 2015553 lista 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 Red Hat Enterprise Linux 7.x.
- A Nota SAP 2772999 recomendou configurações do sistema operacional para Red Hat Enterprise Linux 8.x.
- 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:
Visão geral
Para implantar a camada de aplicativo SAP NetWeaver, você precisa de diretórios compartilhados como /sapmnt/SID
e /usr/sap/trans
no ambiente. Além disso, ao implantar um sistema SAP HA, você precisa proteger e disponibilizar sistemas de arquivos altamente disponíveis como /sapmnt/SID
e /usr/sap/SID/ASCS
.
Agora, você pode colocar esses sistemas de arquivos no NFS nos Arquivos do Azure. O NFS nos Arquivos do Azure é uma solução de armazenamento de alta disponibilidade. Essa solução oferece ZRS (armazenamento com redundância de zona) síncrono e é adequada para instâncias ASCS/ERS do SAP implantadas em zonas de disponibilidade. Você ainda precisa de um cluster do Pacemaker para proteger componentes de ponto único de falha, como os serviços centrais do SAP Netweaver (ASCS/SCS).
As configurações e os comandos de instalação de exemplo usam os seguintes números de instância:
Nome da instância | Número da instância |
---|---|
ASCS (ABAP SAP Central Services) | 00 |
ERS | 01 |
ASCS (ABAP SAP Central Services) | 02 |
AAS (Servidor de aplicativos adicional) | 03 |
Identificador do sistema SAP | NW1 |
Este diagrama mostra uma arquitetura de alta disponibilidade típica do SAP Netweaver. Os sistemas de arquivos "sapmnt" e "saptrans" são implantados em compartilhamentos NFS nos Arquivos do Azure. Os serviços centrais do SAP são protegidos por um cluster do Pacemaker. As VMs clusterizadas estão por trás de uma instância do Azure Load Balancer. Os compartilhamentos NFS são montados por meio de pontos de extremidade privados.
Preparar a infraestrutura
O Azure Marketplace contém imagens qualificadas para SAP com o complemento de alta disponibilidade, que você pode usar para implantar novas VMs usando várias versões do Red Hat.
Implantar VMs do Linux manualmente por meio do portal do Azure
Este documento presume que você já tenha implantado uma Rede Virtual do Azure, uma sub-rede e um grupo de recursos.
Implantar VMs para servidores SAP ASCS, ERS e Aplicativos. Escolha uma imagem RHEL adequada com suporte para o sistema SAP. 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.
Configurar o Azure Load Balancer
Durante a configuração da VM, você tem a opção de criar ou selecionar o balanceador de carga existente na seção de rede. Siga as etapas abaixo para configurar um balanceador de carga padrão para a configuração de alta disponibilidade do SAP ASCS e do SAP ERS.
Siga o guia 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 instalação do balanceador de carga, considere os pontos a seguir.
- Configuração de IP de Front-end: Criar dois protocolos IP de front-end, um para ASCS e outro para ERS. Selecione a mesma rede virtual e sub-rede que suas máquinas virtuais ASCS/ERS.
- Pool de Back-end: Criar um pool de back-end e adicionar VMs ASCS e ERS.
- Regras de Entrada: Criar duas regras de balanceamento de carga, uma para o ASCS e outra para o ERS. Siga as mesmas etapas para ambas as regras de balanceamento de carga.
- Endereço IP de front-end: Selecionar o IP de front-end
- Pool de back-end: Selecionar o pool de back-end
- Verifique "Portas de alta disponibilidade"
- Protocolo: TCP
- Investigação de integridade: Criar uma investigação de integridade com os detalhes abaixo (aplica-se tanto ao ASCS quanto ao ERS)
- Protocolo: TCP
- Porta: [por exemplo: 620<Instance-no.> para ASCS, 621<Instance-no.> para ERS]
- Intervalo: 5
- Limite de Investigação: 2
- Tempo limite ocioso (minutos): 30
- Verificar "Habilitar IP Flutuante"
Observação
A propriedade de configuração Investigação de integridade, também conhecida como "Limite não íntegro" no portal, não é respeitada. Portanto, para controlar o número de investigações consecutivas bem-sucedidas ou com falha, defina a propriedade "probeThreshold" como 2. No momento, não é possível definir essa propriedade usando o portal do Azure, portanto, use a CLI do Azure ou o comando do PowerShell.
Observação
Quando as VMs sem endereços IP públicos forem colocadas no pool de back-end na instância Standard do Load Balancer (sem endereço IP público), não haverá nenhuma conectividade de saída com a Internet se não houver configuração adicional a fim de permitir o roteamento para pontos de extremidade públicos. Para obter informações sobre como alcançar conectividade de saída, veja 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 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
como 0
. Para saber mais, confira Investigações de integridade do Load Balancer.
Implantar conta de armazenamento dos Arquivos do Azure e compartilhamentos NFS
O NFS nos Arquivos do Azure é executado sobre o Armazenamento Premium dos Arquivos do Azure. Antes de configurar o NFS nos Arquivos do Azure, confira Como criar um compartilhamento NFS.
Há duas opções de redundância em uma região do Azure:
- LRS (armazenamento com redundância local), que oferece replicação de dados síncrona local na zona.
- ZRS (armazenamento com redundância de zona), que replica os dados de maneira síncrona nas três zonas de disponibilidade da região.
Verifique se a região do Azure selecionada oferece os NFS 4.1 nos Arquivos do Azure com a redundância apropriada. Examine a disponibilidade de Arquivos do Azure por região do Azure em Armazenamento de Arquivos Premium. Se o seu cenário se beneficia com o ZRS, verifique se há suporte para os compartilhamentos de arquivos premium com ZRS na sua região do Azure.
Recomendamos que você acesse a sua conta do Armazenamento do Azure por meio de um ponto de extremidade privado do Azure. Não deixe de implantar o ponto de extremidade da conta de armazenamento dos Arquivos do Azure e as VMs em que você precisa montar os compartilhamentos NFS na mesma rede virtual do Azure ou em redes virtuais do Azure emparelhadas.
Implante uma conta de armazenamento dos Arquivos do Azure com o nome
sapafsnfs
. Neste exemplo, usamos o ZRS. Se você não está familiarizado com esse processo, confira Criar uma conta de armazenamento para o portal do Azure.Na guia Básico, use estas configurações:
- Para Nome da conta de armazenamento, insira
sapafsnfs
. - Para Desempenho, selecione Premium.
- Para Tipo de conta Premium, selecione FileStorage.
- Para Replicação, selecione ZRS (redundância de zona).
- Para Nome da conta de armazenamento, insira
Selecione Avançar.
Na guia Avançado, desmarque Exigir transferência segura para operações da API REST. Se você não desmarcar essa opção, não poderá montar o compartilhamento NFS na sua VM. A operação de montagem atingirá o tempo limite.
Selecione Avançar.
Na seção Rede, defina estas configurações:
- Em Conectividade de rede, para Método de conectividade, selecione Ponto de extremidade privado.
- Em Ponto de extremidade privado, selecione Adicionar ponto de extremidade privado.
No painel Criar ponto de extremidade privado, selecione sua Assinatura, seu Grupo de recursos e sua Localização. Para Nome, insira
sapafsnfs_pe
. Para Sub-recurso de armazenamento, selecione arquivo. Em Rede, para Rede virtual, selecione a rede virtual e a sub-rede a serem usadas. Novamente, você pode usar a rede virtual na qual estão as suas VMs do SAP ou usar uma rede virtual emparelhada. Em Integração do DNS privado, aceite a opção padrão Sim para Integrar com zona DNS privada. Não deixe de selecionar sua Zona DNS privada. Selecione OK.Novamente na guia Rede, selecione Avançar.
Na guia Proteção de dados, mantenha todas as configurações padrão.
Selecione Examinar + criar para validar a configuração.
Aguarde a conclusão da validação. Corrija os problemas antes de continuar.
Na guia Revisar + criar, selecione Criar.
Em seguida, implante os compartilhamentos NFS na conta de armazenamento que você criou. Neste exemplo, há dois compartilhamentos NFS, sapnw1
e saptrans
.
- Entre no portal do Azure.
- Selecione ou pesquise por Contas de armazenamento.
- Na página Contas de armazenamento, selecione sapafsnfs.
- No menu de recursos de sapafsnfs, em Armazenamento de dados, selecione Compartilhamentos de arquivo.
- Na página Compartilhamentos de arquivo, selecione Compartilhamento de arquivo.
- Para Nome, insira
sapnw1
,saptrans
. - Selecione um tamanho de compartilhamento apropriado. Por exemplo, 128 GB. Considere o tamanho dos dados armazenados nos requisitos de compartilhamento, de IOPS e de taxa de transferência. Para saber mais, confira Destinos de compartilhamento de arquivo do Azure.
- Selecione NFS como o protocolo.
- Selecione Nenhum squash raiz. Caso contrário, quando montar os compartilhamentos em suas VMs, você não poderá ver o grupo nem o proprietário do arquivo.
- Para Nome, insira
Importante
O tamanho do compartilhamento anterior é apenas um exemplo. Dimensione seus compartilhamentos adequadamente. Dimensione com base não somente no tamanho dos dados armazenados no compartilhamento, mas também nos requisitos de IOPS e de taxa de transferência. Para saber mais, confira Destinos de compartilhamento de arquivo do Azure.
Os sistemas de arquivos SAP que não precisam ser montados via NFS também podem ser implantados no Armazenamento em Disco do Azure. Neste exemplo, você pode implantar /usr/sap/NW1/D02
e /usr/sap/NW1/D03
no Armazenamento em Disco do Azure.
Considerações importantes sobre o NFS em compartilhamentos dos Arquivos do Azure
Ao planejar a implantação com o NFS nos Arquivos do Azure, considere os seguintes pontos importantes:
- O tamanho mínimo do compartilhamento é de 100 GiB. Você paga somente pela capacidade dos compartilhamentos provisionados.
- Dimensione seus compartilhamentos NFS com base não somente nos requisitos de capacidade, mas também nos requisitos de IOPS e de taxa de transferência. Para saber mais, confira Destinos de compartilhamento de arquivo do Azure.
- Teste a carga de trabalho para validar o dimensionamento e garantir que ele atenda às suas metas de desempenho. Para saber como solucionar problemas de desempenho com o NFS nos Arquivos do Azure, confira Solucionar problemas de desempenho de compartilhamento de arquivo do Azure.
- Para sistemas SAP J2EE, não há suporte para colocar
/usr/sap/<SID>/J<nr>
no NFS nos Arquivos do Azure. - Se o sistema SAP tiver uma carga pesada de trabalhos em lotes, você poderá ter milhões de logs de trabalhos. Se logs de trabalho em lotes do SAP forem armazenados no sistema de arquivos, preste atenção especial ao dimensionamento do compartilhamento
sapmnt
. Começando no SAP_BASIS 7.52, o comportamento padrão para os logs de trabalho em lotes é de serem armazenados no banco de dados. Para obter mais informações, consulte Log de trabalhos no banco de dados. - Implante um compartilhamento
sapmnt
separado para cada sistema SAP. - Não use o compartilhamento
sapmnt
para nenhuma outra atividade, como interfaces ousaptrans
. - Não use o compartilhamento
saptrans
para nenhuma outra atividade, como interfaces ousapmnt
. - Evite consolidar os compartilhamentos de muitos sistemas SAP em uma só conta de armazenamento. Também há Metas de escala de desempenho da conta de armazenamento. Tenha cuidado, também, para não exceder os limites da conta de armazenamento.
- De modo geral, não consolide os compartilhamentos de mais de cinco sistemas SAP em uma só conta de armazenamento. Essa diretriz ajuda a evitar exceder os limites da conta de armazenamento e simplifica a análise de desempenho.
- Em geral, evite misturar compartilhamentos, como
sapmnt
de sistemas SAP de não produção e de produção na mesma conta de armazenamento. - É recomendável implantar no RHEL 8.4 ou superior para aproveitar os aprimoramentos do cliente NFS.
- Use um ponto de extremidade privado. No caso improvável de uma falha na zona, suas sessões de NFS são redirecionadas automaticamente para uma zona íntegra. Você não precisa montar novamente os compartilhamentos NFS nas VMs.
- Se você está implantando as suas VMs em zonas de disponibilidade, use uma conta de armazenamento com ZRS nas regiões do Azure com suporte para ZRS.
- Atualmente, os Arquivos do Azure não dão suporte à replicação automática entre regiões para cenários de recuperação de desastre.
Configurar (A)SCS
Em seguida, você preparará e instalará as instâncias do SAP ASCS e ERS.
Criar um cluster do Pacemaker
Siga as etapas em Configurando o Pacemaker no Red Hat Enterprise Linux no Azure para criar um cluster básico do Pacemaker para esse servidor (A)SCS.
Preparar para a Instalação do SAP NetWeaver
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
[A] Configurar a resolução de nome do host.
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 seguintes linhas até
/etc/hosts
. Altere o endereço IP e o nome do host para corresponder ao seu ambiente.# IP address of cluster node 1 10.90.90.7 sap-cl1 # IP address of cluster node 2 10.90.90.8 sap-cl2 # IP address of the load balancer frontend configuration for SAP Netweaver ASCS 10.90.90.10 sapascs # IP address of the load balancer frontend configuration for SAP Netweaver ERS 10.90.90.9 sapers
[A] Instalar o cliente NFS e outros requisitos.
sudo yum -y install nfs-utils resource-agents resource-agents-sap
[1] Crie os diretórios do SAP no compartilhamento NFS.
Monte temporariamente o compartilhamento NFS sapnw1 em uma das VMs e crie os diretórios do SAP que serão usados como pontos de montagem aninhados.# mount temporarily the volume sudo mkdir -p /saptmp sudo mount -t nfs sapnfs.file.core.windows.net:/sapnfsafs/sapnw1 /saptmp -o noresvport,vers=4,minorversion=1,sec=sys # create the SAP directories sudo cd /saptmp sudo mkdir -p sapmntNW1 sudo mkdir -p usrsapNW1ascs sudo mkdir -p usrsapNW1ers sudo mkdir -p usrsapNW1sys # unmount the volume and delete the temporary directory cd .. sudo umount /saptmp sudo rmdir /saptmp
[A] Crie os diretórios compartilhados.
sudo mkdir -p /sapmnt/NW1 sudo mkdir -p /usr/sap/trans sudo mkdir -p /usr/sap/NW1/SYS sudo mkdir -p /usr/sap/NW1/ASCS00 sudo mkdir -p /usr/sap/NW1/ERS01 sudo chattr +i /sapmnt/NW1 sudo chattr +i /usr/sap/trans sudo chattr +i /usr/sap/NW1/SYS sudo chattr +i /usr/sap/NW1/ASCS00 sudo chattr +i /usr/sap/NW1/ERS01
[A] Verificar a versão de
resource-agents-sap
.Verifique se a versão do pacote
resource-agents-sap
instalado é pelo menos3.9.5-124.el7
.sudo yum info resource-agents-sap
[A] Adicionar entradas de montagem.
vi /etc/fstab # Add the following lines to fstab, save and exit sapnfs.file.core.windows.net:/sapnfsafs/saptrans /usr/sap/trans nfs noresvport,vers=4,minorversion=1,sec=sys 0 0 sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/sapmntNW1 /sapmnt/NW1 nfs noresvport,vers=4,minorversion=1,sec=sys 0 0 sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1sys/ /usr/sap/NW1/SYS nfs noresvport,vers=4,minorversion=1,sec=sys 0 0 # Mount the file systems mount -a
[A] Configure o arquivo de permuta.
sudo vi /etc/waagent.conf # Set the property ResourceDisk.EnableSwap to y # Create and use swapfile on resource disk. ResourceDisk.EnableSwap=y # Set the size of the SWAP file with property ResourceDisk.SwapSizeMB # The free space of resource disk varies by virtual machine size. Make sure that you do not set a value that is too big. You can check the SWAP space with command swapon # Size of the swapfile. ResourceDisk.SwapSizeMB=2000
Reinicie o agente para ativar a alteração.
sudo service waagent restart
[A] Configurar o RHEL.
Configure o RHEL conforme descrito na Nota SAP 2002167 para o RHEL 7.x, na Nota SAP 2772999 para o RHEL 8.x ou na nota SAP 3108316 para o RHEL 9.x.
Instalar o ASCS/ERS do SAP NetWeaver
[1] Configurar as propriedades padrão do cluster.
# If using RHEL 7.x pcs resource defaults resource-stickiness=1 pcs resource defaults migration-threshold=3 # If using RHEL 8.x or later pcs resource defaults update resource-stickiness=1 pcs resource defaults update migration-threshold=3
[1] Crie um recurso de IP virtual e uma investigação de integridade para a instância do ASCS.
sudo pcs node standby sap-cl2 sudo pcs resource create fs_NW1_ASCS Filesystem device='sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1ascs' \ directory='/usr/sap/NW1/ASCS00' fstype='nfs' force_unmount=safe options='noresvport,vers=4,minorversion=1,sec=sys' \ op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \ --group g-NW1_ASCS sudo pcs resource create vip_NW1_ASCS IPaddr2 \ ip=10.90.90.10 \ --group g-NW1_ASCS sudo pcs resource create nc_NW1_ASCS azure-lb port=62000 \ --group g-NW1_ASCS
Verifique se o status do cluster é ok e se todos os recursos foram iniciados. Não é importante saber em qual nó os recursos estão sendo executados.
sudo pcs status # Node sap-cl2: standby # Online: [ sap-cl1 ] # # Full list of resources: # # rsc_st_azure (stonith:fence_azure_arm): Started sap-cl1 # Resource Group: g-NW1_ASCS # fs_NW1_ASCS (ocf::heartbeat:Filesystem): Started sap-cl1 # nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started sap-cl1 # vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started sap-cl1
[1] Instale o ASCS do SAP NetWeaver.
Instale o ASCS do SAP NetWeaver como raiz no primeiro nó usando um nome do host virtual que mapeia para o endereço IP da configuração de front-end do balanceador de carga para o ASCS, por exemplo, sapascs e 10.90.90.10 e o número da instância utilizado para a investigação do balanceador de carga, por exemplo, 00.
Você pode usar o parâmetro
sapinst
SAPINST_REMOTE_ACCESS_USER
para permitir que um usuário não raiz se conecte asapinst
.# 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/NW1/ASCS00, tente definir o proprietário e o grupo da pasta do ASCS00 e tente novamente.
sudo chown nw1adm /usr/sap/NW1/ASCS00 sudo chgrp sapsys /usr/sap/NW1/ASCS00
[1] Crie um recurso de IP virtual e uma investigação de integridade para a instância do ERS.
sudo pcs node unstandby sap-cl2 sudo pcs node standby sap-cl1 sudo pcs resource create fs_NW1_AERS Filesystem device='sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1ers' \ directory='/usr/sap/NW1/ERS01' fstype='nfs' force_unmount=safe options='noresvport,vers=4,minorversion=1,sec=sys' \ op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \ --group g-NW1_AERS sudo pcs resource create vip_NW1_AERS IPaddr2 \ ip=10.90.90.9 \ --group g-NW1_AERS sudo pcs resource create nc_NW1_AERS azure-lb port=62101 \ --group g-NW1_AERS
Verifique se o status do cluster é ok e se todos os recursos foram iniciados. Não é importante saber em qual nó os recursos estão sendo executados.
sudo pcs status # Node sap-cl1: standby # Online: [ sap-cl2 ] # # Full list of resources: # # rsc_st_azure (stonith:fence_azure_arm): Started sap-cl2 # Resource Group: g-NW1_ASCS # fs_NW1_ASCS (ocf::heartbeat:Filesystem): Started sap-cl2 # nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started sap-cl2 # vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started sap-cl2 # Resource Group: g-NW1_AERS # fs_NW1_AERS (ocf::heartbeat:Filesystem): Started sap-cl2 # nc_NW1_AERS (ocf::heartbeat:azure-lb): Started sap-cl2 # vip_NW1_AERS (ocf::heartbeat:IPaddr2): Started sap-cl2
[2] Instale o ERS do SAP NetWeaver.
Instale o ERS do SAP NetWeaver como raiz no segundo nó usando um nome do host virtual que mapeia para o endereço IP da configuração de front-end do balanceador de carga para o ERS, por exemplo, sapers, 10.90.90.9 e o número da instância que você usou para a investigação do balanceador de carga, por exemplo, 01.
Você pode usar o parâmetro
sapinst
SAPINST_REMOTE_ACCESS_USER
para permitir que um usuário não raiz se conecte asapinst
.# 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 falhar ao criar uma subpasta em /usr/sap/NW1/ERS01, tente definir o proprietário e o grupo da pasta 01 do ERS e tente novamente.
sudo chown qaadm /usr/sap/NW1/ERS01 sudo chgrp sapsys /usr/sap/NW1/ERS01
[1] Adaptar os perfis de instância do ASCS/SCS e do ERS.
Perfil do ASCS/SCS:
sudo vi /sapmnt/NW1/profile/NW1_ASCS00_sapascs # 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 parâmetros
keepalive
do sistema operacional estão definidos conforme descrito na nota SAP 1410736.Perfil do ERS:
sudo vi /sapmnt/NW1/profile/NW1_ERS01_sapers # 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] Configurar o Keep Alive.
A comunicação entre o servidor de aplicativos do SAP NetWeaver e o ASCS/SCS é roteada por meio de um balanceador de carga de software. O balanceador de carga desconecta conexões inativas após um tempo limite configurável. Para evitar isso, defina um parâmetro no perfil do ASCS/SCS do SAP NetWeaver se estiver usando o ENSA1. Altere as configurações
keepalive
do sistema Linux em todos os servidores do SAP para ENSA1 e ENSA2. Para saber mais, veja a nota SAP 1410736.# Change the Linux system configuration sudo sysctl net.ipv4.tcp_keepalive_time=300
[A] Atualizar o arquivo
/usr/sap/sapservices
.Para impedir o início das instâncias pelo script de inicialização
/usr/sap/sapservices
, todas as instâncias gerenciadas pelo Pacemaker devem ser comentadas no arquivosapinit
.sudo vi /usr/sap/sapservices # Depending on whether the SAP Startup framework is integrated with systemd, you will observe one of the two entries on the ASCS node. You should comment out the line(s). # LD_LIBRARY_PATH=/usr/sap/NW1/ASCS00/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/NW1/ASCS00/exe/sapstartsrv pf=/usr/sap/NW1/SYS/profile/NW1_ASCS00_sapascs -D -u nw1adm # systemctl --no-ask-password start SAPNW1_00 # sapstartsrv pf=/usr/sap/NW1/SYS/profile/NW1_ASCS00_sapascs # Depending on whether the SAP Startup framework is integrated with systemd, you will observe one of the two entries on the ERS node. You should comment out the line(s). # LD_LIBRARY_PATH=/usr/sap/NW1/ERS01/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/NW1/ERS01/exe/sapstartsrv pf=/usr/sap/NW1/ERS01/profile/NW1_ERS01_sapers -D -u nw1adm # systemctl --no-ask-password start SAPNW1_00 # sapstartsrv pf=/usr/sap/NW1/SYS/profile/NW1_ERS01_sapers
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.
Dependendo do fato de estar executando um sistema ENSA1 ou ENSA2, selecione a respectiva guia para definir os recursos. 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 ao ENSA2. Confira a nota SAP 2630416 sobre o suporte ao servidor de enfileiramento 2.
Se estiver usando a arquitetura do servidor de enfileiramento 2 (ENSA2), instale o agente de recurso resource-agents-sap-4.1.1-12.el7.x86_64 ou mais recente e defina os recursos da seguinte maneira:
sudo pcs property set maintenance-mode=true sudo pcs resource create rsc_sap_NW1_ASCS00 SAPInstance \ InstanceName=NW1_ASCS00_sapascs START_PROFILE="/sapmnt/NW1/profile/NW1_ASCS00_sapascs" \ 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-NW1_ASCS sudo pcs resource meta g-NW1_ASCS resource-stickiness=3000 sudo pcs resource create rsc_sap_NW1_ERS01 SAPInstance \ InstanceName=NW1_ERS01_sapers START_PROFILE="/sapmnt/NW1/profile/NW1_ERS01_sapers" \ 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-NW1_AERS sudo pcs constraint colocation add g-NW1_AERS with g-NW1_ASCS -5000 sudo pcs constraint location rsc_sap_NW1_ASCS00 rule score=2000 runs_ers_NW1 eq 1 sudo pcs constraint order start g-NW1_ASCS then stop g-NW1_AERS kind=Optional symmetrical=false sudo pcs node unstandby sap-cl1 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 2641322.
Observação
Os tempos limite na configuração anterior são apenas exemplos e podem ser adaptados à configuração específica do SAP.
Verifique se o status do cluster é ok e se todos os recursos foram iniciados. Não é importante saber em qual nó os recursos estão sendo executados.
sudo pcs status # Online: [ sap-cl1 sap-cl2 ] # # Full list of resources: # # rsc_st_azure (stonith:fence_azure_arm): Started sap-cl2 # Resource Group: g-NW1_ASCS # fs_NW1_ASCS (ocf::heartbeat:Filesystem): Started sap-cl2 # nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started sap-cl2 # vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started sap-cl2 # rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance): Started sap-cl2 # Resource Group: g-NW1_AERS # fs_NW1_AERS (ocf::heartbeat:Filesystem): Started sap-cl1 # nc_NW1_AERS (ocf::heartbeat:azure-lb): Started sap-cl1 # vip_NW1_AERS (ocf::heartbeat:IPaddr2): Started sap-cl1 # rsc_sap_NW1_ERS01 (ocf::heartbeat:SAPInstance): Started sap-cl1
[1] Execute a etapa a seguir para configurar
priority-fencing-delay
(aplicável somente a partir do pacemaker-2.0.4-6.el8 ou superior).Observação
Se você tiver um cluster de dois nós, terá a opção de configurar a propriedade
priority-fencing-delay
do cluster. Essa propriedade introduz um atraso adicional no isolamento de um nó que tem uma prioridade total de recursos mais alta quando ocorre um cenário de split-brain. Para obter mais informações, confira O Pacemaker pode isolar o nó de cluster com o menor número de recursos em execução?.A propriedade
priority-fencing-delay
é aplicável para a versão pacemaker-2.0.4-6.el8 ou superior. Se você configurarpriority-fencing-delay
em um cluster existente, desmarque a configuraçãopcmk_delay_max
no dispositivo de isolamento.sudo pcs resource defaults update priority=1 sudo pcs resource update rsc_sap_NW1_ASCS00 meta priority=10 sudo pcs property set priority-fencing-delay=15s
[A] Adicione regras de firewall ao ASCS e ERS em ambos os nós.
# Probe Port of ASCS sudo firewall-cmd --zone=public --add-port={62000,3200,3600,3900,8100,50013,50014,50016}/tcp --permanent sudo firewall-cmd --zone=public --add-port={62000,3200,3600,3900,8100,50013,50014,50016}/tcp # Probe Port of ERS sudo firewall-cmd --zone=public --add-port={62101,3201,3301,50113,50114,50116}/tcp --permanent sudo firewall-cmd --zone=public --add-port={62101,3201,3301,50113,50114,50116}/tcp
Preparação do servidor de aplicativos do SAP NetWeaver
Alguns bancos de dados exigem que a instalação da instância do banco de dados seja executada em um servidor de aplicativos. Prepare as máquinas virtuais do servidor de aplicativos para poder usá-las nesses casos.
As etapas a seguir pressupõem que você instale o servidor de aplicativos em um servidor diferente dos servidores do ASCS/SCS e do HANA. Caso contrário, algumas das etapas (como configurar a resolução de nome de host) não são necessárias.
Os seguintes itens são prefixados com:
- [A]: aplicável ao PAS e ao AAS
- [P]: aplicável somente ao PAS
- [S]: aplicável somente ao AAS
[A] Configurar a resolução de nome do host. 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 seguintes linhas até
/etc/hosts
. Altere o endereço IP e o nome do host para corresponder ao seu ambiente.10.90.90.7 sap-cl1 10.90.90.8 sap-cl2 # IP address of the load balancer frontend configuration for SAP Netweaver ASCS 10.90.90.10 sapascs # IP address of the load balancer frontend configuration for SAP Netweaver ERS 10.90.90.9 sapers 10.90.90.12 sapa01 10.90.90.13 sapa02
[A] Criar o diretório
sapmnt
.sudo mkdir -p /sapmnt/NW1 sudo mkdir -p /usr/sap/trans sudo chattr +i /sapmnt/NW1 sudo chattr +i /usr/sap/trans
[A] Instalar o cliente NFS e outros requisitos.
sudo yum -y install nfs-utils uuidd
[A] Adicionar entradas de montagem.
vi /etc/fstab # Add the following lines to fstab, save and exit sapnfs.file.core.windows.net:/sapnfsafs/saptrans /usr/sap/trans nfs noresvport,vers=4,minorversion=1,sec=sys 0 0 sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/sapmntNW1 /sapmnt/NW1 nfs noresvport,vers=4,minorversion=1,sec=sys 0 0 # Mount the file systems mount -a
[A] Configure o arquivo de permuta.
sudo vi /etc/waagent.conf # Set the property ResourceDisk.EnableSwap to y # Create and use swapfile on resource disk. ResourceDisk.EnableSwap=y # Set the size of the SWAP file with property ResourceDisk.SwapSizeMB # The free space of resource disk varies by virtual machine size. Make sure that you do not set a value that is too big. You can check the SWAP space with command swapon # Size of the swapfile. ResourceDisk.SwapSizeMB=2000
Reinicie o agente para ativar a alteração.
sudo service waagent restart
Instale o banco de dados
Neste exemplo, o SAP NetWeaver está instalado no SAP HANA. Você pode usar todos os bancos de dados com suporte para esta instalação. Para obter mais informações sobre como instalar o SAP HANA no Azure, confira Alta disponibilidade do SAP HANA em VMs do Azure no Red Hat Enterprise Linux. Para obter uma lista de bancos de dados com suporte, confira Nota SAP 1928533.
Instale a instância do banco de dados do SAP NetWeaver como raiz usando um nome do host virtual que mapeia para o endereço IP da configuração de front-end do balanceador de carga para o banco de dados.
Você pode usar o parâmetro sapinst
SAPINST_REMOTE_ACCESS_USER
para permitir que um usuário não raiz se conecte a sapinst
.
# 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
Instalação de servidor de aplicativos do SAP NetWeaver
Siga estas etapas para instalar um servidor de aplicativos SAP.
[A] Prepare o servidor de aplicativos.
Siga as etapas no capítulo Preparação do servidor de aplicativos do SAP NetWeaver acima para preparar o servidor de aplicativos.
[A] Instalar o servidor de aplicativos do SAP NetWeaver.
Instale um servidor de aplicativos do SAP NetWeaver primário ou adicional.
Você pode usar o parâmetro
sapinst
SAPINST_REMOTE_ACCESS_USER
para permitir que um usuário não raiz se conecte asapinst
.sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
[A] Atualizar o repositório seguro do SAP HANA.
Atualize o repositório seguro do SAP HANA para apontar para o nome virtual do programa de instalação da replicação de sistema do SAP HANA.
Execute o comando a seguir para listar as entradas como
<sapsid>adm
.hdbuserstore List
Todas as entradas devem ser listadas e semelhantes a:
DATA FILE : /home/nw1adm/.hdb/sapa01/SSFS_HDB.DAT KEY FILE : /home/nw1adm/.hdb/sapa01/SSFS_HDB.KEY KEY DEFAULT ENV : 10.90.90.5:30313 USER: SAPABAP1 DATABASE: NW1
Neste exemplo, o endereço IP da entrada padrão aponta para a VM, não para o balanceador de carga. Altere a entrada para apontar para o nome do host virtual do balanceador de carga. Certifique-se de usar a mesma porta e o mesmo nome do banco de dados. Por exemplo,
30313
eNW1
na saída de exemplo.su - nw1adm hdbuserstore SET DEFAULT nw1db:30313@NW1 SAPABAP1 <password of ABAP schema>
Testar configuração do cluster
Teste completamente o cluster do Pacemaker. Para obter mais informações, consulte Executar os testes de failover típicos.
Próximas etapas
- Para implantar o cenário de otimização de custos em que a instância do PAS e do AAS é implantada com o cluster de HA do SAP NetWeaver no RHEL, confira Instalar a instância de diálogo do SAP com VMs de alta disponibilidade do SAP ASCS/SCS no RHEL.
- Confira Guia de HA para SAP NW em VMs do Azure no RHEL para aplicativos SAP multi-SID.
- Confira Planejamento e implementação de Máquinas Virtuais do Azure para o SAP.
- Confira Implantação de máquinas virtuais do Azure para SAP.
- Confira Implantação do DBMS de Máquinas Virtuais do Azure para SAP.
- Para saber como estabelecer alta disponibilidade e o plano de recuperação de desastre do SAP HANA no Azure (instâncias grandes), confira Alta disponibilidade e recuperação de desastre do SAP HANA (instâncias grandes) no Azure.
- Para saber como estabelecer alta disponibilidade e o plano de recuperação de desastre do SAP HANA em VMs do Azure, consulte Alta disponibilidade do SAP HANA em Máquinas Virtuais do Azure.