SAP NetWeaver de alta disponibilidade com montagem simples e NFS no SLES para VMs de aplicativos SAP
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) com uma estrutura de montagem simples. Você pode implementar a arquitetura apresentada usando um dos seguintes serviços NFS (Sistema de Arquivos de Rede) nativos do Azure:
Espera-se que a configuração de montagem simples seja o padrão para novas implementações no SLES para Aplicativos SAP 15.
Pré-requisitos
Os guias a seguir contêm todas as informações necessárias para configurar um sistema de HA do NetWeaver:
- SAP S/4 HANA – Enfileirar cluster de alta disponibilidade de replicação 2 com montagem simples
- O uso do recurso de sistema de arquivos para a instalação do ASCS (Serviços Centrais do SAP DO ABAP)/ERS não é possível
- A Nota SAP 1928533, que tem:
- Um lista de tamanhos de VMs do Azure compatíveis com a implantação de software SAP
- Informações importantes sobre capacidade para tamanhos de VM do Azure
- Software SAP, OSs (sistemas operacionais) e combinações com suporte
- A versão do kernel do SAP necessária para Windows e Linux no Microsoft Azure
- Nota SAP 2015553, que lista os pré-requisitos para implantações do software SAP com suporte para SAP no Azure.
- Nota SAP 2205917, que tem as configurações de SO recomendadas para SUSE Linux Enterprise Server para aplicativos SAP
- Nota SAP 2178632, que contém informações detalhadas sobre todas as métricas de monitoramentos relatadas para o SAP no Azure
- Nota SAP 2191498, que tem a versão necessária do Agente de Host do SAP para Linux no Azure
- Nota SAP 2243692, que tem informações sobre o licenciamento do SAP no Linux no Azure
- Nota SAP 2578899, que tem informações gerais sobre o SUSE Linux Enterprise Server 15
- Nota SAP 1275776, que tem informações sobre como preparar o SUSE Linux Enterprise Server para ambientes SAP
- Nota SAP 1999351, que tem informações de soluções de problemas adicionais para a Extensão de Monitoramento Avançado do Azure para SAP
- Wiki da comunidade SAP, que 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
- Guias de melhores práticas do SAP de alta disponibilidade do SUSE
- Notas sobre a versão da Extensão de Alta Disponibilidade do SUSE
- Documentação dos Arquivos do Azure
- Melhores práticas do NetApp NFS
Visão geral
Este artigo descreve a configuração de alta disponibilidade de ASCS com estrutura de montagem simples. Para implantar a camada de aplicativo SAP, você precisa de diretórios compartilhados como /sapmnt/SID
, /usr/sap/SID
e /usr/sap/trans
, que são altamente disponíveis. É possível implantar esses sistemas de arquivos no NFS em Arquivos do Azure ou Azure NetApp Files.
Você ainda precisa de um cluster do Pacemaker para ajudar a proteger componentes de ponto único de falha, como os SCS (Serviços Centrais do SAP) e ASCS.
Em comparação com a configuração clássica do cluster do Pacemaker, com a implantação da montagem simples, o cluster não gerencia os sistemas de arquivos. Essa configuração só tem suporte no SLES para aplicativos SAP 15 e mais recentes. Este artigo não aborda a camada de banco de dados em detalhes.
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 | 00 |
Servidor de Replicação Enfileiramento (ERS) | 01 |
PAS (Servidor de aplicativos primário) | 02 |
AAS (Servidor de aplicativos adicional) | 03 |
Identificador do sistema SAP | NW1 |
Importante
A configuração com estrutura de montagem simples só tem suporte no SLES para Aplicativos SAP 15 e versões posteriores.
Este diagrama mostra uma arquitetura de alta disponibilidade típica do SAP NetWeaver com montagem simples. Os sistemas de arquivos "sapmnt" e "saptrans" são implantados no NFS nativo do Azure: compartilhamentos NFS em volumes de Arquivos do Azure ou NFS no Azure NetApp Files. Um cluster do Pacemaker protege os serviços centrais do SAP. As VMs clusterizadas estão atrás de um balanceador de carga do Azure. O cluster do Pacemaker não gerencia os sistemas de arquivos, em contraste com a configuração clássica do Pacemaker.
Preparar a infraestrutura
O agente de recursos para a instância SAP está incluído no SUSE Linux Enterprise Server para SAP Applications. Uma imagem do SUSE Linux Enterprise Server para Applications SAP 12 ou 15 está disponível no Azure Marketplace. Você pode usar a imagem para implantar novas VMs.
Implantar VMs do Linux manualmente por meio do portal do Azure
Este documento pressupõe que você já implantou um grupo de recursos, uma Rede Virtual do Azure e uma sub-rede.
Implantar máquinas virtuais com imagem do SLES para Applications SAP. Escolha uma versão adequada da imagem do SLES que seja compatível com o sistema SAP. Você pode implementar a 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 de um balanceador de carga Standard interno do Azure (sem endereço IP público), não haverá nenhuma conectividade de saída com a Internet, a menos que você execute configurações adicionais a fim de permitir o roteamento para pontos de extremidade públicos. Para obter detalhes sobre como alcançar conectividade de saída, veja Conectividade de ponto de extremidade público para máquinas virtuais usando um Standard Load Balancer do Azure em cenários de alta disponibilidade do SAP.
Importante
- Não habilite carimbos de data/hora de TCP em VMs do Azure posicionadas de forma subjacente em relação ao Azure Load Balancer. Habilitar carimbos de data/hora de TCP fará com que as investigações de integridade falhem. Defina o parâmetro de
net.ipv4.tcp_timestamps
a0
. Para obter detalhes, veja Investigações de integridade do Load Balancer. - Para evitar que o saptune altere o valor
net.ipv4.tcp_timestamps
definido manualmente de0
de volta para1
, você deve atualizar a versão do saptune para 3.1.1 ou superior. Para obter mais informações, confira Saptune 3.1.1: preciso atualizar?.
Implantar o NFS
Há duas opções para implantar o NFS nativo do Azure para hospedar os diretórios compartilhados do SAP. Você pode implantar um compartilhamento de arquivo NFS nos Arquivos do Azure ou implantar um volume NFS no Azure NetApp Files. O NFS nos Arquivos do Azure dá suporte ao protocolo NFSv4.1. O NFS no Azure NetApp Files dá suporte a NFSv4.1 e NFSv3.
As próximas seções descrevem as etapas para implantar o NFS. Selecione apenas uma das opções.
Implantar uma 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:
- O LRS (armazenamento com redundância local) oferece replicação de dados síncrona local na zona.
- O ZRS (armazenamento com redundância de zona) replica os dados de maneira síncrona em três zonas de disponibilidade na região.
Verifique se a região do Azure selecionada oferece NFSv4.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 de 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 sapnfsafs. Este exemplo usa 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 sapnfsafs.
- Para Desempenho, selecione Premium.
- Para Tipo de conta Premium, selecione FileStorage.
- Para Replicação, selecione ZRS (redundância de zona).
- Selecione Avançar.
- Na guia Avançado, desmarque Exigir transferência segura para a 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 a assinatura, o grupo de recursos e a localização. Então, faça as seleções a seguir:
- Para Nome, insira sapnfsafs_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 em que as suas VMs do SAP estão ou uma rede virtual emparelhada.
- Em Integração do DNS privado, aceite a opção padrão Sim para Integrar com a zona DNS privada. Não deixe de selecionar a 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 eventuais 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, selecione Compartilhamentos de arquivo em Armazenamento de dados.
- Na página Compartilhamentos de arquivo, selecione Compartilhamento de arquivo, e então:
- Para Nome, insira sapnw1, saptrans.
- Selecione um tamanho de compartilhamento apropriado. Considere o tamanho dos dados armazenados nos requisitos de compartilhamento, IOPS (E/S por segundo) e 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.
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 taxa de transferência. Para obter detalhes, 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 a colocação de
/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 trabalho. 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 detalhes, confira Log de trabalho 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. - Não use o compartilhamento
saptrans
para nenhuma outra atividade, como interfaces. - Evite consolidar os compartilhamentos de muitos sistemas SAP em uma só conta de armazenamento. Há também metas de escalabilidade e de desempenho para contas de armazenamento. Tenha cuidado para não exceder os limites da conta de armazenamento também.
- 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 SLES 15 SP2 ou posterior 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.
Implantar recursos do Azure NetApp Files
Verifique se o serviço do Azure NetApp Files está disponível na sua região do Azure de escolha.
Crie uma conta do NetApp na região do Azure selecionada. Siga estas instruções.
Configure o pool de capacidade do Azure NetApp Files. Siga estas instruções.
A arquitetura do SAP NetWeaver apresentada neste artigo usa apenas um pool de capacidade do Azure NetApp Files, o SKU Premium. Recomendamos o SKU Premium do Azure NetApp Files para cargas de trabalho do aplicativo SAP NetWeaver no Azure.
Delegue uma sub-rede para o Azure NetApp Files, conforme descrito nestas instruções.
Implante os volumes do Azure NetApp Files seguindo estas instruções. Implante os volumes na sub-rede designada do Azure NetApp Files. Os endereços IP dos volumes do Azure NetApp são atribuídos automaticamente.
Lembre-se de que os recursos do Azure NetApp Files e as VMs do Azure precisam estar na mesma rede virtual do Azure ou em redes virtuais do Azure emparelhadas. Este exemplo usa dois volumes de Azure NetApp Files:
sapnw1
etrans
. Os caminhos de arquivo montados nos pontos de montagem correspondentes são:- Volume
sapnw1
(nfs://10.27.1.5/sapnw1/sapmntNW1
) - Volume
sapnw1
(nfs://10.27.1.5/sapnw1/usrsapNW1
) - Volume
trans
(nfs://10.27.1.5/trans
)
- Volume
Os sistemas de arquivos SAP que não precisam ser compartilhados e podem ser implantados no Armazenamento em Disco do Azure. Por exemplo, /usr/sap/NW1/D02
e /usr/sap/NW1/D03
podem ser implantados como armazenamento em disco do Azure.
Considerações importantes sobre o NFS no Azure NetApp Files
Ao considerar o uso do Azure NetApp Files para a arquitetura de alta disponibilidade do SAP NetWeaver, esteja ciente das seguintes considerações importantes:
- O pool de capacidade mínima é de 4 tebibytes (TiB). Você pode aumentar o tamanho do pool de capacidade em incrementos de 1 TiB.
- O volume mínimo é de 100 GiB.
- O Azure NetApp Files e todas as máquinas virtuais onde os volumes do Azure NetApp Files são montados, devem estar na mesma rede virtual do Azure ou em redes virtuais emparelhadas na mesma região. Há suporte para o acesso do Azure NetApp Files por emparelhamento de rede virtual na mesma região. O acesso do Azure NetApp Files por emparelhamento global ainda não tem suporte.
- A rede virtual selecionada precisa ter uma sub-rede delegada ao Azure NetApp Files.
- A taxa de transferência e as características do desempenho de um volume do Azure NetApp Files é uma função da cota de volume e do nível de serviço, conforme documentado no Nível de serviço para o Azure NetApp Files. Ao dimensionar os volumes do Azure NetApp Files para SAP, verifique se a taxa de transferência resultante atende aos requisitos do aplicativo.
- O Azure NetApp Files oferece uma política de exportação. Você pode controlar os clientes permitidos e o tipo de acesso (por exemplo, leitura/gravação ou somente leitura).
- O Azure NetApp Files ainda não tem reconhecimento de zona. No momento, o Azure NetApp Files não está implantado em todas as zonas de disponibilidade em uma região do Azure. Esteja atendo às possíveis implicações de latência em algumas regiões do Azure.
- Volumes do Azure NetApp Files podem ser implantados como volumes NFSv3 ou NFSv4.1. Os dois protocolos são compatíveis com a camada de aplicativo SAP (ASCS/ERS, servidores de aplicativos SAP).
Configurar o ASCS
Em seguida, você preparará e instalará as instâncias do SAP ASCS e ERS.
Criar um cluster do Pacemaker
Siga as etapas em Configurar o Pacemaker no SUSE Linux Enterprise Server no Azure para criar um cluster do Pacemaker básico para o SAP ASCS.
Preparar para a instalação
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] Instale a versão mais recente do conector SUSE.
sudo zypper install sap-suse-cluster-connector
[A] Instale o agente de recursos
sapstartsrv
.sudo zypper install sapstartsrv-resource-agents
[A] Atualize os agentes de recurso SAP.
Para usar a configuração que este artigo descreve, você precisa de um patch para o pacote de agentes de recursos. Para verificar se o patch já está instalado, use o comando a seguir.
sudo grep 'parameter name="IS_ERS"' /usr/lib/ocf/resource.d/heartbeat/SAPInstance
A saída deve ser semelhante ao exemplo a seguir.
<parameter name="IS_ERS" unique="0" required="0">;
Se o comando
grep
não localizar o parâmetroIS_ERS
, você precisará instalar o patch listado na página de download do SUSE.Importante
Você precisa instalar pelo menos
sapstartsrv-resource-agents
as versões 0.91 eresource-agents
4.x a partir de novembro de 2021.[A] Configure a resolução de nome do host.
Use um servidor DNS ou modifique
/etc/hosts
em todos os nós. Este exemplo mostra como usar o arquivo/etc/hosts
.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.27.0.6 sap-cl1 # IP address of cluster node 2 10.27.0.7 sap-cl2 # IP address of the load balancer's front-end configuration for SAP NetWeaver ASCS 10.27.0.9 sapascs # IP address of the load balancer's front-end configuration for SAP NetWeaver ERS 10.27.0.10 sapers
[A] Configure o arquivo de permuta.
sudo vi /etc/waagent.conf # Check if the ResourceDisk.Format property is already set to y, and if not, set it. ResourceDisk.Format=y # Set the ResourceDisk.EnableSwap property to y. # Create and use the SWAP file on the resource disk. ResourceDisk.EnableSwap=y # Set the size of the SWAP file with the ResourceDisk.SwapSizeMB property. # The free space of resource disk varies by virtual machine size. Don't set a value that's too big. You can check the SWAP space by using the swapon command. ResourceDisk.SwapSizeMB=2000
Reinicie o agente para ativar a alteração.
sudo service waagent restart
Prepare diretórios SAP se você estiver usando o NFS nos Arquivos do Azure
[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.# Temporarily mount the volume. sudo mkdir -p /saptmp sudo mount -t nfs sapnfsafs.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 usrsapNW1 # 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/NW1 sudo mkdir -p /usr/sap/trans sudo chattr +i /sapmnt/NW1 sudo chattr +i /usr/sap/NW1 sudo chattr +i /usr/sap/trans
[A] Monte os sistemas de arquivos.
Com a configuração de montagem simples, o cluster do Pacemaker não controla os sistemas de arquivos.
echo "sapnfsafs.file.core.windows.net:/sapnfsafs/sapnw1/sapmntNW1 /sapmnt/NW1 nfs noresvport,vers=4,minorversion=1,sec=sys 0 0" >> /etc/fstab echo "sapnfsafs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1/ /usr/sap/NW1 nfs noresvport,vers=4,minorversion=1,sec=sys 0 0" >> /etc/fstab echo "sapnfsafs.file.core.windows.net:/sapnfsafs/saptrans /usr/sap/trans nfs noresvport,vers=4,minorversion=1,sec=sys 0 0" >> /etc/fstab # Mount the file systems. mount -a
Prepare diretórios SAP se você estiver usando o NFS no Azure NetApp Files
As instruções nesta seção só serão aplicáveis se você estiver usando volumes do Azure NetApp Files com o protocolo NFSv4.1. Execute a configuração em todas as VMs em que os volumes NFSv4.1 do Azure NetApp Files serão montados.
[A] Desabilitar mapeamento de ID.
Verifique a configuração do domínio NFS. Verifique se o domínio está configurado como o domínio do Azure NetApp Files padrão,
defaultv4iddomain.com
. Verifique também se o mapeamento está definido comonobody
.sudo cat /etc/idmapd.conf # Examplepython-azure-mgmt-compute [General] Verbosity = 0 Pipefs-Directory = /var/lib/nfs/rpc_pipefs Domain = defaultv4iddomain.com [Mapping] Nobody-User = nobody Nobody-Group = nobody
Verificar
nfs4_disable_idmapping
. Ele deve ser definido comoY
.Para criar a estrutura de diretório em que
nfs4_disable_idmapping
está localizado, execute o comandomount
. Você não poderá criar o diretório manualmente em/sys/modules
, pois o acesso é reservado para o kernel e os drivers.# Check nfs4_disable_idmapping. cat /sys/module/nfs/parameters/nfs4_disable_idmapping # If you need to set nfs4_disable_idmapping to Y: mkdir /mnt/tmp mount 10.27.1.5:/sapnw1 /mnt/tmp umount /mnt/tmp echo "Y" > /sys/module/nfs/parameters/nfs4_disable_idmapping # Make the configuration permanent. echo "options nfs nfs4_disable_idmapping=Y" >> /etc/modprobe.d/nfs.conf
[1] Monte temporariamente o volume do Azure NetApp Files em uma das VMs e crie os diretórios SAP (caminhos de arquivo).
# Temporarily mount the volume. sudo mkdir -p /saptmp # If you're using NFSv3: sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,nfsvers=3,tcp 10.27.1.5:/sapnw1 /saptmp # If you're using NFSv4.1: sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys,tcp 10.27.1.5:/sapnw1 /saptmp # Create the SAP directories. sudo cd /saptmp sudo mkdir -p sapmntNW1 sudo mkdir -p usrsapNW1 # Unmount the volume and delete the temporary directory. sudo cd .. sudo umount /saptmp sudo rmdir /saptmp
[A] Crie os diretórios compartilhados.
sudo mkdir -p /sapmnt/NW1 sudo mkdir -p /usr/sap/NW1 sudo mkdir -p /usr/sap/trans sudo chattr +i /sapmnt/NW1 sudo chattr +i /usr/sap/NW1 sudo chattr +i /usr/sap/trans
[A] Monte os sistemas de arquivos.
Com a configuração de montagem simples, o cluster do Pacemaker não controla os sistemas de arquivos.
# If you're using NFSv3: echo "10.27.1.5:/sapnw1/sapmntNW1 /sapmnt/NW1 nfs nfsvers=3,hard 0 0" >> /etc/fstab echo "10.27.1.5:/sapnw1/usrsapNW1 /usr/sap/NW1 nfs nfsvers=3,hard 0 0" >> /etc/fstab echo "10.27.1.5:/saptrans /usr/sap/trans nfs nfsvers=3,hard 0 0" >> /etc/fstab # If you're using NFSv4.1: echo "10.27.1.5:/sapnw1/sapmntNW1 /sapmnt/NW1 nfs nfsvers=4.1,sec=sys,hard 0 0" >> /etc/fstab echo "10.27.1.5:/sapnw1/usrsapNW1 /usr/sap/NW1 nfs nfsvers=4.1,sec=sys,hard 0 0" >> /etc/fstab echo "10.27.1.5:/saptrans /usr/sap/trans nfs nfsvers=4.1,sec=sys,hard 0 0" >> /etc/fstab # Mount the file systems. mount -a
Instalar o ASCS e o ERS do SAP NetWeaver
[1] Crie um recurso de IP virtual e uma investigação de integridade para a instância do ASCS.
Importante
Recomendamos o uso do agente de recurso
azure-lb
, que faz parte do pacote de agentes de recurso com uma versão mínima deresource-agents-4.3.0184.6ee15eb2-4.13.1
.sudo crm node standby sap-cl2 sudo crm configure primitive vip_NW1_ASCS IPaddr2 \ params ip=10.27.0.9 \ op monitor interval=10 timeout=20 sudo crm configure primitive nc_NW1_ASCS azure-lb port=62000 \ op monitor timeout=20s interval=10 sudo crm configure group g-NW1_ASCS nc_NW1_ASCS vip_NW1_ASCS \ meta resource-stickiness=3000
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.
sudo crm_mon -r # Node sap-cl2: standby # Online: [ sap-cl1 ] # # Full list of resources: # # stonith-sbd (stonith:external/sbd): Started sap-cl1 # Resource Group: g-NW1_ASCS # 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 como raiz no primeiro nó.
Use um nome de host virtual que mapeia para o endereço IP da configuração de front-end do balanceador de carga para ASCS (por exemplo,
sapascs
,10.27.0.9
) e o número da instância que você usou para a investigação do balanceador de carga (por exemplo,00
).Você pode usar o parâmetro
SAPINST_REMOTE_ACCESS_USER
desapinst
para permitir que um usuário não raiz se conecte asapinst
. Você pode usar o parâmetroSAPINST_USE_HOSTNAME
para instalar o SAP usando o nome do host virtual.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/ASCS00
, defina o proprietário e o grupo da pastaASCS00
e tente novamente.chown nw1adm /usr/sap/NW1/ASCS00 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 crm node online sap-cl2 sudo crm node standby sap-cl1 sudo crm configure primitive vip_NW1_ERS IPaddr2 \ params ip=10.27.0.10 \ op monitor interval=10 timeout=20 sudo crm configure primitive nc_NW1_ERS azure-lb port=62101 \ op monitor timeout=20s interval=10 sudo crm configure group g-NW1_ERS nc_NW1_ERS vip_NW1_ERS
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.
sudo crm_mon -r # Node sap-cl1: standby # Online: [ sap-cl2 ] # # Full list of resources: # # stonith-sbd (stonith:external/sbd): Started sap-cl2 # Resource Group: g-NW1_ASCS # nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started sap-cl2 # vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started sap-cl2 # Resource Group: g-NW1_ERS # nc_NW1_ERS (ocf::heartbeat:azure-lb): Started sap-cl2 # vip_NW1_ERS (ocf::heartbeat:IPaddr2): Started sap-cl2
[2] Instale o ERS do SAP NetWeaver como raiz no segundo nó.
Use um nome do host virtual que mapeia para o endereço IP da configuração de front-end do balanceador de carga para ERS (por exemplo,
sapers
,10.27.0.10
) 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_REMOTE_ACCESS_USER
para permitir que um usuário não raiz se conecte asapinst
. Você pode usar o parâmetroSAPINST_USE_HOSTNAME
para instalar o SAP usando o nome do host virtual.<swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
Observação
Use SWPM SP 20 PL 05 ou posterior. As versões anteriores não definem as permissões corretamente e fazem com que a instalação falhe.
Se a instalação não conseguir criar uma subpasta em
/usr/sap/NW1/ERS01
, defina o proprietário e o grupo da pastaERS01
e tente novamente.chown nw1adm /usr/sap/NW1/ERS01 chgrp sapsys /usr/sap/NW1/ERS01
[1] Adapte o perfil da instância do ASCS.
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 following lines. service/halib = $(DIR_CT_RUN)/saphascriptco.so service/halib_cluster_connector = /usr/bin/sap_suse_cluster_connector # Add the keepalive parameter, if you're using ENSA1. enque/encni/set_so_keepalive = TRUE
Para o Enqueue Server 1 e 2 autônomo (ENSA1 e ENSA2), verifique se os parâmetros do sistema operacional
keepalive
estão definidos conforme descrito na Nota SAP 1410736.Agora adapte o perfil da instância 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) # Add the following lines. service/halib = $(DIR_CT_RUN)/saphascriptco.so service/halib_cluster_connector = /usr/bin/sap_suse_cluster_connector # Remove Autostart from the ERS profile. # Autostart = 1
[A] Configure
keepalive
.A comunicação entre o servidor de aplicativos do SAP NetWeaver e o ASCS é 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 desconexão, você precisará definir um parâmetro no perfil do ASCS 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 obter mais informações, leia a Nota SAP 1410736.# Change the Linux system configuration. sudo sysctl net.ipv4.tcp_keepalive_time=300
[A] Configure os usuários do SAP após a instalação.
# Add sidadm to the haclient group. sudo usermod -aG haclient nw1adm
[1] Adicione os serviços SAP de ERS e do ASCS ao arquivo
sapservice
.Adicione a entrada de serviço do ASCS ao segundo nó e copie a entrada de serviço do ERS para o primeiro nó.
cat /usr/sap/sapservices | grep ASCS00 | sudo ssh sap-cl2 "cat >>/usr/sap/sapservices" sudo ssh sap-cl2 "cat /usr/sap/sapservices" | grep ERS01 | sudo tee -a /usr/sap/sapservices
[A] Desabilitar os serviços
systemd
da instância ASCS e ERS do SAP. Esta etapa só é aplicável se a estrutura de inicialização do SAP for gerenciada pelo systemd, conforme a Nota SAP 3115048Observação
Ao gerenciar instâncias SAP como o SAP ASCS e o SAP ERS usando a configuração de cluster SLES, você precisará fazer modificações adicionais para integrar o cluster com a estrutura de inicialização do SAP baseada no systemd nativo. Isso garante que os procedimentos de manutenção não comprometam a estabilidade do cluster. Após a instalação ou a alternância da estrutura de inicialização do SAP para a configuração habilitada pelo sistema, conforme a Nota SAP 3115048, você deve desabilitar os serviços
systemd
para as instâncias ASCS e ERS do SAP.# Stop ASCS and ERS instances using <sid>adm sapcontrol -nr 00 -function Stop sapcontrol -nr 00 -function StopService sapcontrol -nr 01 -function Stop sapcontrol -nr 01 -function StopService # Execute below command on VM where you have performed ASCS instance installation (e.g. sap-cl1) sudo systemctl disable SAPNW1_00 # Execute below command on VM where you have performed ERS instance installation (e.g. sap-cl2) sudo systemctl disable SAPNW1_01
[A] Habilite
sapping
esappong
. O agentesapping
é executado antes desapinit
para ocultar o arquivo/usr/sap/sapservices
. O agentesappong
é executado depois desapinit
para remover o arquivosapservices
durante a inicialização da VM.SAPStartSrv
não é iniciado automaticamente para uma instância SAP no momento da inicialização, pois ela é gerenciada pelo cluster do Pacemaker.sudo systemctl enable sapping sudo systemctl enable sappong
[1] Crie um recurso
SAPStartSrv
para ASCS e ERS criando um arquivo e, então, carregue o arquivo.vi crm_sapstartsrv.txt
Insira o primitivo abaixo no arquivo
crm_sapstartsrv.txt
e salveprimitive rsc_sapstartsrv_NW1_ASCS00 ocf:suse:SAPStartSrv \ params InstanceName=NW1_ASCS00_sapascs primitive rsc_sapstartsrv_NW1_ERS01 ocf:suse:SAPStartSrv \ params InstanceName=NW1_ERS01_sapers
Carregue o arquivo usando o comando abaixo.
sudo crm configure load update crm_sapstartsrv.txt
Observação
Se você configurou um recurso SAPStartSrv usando o comando "crm configure primitive..." no crmsh versão 4.4.0+20220708.6ed6b56f-150400.3.3.1 ou posterior, é importante examinar a configuração dos primitivos de recurso SAPStartSrv. Se uma operação de monitor estiver presente, ela deverá ser removida. Embora a SUSE também sugira remover as operações de iniciar e parar, essas não são tão cruciais quanto a operação de monitoramento. Para obter mais informações, consulte as alterações recentes no pacote crmsh, que podem resultar em uma configuração sem suporte do Agente de Recursos SAPStartSrv em um cluster de alta disponibilidade do SAP NetWeaver.
[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 obter suporte para o ENSA2, confira a Nota SAP 2630416.
sudo crm configure property maintenance-mode="true" # If you're using NFS on Azure Files or NFSv3 on Azure NetApp Files: sudo crm configure primitive rsc_sap_NW1_ASCS00 SAPInstance \ op monitor interval=11 timeout=60 on-fail=restart \ params InstanceName=NW1_ASCS00_sapascs START_PROFILE="/sapmnt/NW1/profile/NW1_ASCS00_sapascs" \ AUTOMATIC_RECOVER=false MINIMAL_PROBE=true \ meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10 # If you're using NFS on Azure Files or NFSv3 on Azure NetApp Files: sudo crm configure primitive rsc_sap_NW1_ERS01 SAPInstance \ op monitor interval=11 timeout=60 on-fail=restart \ params InstanceName=NW1_ERS01_sapers START_PROFILE="/sapmnt/NW1/profile/NW1_ERS01_sapers" \ AUTOMATIC_RECOVER=false IS_ERS=true MINIMAL_PROBE=true \ meta priority=1000 # If you're using NFSv4.1 on Azure NetApp Files: sudo crm configure primitive rsc_sap_NW1_ASCS00 SAPInstance \ op monitor interval=11 timeout=105 on-fail=restart \ params InstanceName=NW1_ASCS00_sapascs START_PROFILE="/sapmnt/NW1/profile/NW1_ASCS00_sapascs" \ AUTOMATIC_RECOVER=false MINIMAL_PROBE=true \ meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10 # If you're using NFSv4.1 on Azure NetApp Files: sudo crm configure primitive rsc_sap_NW1_ERS01 SAPInstance \ op monitor interval=11 timeout=105 on-fail=restart \ params InstanceName=NW1_ERS01_sapers START_PROFILE="/sapmnt/NW1/profile/NW1_ERS01_sapers" \ AUTOMATIC_RECOVER=false IS_ERS=true MINIMAL_PROBE=true \ meta priority=1000 sudo crm configure modgroup g-NW1_ASCS add rsc_sapstartsrv_NW1_ASCS00 sudo crm configure modgroup g-NW1_ASCS add rsc_sap_NW1_ASCS00 sudo crm configure modgroup g-NW1_ERS add rsc_sapstartsrv_NW1_ERS01 sudo crm configure modgroup g-NW1_ERS add rsc_sap_NW1_ERS01 sudo crm configure colocation col_sap_NW1_no_both -5000: g-NW1_ERS g-NW1_ASCS sudo crm configure location loc_sap_NW1_failover_to_ers rsc_sap_NW1_ASCS00 rule 2000: runs_ers_NW1 eq 1 sudo crm configure order ord_sap_NW1_first_start_ascs Optional: rsc_sap_NW1_ASCS00:start rsc_sap_NW1_ERS01:stop symmetrical=false sudo crm_attribute --delete --name priority-fencing-delay sudo crm node online sap-cl1 sudo crm configure property maintenance-mode="false"
Se você estiver atualizando de uma versão mais antiga e alternando para o ENSA2, confira a Nota SAP 2641019.
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.
sudo crm_mon -r
# Full list of resources:
#
# stonith-sbd (stonith:external/sbd): Started sap-cl2
# Resource Group: g-NW1_ASCS
# nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started sap-cl1
# vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started sap-cl1
# rsc_sapstartsrv_NW1_ASCS00 (ocf::suse:SAPStartSrv): Started sap-cl1
# rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance): Started sap-cl1
# Resource Group: g-NW1_ERS
# nc_NW1_ERS (ocf::heartbeat:azure-lb): Started sap-cl2
# vip_NW1_ERS (ocf::heartbeat:IPaddr2): Started sap-cl2
# rsc_sapstartsrv_NW1_ERS01 (ocf::suse:SAPStartSrv): Started sap-cl2
# rsc_sap_NW1_ERS01 (ocf::heartbeat:SAPInstance): Started sap-cl1
Preparar o servidor de aplicativos SAP
Alguns bancos de dados exigem que a instalação do banco de dados seja executada em um servidor de aplicativos. Prepare as VMs do servidor de aplicativos para poder executar a instalação do banco de dados.
As etapas comuns abaixo pressupõem que você tenha instalado o servidor de aplicativos em um servidor diferente dos servidores do ASCS e do HANA:
Configure a resolução de nome do host.
Use um servidor DNS ou modifique
/etc/hosts
em todos os nós. Este exemplo mostra como usar o arquivo/etc/hosts
.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.27.0.6 sap-cl1 10.27.0.7 sap-cl2 # IP address of the load balancer's front-end configuration for SAP NetWeaver ASCS 10.27.0.9 sapascs # IP address of the load balancer's front-end configuration for SAP NetWeaver ERS 10.27.0.10 sapers 10.27.0.8 sapa01 10.27.0.12 sapa02
Configure o arquivo de permuta.
sudo vi /etc/waagent.conf # Set the ResourceDisk.EnableSwap property to y. # Create and use the SWAP file on the resource disk. ResourceDisk.EnableSwap=y # Set the size of the SWAP file by using the ResourceDisk.SwapSizeMB property. # The free space of the resource disk varies by virtual machine size. Don't set a value that's too big. You can check the SWAP space by using the swapon command. ResourceDisk.SwapSizeMB=2000
Reinicie o agente para ativar a alteração.
sudo service waagent restart
Preparar diretórios SAP
Se você estiver usando o NFS nos Arquivos do Azure, use as seguintes instruções para preparar os diretórios SAP nas VMs do servidor de aplicativos SAP:
Crie os pontos de montagem.
sudo mkdir -p /sapmnt/NW1 sudo mkdir -p /usr/sap/trans sudo chattr +i /sapmnt/NW1 sudo chattr +i /usr/sap/trans
Monte os sistemas de arquivos.
echo "sapnfsafs.file.core.windows.net:/sapnfsafs/sapnw1/sapmntNW1 /sapmnt/NW1 nfs noresvport,vers=4,minorversion=1,sec=sys 0 0" >> /etc/fstab echo "sapnfsafs.file.core.windows.net:/sapnfsafs/saptrans /usr/sap/trans nfs noresvport,vers=4,minorversion=1,sec=sys 0 0" >> /etc/fstab # Mount the file systems. mount -a
Se você estiver usando o NFS no Azure NetApp Files, use as seguintes instruções para preparar os diretórios SAP nas VMs do servidor de aplicativos SAP:
Crie os pontos de montagem.
sudo mkdir -p /sapmnt/NW1 sudo mkdir -p /usr/sap/trans sudo chattr +i /sapmnt/NW1 sudo chattr +i /usr/sap/trans
Monte os sistemas de arquivos.
# If you're using NFSv3: echo "10.27.1.5:/sapnw1/sapmntNW1 /sapmnt/NW1 nfs nfsvers=3,hard 0 0" >> /etc/fstab echo "10.27.1.5:/saptrans /usr/sap/trans nfs nfsvers=3, hard 0 0" >> /etc/fstab # If you're using NFSv4.1: echo "10.27.1.5:/sapnw1/sapmntNW1 /sapmnt/NW1 nfs nfsvers=4.1,sec=sys,hard 0 0" >> /etc/fstab echo "10.27.1.5:/saptrans /usr/sap/trans nfs nfsvers=4.1,sec=sys,hard 0 0" >> /etc/fstab # Mount the file systems. mount -a
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 máquinas virtuais do Azure. Para obter uma lista de bancos de dados com suporte, confira a 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_REMOTE_ACCESS_USER
para permitir que um usuário não raiz se conecte a sapinst
.
sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
Instalar o servidor de aplicativos do SAP NetWeaver
Siga estas etapas para instalar um servidor de aplicativos do SAP:
[A] Prepare o servidor de aplicativos.
Siga as etapas na Preparação do servidor de aplicativos SAP NetWeaver.
[A] Instale um servidor de aplicativos do SAP NetWeaver primário ou adicional.
Você pode usar o parâmetro
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] Atualize o repositório seguro do SAP HANA para apontar para o nome virtual da configuração de replicação do sistema SAP HANA.
Execute o comando a seguir para listar as entradas.
hdbuserstore List
O comando deve listar todas as entradas e deve ser semelhante a este exemplo.
DATA FILE : /home/nw1adm/.hdb/sapa01/SSFS_HDB.DAT KEY FILE : /home/nw1adm/.hdb/sapa01/SSFS_HDB.KEY KEY DEFAULT ENV : 10.27.0.4: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. Use 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>
Teste a instalação do seu cluster
Teste completamente o cluster do Pacemaker. Execute os testes de failover típicos.
Próximas etapas
- Guia de HA para SAP NetWeaver em VMs do Azure no SLES para aplicativos SAP multi-SID
- Configurações de carga de trabalho do SAP com zonas de disponibilidade do Azure
- 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
- Alta disponibilidade do SAP HANA em VMs do Azure