Alta disponibilidade para SAP NetWeaver em VMs no RHEL com NFS no Azure Files
Este artigo descreve como implantar e configurar máquinas virtuais (VMs), instalar a estrutura de cluster e instalar um sistema SAP NetWeaver de alta disponibilidade (HA) usando NFS em Arquivos do Azure. As configurações de exemplo usam VMs que são executadas no Red Hat Enterprise Linux (RHEL).
Pré-requisitos
- Documentação do Azure Files
- SAP Note 1928533, que tem:
- Uma lista de tamanhos de VM do Azure com suporte para a implantação do software SAP.
- Informações de capacidade importantes para tamanhos de VM do Azure.
- Software SAP suportado e combinações de sistema operacional (SO) e banco de dados.
- Versão do kernel SAP necessária para Windows e Linux no Microsoft Azure.
- SAP Note 2015553 lista os pré-requisitos para implantações de software SAP suportadas pelo SAP no Azure.
- O SAP Note 2002167 recomendou as configurações do sistema operacional para o Red Hat Enterprise Linux 7.x.
- O SAP Note 2772999 recomendou as configurações do sistema operacional para o Red Hat Enterprise Linux 8.x.
- O SAP Note 2009879 tem as diretrizes do SAP HANA para Red Hat Enterprise Linux.
- O SAP Note 2178632 tem informações detalhadas sobre todas as métricas de monitoramento relatadas para SAP no Azure.
- O SAP Note 2191498 tem a versão necessária do SAP Host Agent para Linux no Azure.
- O SAP Note 2243692 tem informações sobre o licenciamento SAP no Linux no Azure.
- O SAP Note 1999351 tem mais informações de solução de problemas para a Extensão de Monitoramento Avançado do Azure para SAP.
- O SAP Community WIKI 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 DBMS de Máquinas Virtuais do Azure para SAP no Linux
- SAP Netweaver no cluster Pacemaker
- Documentação geral do RHEL:
- Visão geral do complemento de alta disponibilidade
- Administração de complementos de alta disponibilidade
- Referência de complemento de alta disponibilidade
- Configurando ASCS/ERS para SAP NetWeaver com recursos autônomos no RHEL 7.5
- Configurar o SAP S/4HANA ASCS/ERS com o Standalone Enqueue Server 2 (ENSA2) no Pacemaker no RHEL
- Documentação RHEL específica do Azure:
Descrição geral
Para implantar a camada de aplicativos SAP NetWeaver, você precisa de diretórios compartilhados como /sapmnt/SID
e /usr/sap/trans
no ambiente. Além disso, ao implantar um sistema HA SAP, você precisa proteger e tornar sistemas de arquivos altamente disponíveis como /sapmnt/SID
e /usr/sap/SID/ASCS
.
Agora você pode colocar esses sistemas de arquivos em NFS nos Arquivos do Azure. O NFS no Azure Files é uma solução de armazenamento HA. Essa solução oferece armazenamento síncrono com redundância de zona (ZRS) e é adequada para instâncias SAP ASCS/ERS implantadas em zonas de disponibilidade. Você ainda precisa de um cluster Pacemaker para proteger componentes de ponto único de falha, como os serviços centrais do SAP NetWeaver (ASCS/SCS).
As configurações de exemplo e os comandos de instalação usam os seguintes números de instância:
Nome da instância | Número da instância |
---|---|
Serviços centrais ABAP SAP (ASCS) | 00 |
ERS | 01 |
Serviços centrais ABAP SAP (ASCS) | 02 |
Servidor de aplicativos adicional (AAS) | 03 |
Identificador do sistema SAP | NW1 |
Este diagrama mostra uma arquitetura típica do SAP NetWeaver HA. Os sistemas de arquivos 'sapmnt' e 'saptrans' são implantados em compartilhamentos NFS nos Arquivos do Azure. Os serviços centrais SAP são protegidos por um cluster Pacemaker. As VMs clusterizadas estão atrás de uma instância do Balanceador de Carga do Azure. As ações NFS são montadas através de terminais 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 Linux manualmente por meio do portal do Azure
Este documento pressupõe que você já implantou uma rede virtual, uma sub-rede e um grupo de recursos do Azure.
Implante VMs para SAP ASCS, ERS e servidores de aplicativos. Escolha uma imagem RHEL adequada que seja suportada para o sistema SAP. Você pode implantar uma VM em qualquer uma das opções de disponibilidade: conjunto de escala de máquina virtual, zona de disponibilidade ou conjunto de disponibilidade.
Configurar o balanceador de carga do Azure
Durante a configuração da VM, você tem uma opção para criar ou selecionar o balanceador de carga de saída 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 SAP ERS.
Siga o guia de criação do 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 Frontend: Crie dois IP frontend, 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: crie pool de back-end e adicione VMs ASCS e ERS.
- Regras de entrada: crie duas regras de balanceamento de carga, uma para ASCS e outra para ERS. Siga as mesmas etapas para ambas as regras de balanceamento de carga.
- Endereço IP frontend: Selecione frontend IP
- Pool de back-end: selecione pool de back-end
- Marque "Portas de alta disponibilidade"
- Protocolo: TCP
- Sonda de integridade: crie uma sonda de integridade com os detalhes abaixo (aplica-se tanto para ASCS quanto para ERS)
- Protocolo: TCP
- Porta: [por exemplo: 620<Instance-no.> para ASCS, 621<Instance-no.> para ERS]
- Intervalo: 5
- Limiar da sonda: 2
- Tempo limite de inatividade (minutos): 30
- Marque "Ativar IP flutuante"
Nota
O número da propriedade de configuração da sonda de integridadeOfProbes, também conhecido como "Limite não íntegro" no Portal, não é respeitado. Portanto, para controlar o número de testes consecutivos bem-sucedidos ou com falha, defina a propriedade "probeThreshold" como 2. Atualmente, não é possível definir essa propriedade usando o portal do Azure, portanto, use o comando CLI do Azure ou PowerShell .
Nota
Quando VMs sem endereços IP públicos são colocadas no pool de back-end de uma instância padrão interna (sem endereço IP público) do Load Balancer, não há conectividade de saída com a Internet, a menos que mais configuração seja executada para permitir o roteamento para pontos de extremidade públicos. Para obter mais informações sobre como obter conectividade de saída, consulte Conectividade de ponto de extremidade público para máquinas virtuais usando o Azure Standard Load Balancer em cenários de alta disponibilidade SAP.
Importante
Não habilite carimbos de data/hora TCP em VMs do Azure colocadas atrás do Balanceador de Carga. A ativação de carimbos de data/hora TCP faz com que os testes de integridade falhem. Defina o parâmetro net.ipv4.tcp_timestamps
como 0
. Para obter mais informações, consulte Sondas de integridade do balanceador de carga.
Implantar a conta de armazenamento de 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, consulte 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 e na zona.
- Armazenamento com redundância de zona (ZRS), que replica seus dados de forma síncrona nas três zonas de disponibilidade da região.
Verifique se a região do Azure selecionada oferece NFS 4.1 nos Arquivos do Azure com a redundância apropriada. Analise a disponibilidade dos Arquivos do Azure por região do Azure em Armazenamento de Arquivos Premium. Se o seu cenário se beneficiar do ZRS, verifique se os compartilhamentos de arquivos premium com o ZRS são suportados em sua região do Azure.
Recomendamos que você acesse sua conta de Armazenamento do Azure por meio de um ponto de extremidade privado do Azure. Certifique-se de implantar o ponto de extremidade da conta de armazenamento do Azure Files e as VMs, onde você precisa montar os compartilhamentos NFS, na mesma rede virtual do Azure ou redes virtuais emparelhadas do Azure.
Implantar uma conta de armazenamento do Azure Files chamada
sapafsnfs
. Neste exemplo, usamos o ZRS. Se você não estiver familiarizado com o processo, consulte Criar uma conta de armazenamento para o portal do Azure.Na guia Noções básicas, use estas configurações:
- Em Nome da conta de armazenamento, digite
sapafsnfs
. - Em Desempenho, selecione Premium.
- Para Tipo de conta Premium, selecione FileStorage.
- Em Replicação, selecione redundância de zona (ZRS).
- Em Nome da conta de armazenamento, digite
Selecione Seguinte.
Na guia Avançado, desmarque Exigir transferência segura para operações de API REST. Se você não desmarcar essa opção, não poderá montar o compartilhamento NFS em sua VM. A operação de montagem atingirá o tempo limite.
Selecione Seguinte.
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, Grupo de recursos e Local. Em Nome, digite
sapafsnfs_pe
. Para Subrecurso 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 onde suas VMs SAP estão ou uma rede virtual emparelhada. Em Integração de DNS privado, aceite a opção padrão Sim para Integrar com zona DNS privada. Certifique-se de que seleciona a sua Zona DNS Privada. Selecione OK.Na guia Rede novamente, selecione Avançar.
Na guia Proteção de dados , mantenha todas as configurações padrão.
Selecione Rever + criar para validar a sua configuração.
Aguarde a validação terminar. Corrija quaisquer problemas antes de continuar.
No separador Rever + 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
.
- Inicie sessão no portal do Azure.
- Selecione ou pesquise contas de armazenamento.
- Na página Contas de armazenamento, selecione sapafsnfs.
- No menu de recursos para sapafsnfs, em Armazenamento de dados, selecione Compartilhamentos de arquivos.
- Na página Compartilhamentos de arquivos, selecione Compartilhamento de arquivos.
- Em Nome, digite
sapnw1
,saptrans
. - Selecione um tamanho de compartilhamento apropriado. Por exemplo, 128 GB. Considere o tamanho dos dados armazenados no compartilhamento e IOPS e requisitos de taxa de transferência. Para obter mais informações, consulte Destinos de compartilhamento de arquivos do Azure.
- Selecione NFS como o protocolo.
- Selecione No root Squash. Caso contrário, quando você monta os compartilhamentos em suas VMs, não poderá ver o proprietário ou grupo do arquivo.
- Em Nome, digite
Importante
O tamanho da ação anterior é apenas um exemplo. Certifique-se de dimensionar suas ações adequadamente. O tamanho não se baseia apenas no tamanho dos dados armazenados no compartilhamento, mas também nos requisitos de IOPS e taxa de transferência. Para obter mais informações, consulte Destinos de compartilhamento de arquivos 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 para NFS em compartilhamentos de Arquivos do Azure
Ao planejar sua implantação com NFS nos Arquivos do Azure, considere os seguintes pontos importantes:
- O tamanho mínimo da ação é de 100 GiB. Você paga apenas pela capacidade das ações provisionadas.
- Dimensione seus compartilhamentos NFS não apenas com base nos requisitos de capacidade, mas também nos requisitos de IOPS e taxa de transferência. Para obter mais informações, consulte Destinos de compartilhamento de arquivos do Azure.
- Teste a carga de trabalho para validar seu dimensionamento e garantir que ela atenda às suas metas de desempenho. Para saber como solucionar problemas de desempenho com NFS em Arquivos do Azure, consulte Solucionar problemas de desempenho de compartilhamento de arquivos do Azure.
- Para sistemas SAP J2EE, não há suporte para colocar
/usr/sap/<SID>/J<nr>
NFS em Arquivos do Azure. - Se o seu sistema SAP tiver uma carga pesada de trabalhos em lote, você pode ter milhões de logs de trabalho. Se os logs de trabalho em lote SAP estiverem armazenados no sistema de arquivos, preste especial atenção ao dimensionamento do
sapmnt
compartilhamento. A partir de SAP_BASIS 7.52, o comportamento padrão para os logs de trabalho em lote deve ser armazenado no banco de dados. Para obter mais informações, consulte Log de tarefas no banco de dados. - Implante um compartilhamento separado
sapmnt
para cada sistema SAP. - Não use o
sapmnt
compartilhamento para qualquer outra atividade, como interfaces ousaptrans
. - Não use o
saptrans
compartilhamento para qualquer outra atividade, como interfaces ousapmnt
. - Evite consolidar os compartilhamentos de muitos sistemas SAP em uma única conta de armazenamento. Há também metas de escala de desempenho de conta de armazenamento. Tenha cuidado para não exceder os limites para a conta de armazenamento também.
- Em geral, não consolide os compartilhamentos de mais de cinco sistemas SAP em uma única 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
para sistemas SAP de não produção e produção, na mesma conta de armazenamento. - Recomendamos que você implante no RHEL 8.4 ou superior para se beneficiar das melhorias do cliente NFS.
- Use um ponto de extremidade privado. No caso improvável de uma falha zonal, suas sessões NFS redirecionam automaticamente para uma zona íntegra. Não é necessário remontar os compartilhamentos NFS em suas VMs.
- Se você estiver implantando suas VMs em zonas de disponibilidade, use uma conta de armazenamento com o ZRS nas regiões do Azure que oferecem suporte ao ZRS.
- Atualmente, o Azure Files não oferece suporte à replicação automática entre regiões para cenários de recuperação de desastres.
Configurar (A)SCS
Em seguida, você preparará e instalará as instâncias SAP ASCS e ERS.
Criar um cluster de marcapasso
Siga as etapas em Configurar o Pacemaker no Red Hat Enterprise Linux no Azure para criar um cluster básico do Pacemaker para este servidor (A)SCS.
Preparar para uma instalação do SAP NetWeaver
Os seguintes itens são prefixados com:
- [A]: Aplicável a todos os nós
- [1]: Aplicável apenas ao nó 1
- [2]: Aplicável apenas ao nó 2
[A] Configure a resolução de nome de host.
Você pode usar um servidor DNS ou modificar o
/etc/hosts
arquivo em todos os nós. Este exemplo mostra como usar o/etc/hosts
arquivo. Substitua o endereço IP e o nome do host nos seguintes comandos:sudo vi /etc/hosts
Insira as seguintes linhas em
/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] Instale o cliente NFS e outros requisitos.
sudo yum -y install nfs-utils resource-agents resource-agents-sap
[1] Crie os diretórios SAP no compartilhamento NFS.
Monte o compartilhamento NFS sapnw1 temporariamente em uma das VMs e crie os diretórios 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] Verifique a versão do
resource-agents-sap
.Certifique-se de que a versão do pacote instalado
resource-agents-sap
é 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 SWAP.
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 no SAP Note 2002167 para RHEL 7.x, SAP Note 2772999 para RHEL 8.x ou SAP Note 3108316 para RHEL 9.x.
Instalar o SAP NetWeaver ASCS/ERS
[1] Configure 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 IP virtual e uma sonda de integridade para a instância 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 está correto e se todos os recursos foram iniciados. O nó em que os recursos estão sendo executados não é importante.
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 SAP NetWeaver ASCS.
Instale o SAP NetWeaver ASCS como a raiz no primeiro nó usando um nome de host virtual que mapeia para o endereço IP da configuração front-end do balanceador de carga para o ASCS, por exemplo, sapascs e 10.90.90.10, e o número da instância que você usou para a sonda do balanceador de carga, por exemplo, 00.
Você pode usar o
sapinst
parâmetroSAPINST_REMOTE_ACCESS_USER
para permitir que um usuário não raiz se conecte aosapinst
.# 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 ASCS00 e tente novamente.
sudo chown nw1adm /usr/sap/NW1/ASCS00 sudo chgrp sapsys /usr/sap/NW1/ASCS00
[1] Criar um recurso IP virtual e uma sonda de integridade para a instância 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 está correto e se todos os recursos foram iniciados. O nó em que os recursos estão sendo executados não é importante.
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 SAP NetWeaver ERS.
Instale o SAP NetWeaver ERS como a raiz no segundo nó usando um nome de host virtual que mapeia para o endereço IP da configuração front-end do balanceador de carga para o ERS, por exemplo, sapers e 10.90.90.9, e o número da instância que você usou para a sonda do balanceador de carga, por exemplo, 01.
Você pode usar o
sapinst
parâmetroSAPINST_REMOTE_ACCESS_USER
para permitir que um usuário não raiz se conecte aosapinst
.# 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/ERS01, tente definir o proprietário e o grupo da pasta ERS01 e tente novamente.
sudo chown qaadm /usr/sap/NW1/ERS01 sudo chgrp sapsys /usr/sap/NW1/ERS01
[1] Adaptar os perfis das instâncias ASCS/SCS e ERS.
Perfil 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, certifique-se de que os parâmetros do
keepalive
SO estão definidos conforme descrito na Nota 1410736 SAP.Perfil da 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] Configure o Keep Alive.
A comunicação entre o servidor de aplicativos 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 essa ação, defina um parâmetro no perfil ASCS/SCS do SAP NetWeaver, se estiver usando ENSA1. Altere as configurações do sistema
keepalive
Linux em todos os servidores SAP para ENSA1 e ENSA2. Para obter mais informações, consulte SAP Note 1410736.# Change the Linux system configuration sudo sysctl net.ipv4.tcp_keepalive_time=300
[A] Atualize o
/usr/sap/sapservices
arquivo.Para impedir o início das instâncias pelo
sapinit
script de inicialização, todas as instâncias gerenciadas pelo Pacemaker devem ser comentadas a/usr/sap/sapservices
partir do arquivo.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 systemd, as instâncias SAP agora podem ser gerenciadas pelo systemd. A versão mínima necessária do Red Hat Enterprise Linux (RHEL) é o RHEL 8 for SAP. Conforme descrito no SAP Note 3115048, uma nova instalação de um kernel SAP com suporte integrado ao SAP Startup Framework baseado em sistema sempre resultará em uma instância SAP controlada pelo sistema. Após uma atualização do kernel SAP de uma instalação SAP existente para um kernel que tenha suporte ao SAP Startup Framework baseado em sistema, no entanto, algumas etapas manuais devem ser executadas conforme documentado na Nota 3115048 do SAP para converter o ambiente de inicialização SAP existente em um que seja controlado pelo sistema.
Ao utilizar os serviços Red Hat HA for SAP (configuração de cluster) para gerenciar instâncias do servidor de aplicativos SAP, como SAP ASCS e SAP ERS, modificações adicionais serão necessárias para garantir a compatibilidade entre o agente de recursos SAPInstance e a nova estrutura de inicialização SAP baseada em sistema. Portanto, uma vez que as instâncias do servidor de aplicativos SAP tenham sido instaladas ou alternadas para um kernel SAP habilitado para sistema, de acordo com o SAP Note 3115048, as etapas mencionadas no Red Hat KBA 6884531 devem ser concluídas com êxito em todos os nós do cluster.
[1] Crie os recursos do cluster SAP.
Dependendo se você estiver executando um sistema ENSA1 ou ENSA2, selecione a respetiva guia para definir os recursos. A SAP introduziu o suporte para ENSA2, incluindo replicação, no SAP NetWeaver 7.52. A partir da plataforma ABAP 1809, o ENSA2 é instalado por padrão. Para suporte ENSA2. Consulte SAP Note 2630416 para obter suporte ao servidor de enfila 2.
Se você usar a arquitetura ENSA2 do servidor de enfila 2, instale o agente de recursos resource-agents-sap-4.1.1-12.el7.x86_64 ou mais recente e defina os recursos conforme mostrado aqui:
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 fila 2, consulte SAP Note 2641322.
Nota
Os tempos limite na configuração anterior são apenas exemplos e podem precisar ser adaptados à configuração específica do SAP.
Verifique se o status do cluster está correto e se todos os recursos foram iniciados. O nó em que os recursos estão sendo executados não é importante.
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 o seguinte passo para configurar
priority-fencing-delay
(aplicável apenas a partir do pacemaker-2.0.4-6.el8 ou superior).Nota
Se você tiver um cluster de dois nós, terá a opção de configurar a
priority-fencing-delay
propriedade do cluster. Esta propriedade introduz um atraso adicional na vedação de um nó que tem maior prioridade total de recursos quando ocorre um cenário de cérebro dividido. Para obter mais informações, consulte O Pacemaker pode cercar o nó do 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, certifique-se de limpar apcmk_delay_max
configuração no dispositivo de esgrima.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 para 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 SAP NetWeaver
Alguns bancos de dados exigem que a instalação da instância de banco de dados seja executada em um servidor de aplicativos. Prepare as VMs 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 ASCS/SCS e 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 tanto ao PAS como ao AAS
- [P]: Aplicável apenas ao PAS
- [S]: Aplicável apenas a EAA
[A] Configure a resolução de nome de host. Você pode usar um servidor DNS ou modificar o
/etc/hosts
arquivo em todos os nós. Este exemplo mostra como usar o/etc/hosts
arquivo. Substitua o endereço IP e o nome do host nos seguintes comandos:sudo vi /etc/hosts
Insira as seguintes linhas em
/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] Crie o
sapmnt
diretório.sudo mkdir -p /sapmnt/NW1 sudo mkdir -p /usr/sap/trans sudo chattr +i /sapmnt/NW1 sudo chattr +i /usr/sap/trans
[A] Instale 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 SWAP.
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
Instalar a base de dados
Neste exemplo, o SAP NetWeaver é instalado no SAP HANA. Você pode usar todos os bancos de dados suportados para esta instalação. Para obter mais informações sobre como instalar o SAP HANA no Azure, consulte Alta disponibilidade do SAP HANA em VMs do Azure no Red Hat Enterprise Linux. Para obter uma lista de bancos de dados suportados, consulte SAP Note 1928533.
Instale a instância do banco de dados SAP NetWeaver como uma raiz usando um nome de host virtual que mapeia para o endereço IP da configuração front-end do balanceador de carga para o banco de dados.
Você pode usar o sapinst
parâmetro SAPINST_REMOTE_ACCESS_USER
para permitir que um usuário não raiz se conecte ao 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 do servidor de aplicativos SAP NetWeaver
Siga estas etapas para instalar um servidor de aplicativos SAP.
[A] Prepare o servidor de aplicativos.
Siga as etapas na seção anterior Preparação do servidor de aplicativos SAP NetWeaver para preparar o servidor de aplicativos.
[A] Instale o servidor de aplicativos SAP NetWeaver.
Instale um servidor de aplicativos SAP NetWeaver primário ou adicional.
Você pode usar o
sapinst
parâmetroSAPINST_REMOTE_ACCESS_USER
para permitir que um usuário não raiz se conecte aosapinst
.sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
[A] Atualize o armazenamento seguro do SAP HANA.
Atualize o armazenamento seguro do SAP HANA para apontar para o nome virtual da configuração do SAP HANA System Replication.
Execute o seguinte comando 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, use
30313
eNW1
na saída da amostra.su - nw1adm hdbuserstore SET DEFAULT nw1db:30313@NW1 SAPABAP1 <password of ABAP schema>
Testar a configuração do cluster
Teste completamente o seu cluster de pacemaker. Para obter mais informações, consulte Executar os testes de failover típicos.
Próximos passos
- Para implantar um cenário de otimização de custos em que a instância PAS e AAS é implantada com o cluster SAP NetWeaver HA no RHEL, consulte Instalar a instância de diálogo SAP com VMs de alta disponibilidade SAP ASCS/SCS no RHEL.
- Consulte HA for SAP NW on Azure VMs on RHEL for SAP applications multi-SID guide.
- Consulte Planejamento e implementação de Máquinas Virtuais do Azure para SAP.
- Consulte Implantação de Máquinas Virtuais do Azure para SAP.
- Consulte Implantação de DBMS de Máquinas Virtuais do Azure para SAP.
- Para saber como estabelecer HA e planejar a recuperação de desastres do SAP HANA no Azure (instâncias grandes), consulte Alta disponibilidade e recuperação de desastres do SAP HANA (instâncias grandes) no Azure.
- Para saber como estabelecer HA e planejar a recuperação de desastres do SAP HANA em VMs do Azure, consulte Alta disponibilidade do SAP HANA em máquinas virtuais do Azure.