Disponibilità elevata delle macchine virtuali di Azure per SAP NetWeaver in RHEL con Azure NetApp Files per applicazioni SAP
Questo articolo descrive come distribuire le macchine virtuali, configurare le macchine virtuali, installare il framework del cluster e installare un sistema SAP NetWeaver 7.50 a disponibilità elevata tramite Azure NetApp Files. Nelle configurazioni di esempio e nei comandi di installazione, l'istanza di ASC è il numero 00, il numero di istanza ERS è 01, l'istanza dell'applicazione primaria (PAS) è 02 e l'istanza dell'applicazione (AAS) è 03. Viene usato l'ID del sistema SAP QAS.
Il livello del database non è descritto in dettaglio in questo articolo.
Prerequisiti
Leggere prima di tutto i documenti e le note SAP seguenti:
Nota SAP 1928533, contenente:
- Elenco delle dimensioni delle VM di Azure supportate per la distribuzione di software SAP.
- Informazioni importanti sulla capacità per le dimensioni delle macchine virtuali di Azure.
- Software SAP e combinazioni di sistemi operativi e database supportati.
- Versione del kernel SAP richiesta per Windows e Linux in Microsoft Azure.
La nota SAP 2015553 elenca i prerequisiti per le distribuzioni di software SAP supportate da SAP in Azure.
La nota SAP 2002167 indica le impostazioni del sistema operativo consigliate per Red Hat Enterprise Linux.
La nota SAP 2009879 contiene le linee guida di SAP HANA per Red Hat Enterprise Linux.
La nota SAP 2178632 contiene informazioni dettagliate su tutte le metriche di monitoraggio segnalate per SAP in Azure.
La nota SAP 2191498 contiene la versione dell'agente host SAP per Linux necessaria in Azure.
La nota SAP 2243692 contiene informazioni sulle licenze SAP in Linux in Azure.
La nota SAP 1999351 contiene altre informazioni sulla risoluzione dei problemi per l'estensione di monitoraggio avanzato di Azure per SAP.
Community WIKI SAP contiene tutte le note su SAP necessarie per Linux.
Pianificazione e implementazione di Macchine virtuali di Azure per SAP in Linux
Distribuzione di Macchine virtuali di Azure per SAP in Linux
Distribuzione DBMS di Macchine virtuali di Azure per SAP in Linux
Documentazione generale di Red Hat Enterprise Linux (RHEL):
- High Availability Add-On Overview (Panoramica dei componenti aggiuntivi a disponibilità elevata)
- High Availability Add-On Administration (Amministrazione dei componenti aggiuntivi a disponibilità elevata)
- High Availability Add-On Reference (Riferimento dei componenti aggiuntivi a disponibilità elevata)
- Configurazione di ASCS/ERS per SAP NetWeaver con risorse autonome in RHEL 7.5
- Configurare SAP S/4HANA ASCS/ERS con il Server di accodamento autonomo 2 (ENSA2) in Pacemaker in RHEL
Documentazione di RHEL specifica di Azure:
- Support Policies for RHEL High Availability Clusters - Microsoft Azure Virtual Machines as Cluster Members (Criteri di supporto per cluster RHEL a disponibilità elevata - Macchine virtuali di Microsoft Azure come membri del cluster)
- Installing and Configuring a Red Hat Enterprise Linux 7.4 (and later) High-Availability Cluster on Microsoft Azure (Installazione e configurazione di un cluster Red Hat Enterprise Linux 7.4 e versioni successive a disponibilità elevata in Microsoft Azure)
Applicazioni NetApp SAP su Microsoft Azure con Azure NetApp Files
Panoramica
La disponibilità elevata per SAP NetWeaver Central Services richiede l'archiviazione condivisa. Fino ad ora, per ottenere la disponibilità elevata in Red Hat Linux, era necessario creare un cluster GlusterFS a disponibilità elevata separato.
È ora possibile ottenere la disponibilità elevata di SAP NetWeaver usando l'archiviazione condivisa, distribuita in Azure NetApp Files. L'uso di Azure NetApp Files per l'archiviazione condivisa elimina la necessità di più cluster GlusterFS. Pacemaker è ancora necessario per la disponibilità elevata di SAP NetWeaver Central Services (ASCS/SCS).
SAP NetWeaver ASCS, SAP NetWeaver SCS, SAP NetWeaver ERS e il database SAP HANA usano un nome host virtuale e indirizzi IP virtuali. In Azure è necessario un servizio di bilanciamento del carico per usare un indirizzo IP virtuale. È consigliabile usare Azure Load Balancer Standard. La configurazione mostra un servizio di bilanciamento del carico con:
- Indirizzo IP front-end 192.168.14.9 per ASCS.
- Indirizzo IP front-end 192.168.14.10 per ERS.
- Porta probe 62000 per ASCS.
- Porta probe 62101 per ERS.
Configurare l'infrastruttura Azure NetApp Files
SAP NetWeaver richiede un'archiviazione condivisa per la directory di trasporto e del profilo. Prima di procedere con la configurazione dell'infrastruttura Azure NetApp Files, acquisire familiarità con la documentazione di Azure NetApp Files. Controllare se l'area di Azure selezionata offre Azure NetApp Files. Per informazioni sulla disponibilità di Azure NetApp Files per area di Azure, vedere Disponibilità di Azure NetApp Files in base all'area di Azure.
Azure NetApp Files è disponibile in numerose aree di Azure.
Distribuire le risorse di Azure NetApp Files
I passaggi presuppongono che sia già stata eseguita la distribuzione di Rete virtuale di Azure. Le risorse di Azure NetApp Files e tutte le macchine virtuali, in cui le risorse di Azure NetApp Files verranno montate, devono essere distribuite nella stessa istanza di rete virtuale di Azure o in reti virtuali di Azure con peering.
Creare l'account Azure NetApp Files nell'area di Azure selezionata seguendo le istruzioni per creare un account Azure NetApp Files.
Configurare un pool di capacità di Azure NetApp Files, seguendo le istruzioni su come Configurare un pool di capacità Azure NetApp Files. L'architettura SAP NetWeaver presentata in questo articolo usa un singolo pool di capacità di Azure NetApp Files, SKU Premium. Lo SKU Premium di Azure NetApp Files è consigliabile per il carico di lavoro dell'applicazione SAP NetWeaver in Azure.
Delegare una subnet ad Azure NetApp Files come descritto nelle istruzioni per delegare una subnet a Azure NetApp Files.
Distribuire volumi di Azure NetApp Files, seguendo le istruzioni per creare un volume per Azure NetApp Files. Distribuire i volumi nella subnet di Azure NetApp Files designata. Gli indirizzi IP dei volumi di Azure NetApp vengono assegnati automaticamente. Le risorse di Azure NetApp Files e le macchine virtuali di Azure devono trovarsi nella stessa istanza di Rete virtuale di Azure o in reti virtuali di Azure con peering. In questo esempio vengono usati due volumi Azure NetApp Files: sapQAS e transSAP. I percorsi file montati nei punti di montaggio corrispondenti sono /usrsapqas/sapmntQAS e /usrsapqas/usrsapQASsys.
- Volume sapQAS (nfs://192.168.24.5/usrsapqas/sapmntQAS)
- Volume sapQAS (nfs://192.168.24.5/usrsapqas/usrsapQASascs)
- Volume sapQAS (nfs://192.168.24.5/usrsapqas/usrsapQASsys)
- Volume sapQAS (nfs://192.168.24.5/usrsapqas/usrsapQASers)
- Volume transSAP (nfs://192.168.24.4/transSAP)
- Volume sapQAS (nfs://192.168.24.5/usrsapqas/usrsapQASpas)
- Volume sapQAS (nfs://192.168.24.5/usrsapqas/usrsapQASaas)
In questo esempio è stato usato Azure NetApp Files per tutti i file system di SAP NetWeaver per dimostrare come è possibile usare Azure NetApp Files. I file system SAP che non devono essere montati tramite NFS possono anche essere distribuiti come archiviazione su disco di Azure. In questo esempio a-e deve trovarsi in Azure NetApp Files e f-g (ovvero /usr/sap/QAS/D02 e /usr/sap/QAS/D03) può essere distribuito come archiviazione su disco di Azure.
Considerazioni importanti
Quando si considera Azure NetApp Files per l'architettura SAP NetWeaver in RHEL a disponibilità elevata, tenere presenti le considerazioni importanti seguenti:
- La capacità minima del pool è di 4 TiB. È possibile aumentare le dimensioni del pool di capacità in incrementi di 1 TiB.
- Il volume minimo è di 100 GiB.
- Azure NetApp Files e tutte le macchine virtuali in cui verranno montati i volumi Azure NetApp Files devono trovarsi nella stessa istanza di Rete virtuale di Azure o in reti virtuali con peering nella stessa area. L'accesso ad Azure NetApp Files mediante peering VNET nella stessa area ora è supportato. L'accesso ad Azure NetApp Files tramite peering globale non è ancora supportato.
- La rete virtuale selezionata deve avere una subnet delegata ad Azure NetApp Files.
- Le caratteristiche di velocità effettiva e prestazioni di un volume di Azure NetApp Files sono una funzione della quota del volume e del livello di servizio. Per altre informazioni, vedere Livello di servizio per Azure NetApp Files. Durante il dimensionamento dei volumi SAP Azure NetApp, assicurarsi che la velocità effettiva risultante soddisfi i requisiti dell'applicazione.
- Azure NetApp Files offre criteri di esportazione. È possibile controllare i client consentiti e il tipo di accesso, ad esempio Lettura/Scrittura e Sola lettura.
- La funzionalità Azure NetApp Files non è ancora in grado di riconoscere la zona. Attualmente la funzionalità Azure NetApp Files non viene distribuita in tutte le zone di disponibilità in un'area di Azure. Tenere presente le implicazioni di latenza potenziali in alcune aree di Azure.
- È possibile distribuire volumi Azure NetApp Files come volumi NFSv3 o NFSv4.1. Entrambi i protocolli sono supportati per il livello applicazione SAP (server di applicazione SAP, ASCS/ERS).
Preparare l'infrastruttura
Azure Marketplace contiene immagini qualificate per SAP con il componente aggiuntivo a disponibilità elevata, che è possibile usare per distribuire nuove macchine virtuali usando diverse versioni di Red Hat.
Distribuire macchine virtuali Linux manualmente tramite il portale di Azure
Questo documento presuppone che sia già stata distribuita una rete virtuale di Azure, una subnet e un gruppo di risorse.
Distribuire macchine virtuali per SAP ASCS, ERS e server applicazioni. Scegliere un'immagine RHEL appropriata supportata per il sistema SAP. È possibile distribuire una macchina virtuale in una delle opzioni di disponibilità: set di scalabilità di macchine virtuali, zona di disponibilità o set di disponibilità.
Configurare il servizio di bilanciamento del carico di Azure
Durante la configurazione della macchina virtuale, è possibile creare o selezionare l'uscita dal servizio di bilanciamento del carico nella sezione Rete. Seguire questa procedura per configurare un servizio di bilanciamento del carico standard per la configurazione a disponibilità elevata di SAP ASCS e SAP ERS.
Seguire la guida alla creazione del servizio di bilanciamento del carico per configurare un servizio di bilanciamento del carico standard per un sistema SAP a disponibilità elevata usando il portale di Azure. Durante la configurazione del servizio di bilanciamento del carico, prendere in considerazione i punti seguenti.
- Configurazione IP front-end: creare due indirizzi IP front-end, uno per ASCS e un altro per ERS. Selezionare la stessa rete virtuale e la stessa subnet delle macchine virtuali ASCS/ERS.
- Pool back-end: creare un pool back-end e aggiungere macchine virtuali ASCS e ERS.
- Regole in ingresso: creare due regole di bilanciamento del carico, una per ASCS e un'altra per ERS. Seguire la stessa procedura per entrambe le regole di bilanciamento del carico.
- Indirizzo IP front-end: selezionare IP front-end
- Pool back-end: selezionare il pool back-end
- Controllare "Porte a disponibilità elevata"
- Protocollo: TCP
- Probe di integrità: creare un probe di integrità con i dettagli seguenti (si applica sia per ASCS che per ERS)
- Protocollo: TCP
- Porta: [ad esempio: 620<Istanza-n.> per ASCS, 621<Istanza-n.> per ERS]
- Intervallo: 5
- Soglia probe: 2
- Timeout di inattività (minuti): 30
- Selezionare "Abilita IP mobile"
Nota
La proprietà di configurazione del probe di integrità numberOfProbes, altrimenti nota nel portale come "Soglia non integra", non viene rispettata. Per controllare il numero di probe consecutivi riusciti o non riusciti, impostare la proprietà "probeThreshold" su 2. Non è attualmente possibile impostare questa proprietà usando il portale di Azure, quindi usare l’interfaccia della riga di comando di Azure o il comando di PowerShell.
Nota
Se vengono inserite macchine virtuali senza indirizzi IP pubblici in un pool back-end di Load Balancer standard interno (nessun indirizzo IP pubblico), non sarà presente alcuna connettività Internet in uscita, a meno che non venga eseguita una configurazione aggiuntiva per consentire il routing a endpoint pubblici. Per maggiori informazioni su come ottenere la connettività in uscita, vedere Connettività degli endpoint pubblici per le macchine virtuali usando Load Balancer Standard di Azure negli scenari a disponibilità elevata SAP.
Importante
Non abilitare i timestamp TCP nelle macchine virtuali di Azure che si trovano dietro Azure Load Balancer. Se si abilitano i timestamp TCP, i probe di integrità potrebbero avere esito negativo. Impostare il parametro net.ipv4.tcp_timestamps su 0. Per altre informazioni, vedere Probe di integrità di Load Balancer.
Disabilitare il mapping degli ID (se si usa NFSv4.1)
Le istruzioni contenute in questa sezione sono applicabili solo se si usano volumi di Azure NetApp Files con il protocollo NFSv4.1. Eseguire la configurazione su tutte le macchine virtuali, in cui verranno montati volumi Azure NetApp Files NFSv4.1.
Verificare l'impostazione del dominio NFS. Verificare che il dominio sia configurato come dominio di Azure NetApp Files predefinito, ovvero
defaultv4iddomain.com
, e che il mapping sia impostato su nobody (nessuno).Importante
Verificare di impostare il dominio NFS in
/etc/idmapd.conf
sulla macchina virtuale in modo che corrisponda alla configurazione del dominio predefinito in Azure NetApp Files:defaultv4iddomain.com
. Se si verifica una mancata corrispondenza tra la configurazione del dominio nel client NFS (ovvero la macchina virtuale) e il server NFS (ovvero la configurazione di Azure NetApp), le autorizzazioni per i file nei volumi di Azure NetApp montati nelle macchine virtuali vengono visualizzate comenobody
.sudo cat /etc/idmapd.conf # Example [General] Domain = defaultv4iddomain.com [Mapping] Nobody-User = nobody Nobody-Group = nobody
Il prefisso [A] seguente si applica sia a PAS che ad AAS.
[A] Verificare
nfs4_disable_idmapping
. Il valore deve essere impostato su Y. Per creare la struttura di directory in cui si trovanfs4_disable_idmapping
, eseguire il comando mount. Non sarà possibile creare manualmente la directory in/sys/modules
, perché l'accesso è riservato per il kernel e i driver.# 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 192.168.24.5:/sapQAS 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
Configurare (A)SCS
Successivamente, si prepareranno e si installeranno le istanze di SAP ASCS e ERS.
Creare un cluster Pacemaker
Seguire i passaggi della procedura di Configura Pacemaker in Red Hat Enterprise Linux in Azure per creare un cluster Pacemaker di base per questo server (A)SCS.
Prepararsi per l'installazione di SAP NetWeaver
Gli elementi seguenti sono preceduti da uno degli elementi seguenti:
- [A]: applicabile a tutti i nodi
- [1]: applicabile solo al nodo 1
- [2]: applicabile solo al nodo 2
[A] Configurare la risoluzione dei nomi host.
È possibile usare un server DNS o modificare il file
/etc/hosts
in tutti i nodi. In questo esempio viene illustrato come usare il file/etc/hosts
. Sostituire l'indirizzo IP e il nome host nei comandi seguenti:sudo vi /etc/hosts
Inserire le righe seguenti prima di
/etc/hosts
. Modificare l'indirizzo IP e il nome host in base all'ambiente.# IP address of cluster node 1 192.168.14.5 anftstsapcl1 # IP address of cluster node 2 192.168.14.6 anftstsapcl2 # IP address of the load balancer frontend configuration for SAP Netweaver ASCS 192.168.14.9 anftstsapvh # IP address of the load balancer frontend configuration for SAP Netweaver ERS 192.168.14.10 anftstsapers
[1] Creare directory SAP nel volume Azure NetApp Files. Montare il volume di Azure NetApp Files temporaneamente in una delle macchine virtuali e creare le directory SAP (percorsi di file).
# mount temporarily the volume sudo mkdir -p /saptmp # If using NFSv3 sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,nfsvers=3,tcp 192.168.24.5:/sapQAS /saptmp # If using NFSv4.1 sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys,tcp 192.168.24.5:/sapQAS /saptmp # create the SAP directories sudo cd /saptmp sudo mkdir -p sapmntQAS sudo mkdir -p usrsapQASascs sudo mkdir -p usrsapQASers sudo mkdir -p usrsapQASsys sudo mkdir -p usrsapQASpas sudo mkdir -p usrsapQASaas # unmount the volume and delete the temporary directory sudo cd .. sudo umount /saptmp sudo rmdir /saptmp
[A] Creare le directory condivise.
sudo mkdir -p /sapmnt/QAS sudo mkdir -p /usr/sap/trans sudo mkdir -p /usr/sap/QAS/SYS sudo mkdir -p /usr/sap/QAS/ASCS00 sudo mkdir -p /usr/sap/QAS/ERS01 sudo chattr +i /sapmnt/QAS sudo chattr +i /usr/sap/trans sudo chattr +i /usr/sap/QAS/SYS sudo chattr +i /usr/sap/QAS/ASCS00 sudo chattr +i /usr/sap/QAS/ERS01
[A] Installare il client NFS e altri requisiti.
sudo yum -y install nfs-utils resource-agents resource-agents-sap
[A] Controllare la versione di
resource-agents-sap
.Assicurarsi che la versione del pacchetto
resource-agents-sap
installato sia almeno3.9.5-124.el7
.sudo yum info resource-agents-sap # Loaded plugins: langpacks, product-id, search-disabled-repos # Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast # Installed Packages # Name : resource-agents-sap # Arch : x86_64 # Version : 3.9.5 # Release : 124.el7 # Size : 100 k # Repo : installed # From repo : rhel-sap-for-rhel-7-server-rpms # Summary : SAP cluster resource agents and connector script # URL : https://github.com/ClusterLabs/resource-agents # License : GPLv2+ # Description : The SAP resource agents and connector script interface with # : Pacemaker to allow SAP instances to be managed in a cluster # : environment.
[A] Aggiungere le voci di montaggio.
Se si usa NFSv3:
sudo vi /etc/fstab # Add the following lines to fstab, save and exit 192.168.24.5:/sapQAS/sapmntQAS /sapmnt/QAS nfs rw,hard,rsize=65536,wsize=65536,nfsvers=3 192.168.24.5:/sapQAS/usrsapQASsys /usr/sap/QAS/SYS nfs rw,hard,rsize=65536,wsize=65536,nfsvers=3 192.168.24.4:/transSAP /usr/sap/trans nfs rw,hard,rsize=65536,wsize=65536,nfsvers=3
Se si usa NFSv4.1:
sudo vi /etc/fstab # Add the following lines to fstab, save and exit 192.168.24.5:/sapQAS/sapmntQAS /sapmnt/QAS nfs rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys 192.168.24.5:/sapQAS/usrsapQASsys /usr/sap/QAS/SYS nfs rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys 192.168.24.4:/transSAP /usr/sap/trans nfs rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys
Nota
Assicurarsi di associare la versione del protocollo NFS dei volumi Azure NetApp Files, durante il montaggio dei volumi. Se i volumi Azure NetApp Files vengono creati come volumi NFSv3, usare la configurazione NFSv3 corrispondente. Se i volumi Azure NetApp Files vengono creati come volumi NFSv4.1, seguire le istruzioni per disabilitare il mapping degli ID e assicurarsi di usare la configurazione NFSv4.1 corrispondente. In questo esempio i volumi Azure NetApp Files sono stati creati come volumi NFSv3.
Montare le nuove condivisioni.
sudo mount -a
[A] Configurare il file 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 VM 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
Riavviare l'agente per attivare la modifica.
sudo service waagent restart
[A] Eseguire la configurazione del sistema operativo RHEL.
In base alla versione RHEL, eseguire la configurazione indicata in SAP Note 2002167, 2772999, 3108316 o 3108316.
Installare SAP NetWeaver ASCS/ERS
[1] Configurare le proprietà predefinite del cluster.
pcs resource defaults resource-stickiness=1 pcs resource defaults migration-threshold=3
[1] Creare una risorsa IP virtuale e un probe di integrità per l'istanza di ASCS.
sudo pcs node standby anftstsapcl2 # If using NFSv3 sudo pcs resource create fs_QAS_ASCS Filesystem device='192.168.24.5:/sapQAS/usrsapQASascs' \ directory='/usr/sap/QAS/ASCS00' fstype='nfs' force_unmount=safe \ op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \ --group g-QAS_ASCS # If using NFSv4.1 sudo pcs resource create fs_QAS_ASCS Filesystem device='192.168.24.5:/sapQAS/usrsapQASascs' \ directory='/usr/sap/QAS/ASCS00' fstype='nfs' force_unmount=safe options='sec=sys,nfsvers=4.1' \ op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=105 \ --group g-QAS_ASCS sudo pcs resource create vip_QAS_ASCS IPaddr2 \ ip=192.168.14.9 \ --group g-QAS_ASCS sudo pcs resource create nc_QAS_ASCS azure-lb port=62000 \ --group g-QAS_ASCS
Assicurarsi che lo stato del cluster sia corretto e che tutte le risorse siano avviate. Il nodo in cui vengono eseguite le risorse non è importante.
sudo pcs status # Node anftstsapcl2: standby # Online: [ anftstsapcl1 ] # # Full list of resources: # # rsc_st_azure (stonith:fence_azure_arm): Started anftstsapcl1 # Resource Group: g-QAS_ASCS # fs_QAS_ASCS (ocf::heartbeat:Filesystem): Started anftstsapcl1 # nc_QAS_ASCS (ocf::heartbeat:azure-lb): Started anftstsapcl1 # vip_QAS_ASCS (ocf::heartbeat:IPaddr2): Started anftstsapcl1
[1] Installare SAP NetWeaver ASCS.
Installare SAP NetWeaver ASCS come root nel primo nodo usando un nome host virtuale mappato all'indirizzo IP della configurazione front-end di bilanciamento del carico per l'istanza ASCS, ad esempio anftstsapvh e 192.168.14.9, e il numero di istanza usato per il probe del bilanciamento del carico, ad esempio 00.
È possibile usare il parametro
sapinst
SAPINST_REMOTE_ACCESS_USER
per consentire a un utente nonroot di connettersi 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 durante l'installazione non viene creata una sottocartella in /usr/sap/QAS/ASCS00, provare a impostare il proprietario e il gruppo della cartella ASCS00 e riprovare.
sudo chown qasadm /usr/sap/QAS/ASCS00 sudo chgrp sapsys /usr/sap/QAS/ASCS00
[1] Creare una risorsa IP virtuale e un probe di integrità per l'istanza di ERS.
sudo pcs node unstandby anftstsapcl2 sudo pcs node standby anftstsapcl1 # If using NFSv3 sudo pcs resource create fs_QAS_AERS Filesystem device='192.168.24.5:/sapQAS/usrsapQASers' \ directory='/usr/sap/QAS/ERS01' fstype='nfs' force_unmount=safe \ op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \ --group g-QAS_AERS # If using NFSv4.1 sudo pcs resource create fs_QAS_AERS Filesystem device='192.168.24.5:/sapQAS/usrsapQASers' \ directory='/usr/sap/QAS/ERS01' fstype='nfs' force_unmount=safe options='sec=sys,nfsvers=4.1' \ op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=105 \ --group g-QAS_AERS sudo pcs resource create vip_QAS_AERS IPaddr2 \ ip=192.168.14.10 \ --group g-QAS_AERS sudo pcs resource create nc_QAS_AERS azure-lb port=62101 \ --group g-QAS_AERS
Assicurarsi che lo stato del cluster sia corretto e che tutte le risorse siano avviate. Il nodo in cui vengono eseguite le risorse non è importante.
sudo pcs status # Node anftstsapcl1: standby # Online: [ anftstsapcl2 ] # # Full list of resources: # # rsc_st_azure (stonith:fence_azure_arm): Started anftstsapcl2 # Resource Group: g-QAS_ASCS # fs_QAS_ASCS (ocf::heartbeat:Filesystem): Started anftstsapcl2 # nc_QAS_ASCS (ocf::heartbeat:azure-lb): Started anftstsapcl2< # vip_QAS_ASCS (ocf::heartbeat:IPaddr2): Started anftstsapcl2 # Resource Group: g-QAS_AERS # fs_QAS_AERS (ocf::heartbeat:Filesystem): Started anftstsapcl2 # nc_QAS_AERS (ocf::heartbeat:azure-lb): Started anftstsapcl2 # vip_QAS_AERS (ocf::heartbeat:IPaddr2): Started anftstsapcl2
[2] Installare SAP NetWeaver ERS.
Installare SAP NetWeaver ERS come root nel secondo nodo usando un nome host virtuale mappato all'indirizzo IP della configurazione front-end di bilanciamento del carico per ERS, ad esempio anftstsapers e 192.168.14.10, e il numero di istanza usato per il probe del bilanciamento del carico, ad esempio 01.
È possibile usare il parametro
sapinst
SAPINST_REMOTE_ACCESS_USER
per consentire a un utente nonroot di connettersi 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 durante l'installazione non viene creata una sottocartella in /usr/sap/QAS/ERS01, provare a impostare il proprietario e il gruppo della cartella ERS01 e riprovare.
sudo chown qaadm /usr/sap/QAS/ERS01 sudo chgrp sapsys /usr/sap/QAS/ERS01
[1] Adattare i profili di istanza ASCS/SCS e ERS.
Profilo ASCS/SCS
sudo vi /sapmnt/QAS/profile/QAS_ASCS00_anftstsapvh # 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
Sia per ENSA1 che per ENSA2, assicurarsi che i parametri del sistema operativo
keepalive
siano impostati come descritto in SAP Note 1410736.Profilo ERS
sudo vi /sapmnt/QAS/profile/QAS_ERS01_anftstsapers # 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] Configurare Keep Alive.
Le comunicazioni tra il server applicazioni SAP NetWeaver e ASCS/SCS vengono instradate tramite un servizio di bilanciamento del carico software. Il servizio di bilanciamento del carico disconnette le connessioni inattive dopo un timeout configurabile. Per evitare questo comportamento, è necessario impostare un parametro nel profilo ASCS/SCS di SAP NetWeaver, se si usa ENSA1, e modificare le impostazioni
keepalive
del sistema Linux in tutti i server SAP sia per ENSA1 che per ENSA2. Per altre informazioni, vedere la nota SAP 1410736.# Change the Linux system configuration sudo sysctl net.ipv4.tcp_keepalive_time=300
[A] Aggiornare il file
/usr/sap/sapservices
.Per impedire l'avvio delle istanze per lo script di avvio
sapinit
, tutte le istanze gestite da Pacemaker devono essere impostate come commento nel file/usr/sap/sapservices
.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/QAS/ASCS00/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/QAS/ASCS00/exe/sapstartsrv pf=/usr/sap/QAS/SYS/profile/QAS_ASCS00_anftstsapvh -D -u qasadm # systemctl --no-ask-password start SAPQAS_00 # sapstartsrv pf=/usr/sap/QAS/SYS/profile/QAS_ASCS00_anftstsapvh # 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/QAS/ERS01/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/QAS/ERS01/exe/sapstartsrv pf=/usr/sap/QAS/ERS01/profile/QAS_ERS01_anftstsapers -D -u qasadm # systemctl --no-ask-password start SAPQAS_01 # sapstartsrv pf=/usr/sap/QAS/ERS01/profile/QAS_ERS01_anftstsapers
Importante
Con SAP Startup Framework basato su sistema, le istanze SAP possono ora essere gestite da systemd. La versione minima richiesta di Red Hat Enterprise Linux (RHEL) è RHEL 8 per SAP. Come descritto in SAP Note 3115048, una nuova installazione di un kernel SAP con il supporto di SAP Startup Framework basato su sistema integrato comporterà sempre un'istanza SAP controllata dal sistema. Dopo un aggiornamento del kernel SAP di un'installazione SAP esistente a un kernel con supporto di SAP Startup Framework basato sul sistema, tuttavia, è necessario eseguire alcuni passaggi manuali come documentato nella nota SAP 3115048 per convertire l'ambiente di avvio SAP esistente in uno controllato dal sistema.
Quando si usano i servizi Red Hat a disponibilità elevata per SAP (configurazione del cluster) per gestire istanze del server applicazioni SAP, ad esempio SAP ASCS e SAP ERS, saranno necessarie ulteriori modifiche per garantire la compatibilità tra l'agente di risorse SAPInstance e il nuovo framework di avvio SAP basato su sistema. Quindi, dopo l'installazione o il passaggio a un kernel SAP abilitato al sistema in base alla nota SAP 3115048, i passaggi indicati in Red Hat KBA 6884531 devono essere completati correttamente in tutti i nodi del cluster.
[1] Creare le risorse del cluster SAP.
A seconda che si esegua un sistema ENSA1 o ENSA2, selezionare la rispettiva scheda per definire le risorse. SAP ha introdotto il supporto per ENSA2, inclusa la replica, in SAP NetWeaver 7.52. A partire da ABAP Platform 1809, ENSA2 viene installato per impostazione predefinita. Per il supporto di ENSA2. Vedere la nota SAP 2630416 per il supporto del server di accodamento 2.
Se si usa l'architettura di accodamento server 2 (ENSA2), installare resource agent resource agent-agents-sap-4.1.1-12.el7.x86_64 o versione successiva e definire le risorse come illustrato di seguito:
sudo pcs property set maintenance-mode=true # If using NFSv3 sudo pcs resource create rsc_sap_QAS_ASCS00 SAPInstance \ InstanceName=QAS_ASCS00_anftstsapvh START_PROFILE="/sapmnt/QAS/profile/QAS_ASCS00_anftstsapvh" \ 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-QAS_ASCS # If using NFSv4.1 sudo pcs resource create rsc_sap_QAS_ASCS00 SAPInstance \ InstanceName=QAS_ASCS00_anftstsapvh START_PROFILE="/sapmnt/QAS/profile/QAS_ASCS00_anftstsapvh" \ AUTOMATIC_RECOVER=false \ meta resource-stickiness=5000 migration-threshold=1 failure-timeout=60 \ op monitor interval=20 on-fail=restart timeout=105 \ op start interval=0 timeout=600 op stop interval=0 timeout=600 \ --group g-QAS_ASCS sudo pcs resource meta g-QAS_ASCS resource-stickiness=3000 # If using NFSv3 sudo pcs resource create rsc_sap_QAS_ERS01 SAPInstance \ InstanceName=QAS_ERS01_anftstsapers START_PROFILE="/sapmnt/QAS/profile/QAS_ERS01_anftstsapers" \ 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-QAS_AERS # If using NFSv4.1 sudo pcs resource create rsc_sap_QAS_ERS01 SAPInstance \ InstanceName=QAS_ERS01_anftstsapers START_PROFILE="/sapmnt/QAS/profile/QAS_ERS01_anftstsapers" \ AUTOMATIC_RECOVER=false IS_ERS=true \ op monitor interval=20 on-fail=restart timeout=105 op start interval=0 timeout=600 op stop interval=0 timeout=600 \ --group g-QAS_AERS sudo pcs constraint colocation add g-QAS_AERS with g-QAS_ASCS -5000 sudo pcs constraint location rsc_sap_QAS_ASCS00 rule score=2000 runs_ers_QAS eq 1 sudo pcs constraint order start g-QAS_ASCS then stop g-QAS_AERS kind=Optional symmetrical=false sudo pcs node unstandby anftstsapcl1 sudo pcs property set maintenance-mode=false
Se si esegue l'aggiornamento da una versione precedente e si passa al server di accodamento 2, vedere la nota SAP 2641322.
Nota
I timeout più elevati, suggeriti quando si usa NFSv4.1, sono necessari a causa di una pausa specifica del protocollo, correlata ai rinnovi di lease NFSv4.1. Per altre informazioni, vedere Procedura consigliata per NFS in NetApp. I timeout nella configurazione precedente sono solo esempi e potrebbero essere necessari per adattarsi alla configurazione SAP specifica.
Assicurarsi che lo stato del cluster sia corretto e che tutte le risorse siano avviate. Il nodo in cui vengono eseguite le risorse non è importante.
sudo pcs status # Online: [ anftstsapcl1 anftstsapcl2 ] # # Full list of resources: # # rsc_st_azure (stonith:fence_azure_arm): Started anftstsapcl2 # Resource Group: g-QAS_ASCS # fs_QAS_ASCS (ocf::heartbeat:Filesystem): Started anftstsapcl2 # nc_QAS_ASCS (ocf::heartbeat:azure-lb): Started anftstsapcl2 # vip_QAS_ASCS (ocf::heartbeat:IPaddr2): Started anftstsapcl2 # rsc_sap_QAS_ASCS00 (ocf::heartbeat:SAPInstance): Started anftstsapcl2 # Resource Group: g-QAS_AERS # fs_QAS_AERS (ocf::heartbeat:Filesystem): Started anftstsapcl1 # nc_QAS_AERS (ocf::heartbeat:azure-lb): Started anftstsapcl1 # vip_QAS_AERS (ocf::heartbeat:IPaddr2): Started anftstsapcl1 # rsc_sap_QAS_ERS01 (ocf::heartbeat:SAPInstance): Started anftstsapcl1
[1] Eseguire il passaggio seguente per configurare
priority-fencing-delay
(applicabile solo a partire da pacemaker-2.0.4-6.el8 o versione successiva).Nota
Se si dispone di un cluster a due nodi, è possibile configurare la proprietà del cluster
priority-fencing-delay
. Questa proprietà introduce un ritardo maggiore nell'isolamento di un nodo con priorità totale più elevata quando si verifica uno scenario split-brain. Per altre informazioni, vedere È possibile che Pacemaker esegua l'isolamento del nodo del cluster con le risorse più in esecuzione?.La proprietà
priority-fencing-delay
è applicabile per pacemaker-2.0.4-6.el8 versione o successiva. Se si configurapriority-fencing-delay
in un cluster esistente, assicurarsi di cancellare l'impostazionepcmk_delay_max
nel dispositivo di isolamento.sudo pcs resource defaults update priority=1 sudo pcs resource update rsc_sap_QAS_ASCS00 meta priority=10 sudo pcs property set priority-fencing-delay=15s
[A] Aggiungere regole del firewall per ASCS ed ERS in entrambi i nodi.
# 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
Preparazione del server applicazioni di SAP NetWeaver
Alcuni database richiedono che l'installazione dell'istanza di database venga eseguita in un server applicazioni. Preparare le macchine virtuali del server applicazioni da poter usare in questi casi.
I passaggi seguenti presuppongono che il server applicazioni sia installato in un server diverso dai server ASCS/SCS e HANA. In caso contrario, alcuni passaggi, ad esempio la configurazione della risoluzione dei nomi host, non sono necessari.
Gli elementi seguenti sono preceduti da uno degli elementi seguenti:
- [A]: applicabile sia a PAS che ad AAS
- [P]: applicabile solo a PAS
- [S]: applicabile solo ad AAS
[A] Configurare la risoluzione dei nomi host.
È possibile usare un server DNS o modificare il file
/etc/hosts
in tutti i nodi. In questo esempio viene illustrato come usare il file/etc/hosts
. Sostituire l'indirizzo IP e il nome host nei comandi seguenti:sudo vi /etc/hosts
Inserire le righe seguenti prima di
/etc/hosts
. Modificare l'indirizzo IP e il nome host in base all'ambiente.# IP address of the load balancer frontend configuration for SAP NetWeaver ASCS 192.168.14.9 anftstsapvh # IP address of the load balancer frontend configuration for SAP NetWeaver ASCS ERS 192.168.14.10 anftstsapers 192.168.14.7 anftstsapa01 192.168.14.8 anftstsapa02
[A] Creare la directory
sapmnt
.sudo mkdir -p /sapmnt/QAS sudo mkdir -p /usr/sap/trans sudo chattr +i /sapmnt/QAS sudo chattr +i /usr/sap/trans
[A] Installare il client NFS e altri requisiti.
sudo yum -y install nfs-utils uuidd
[A] Aggiungere le voci di montaggio.
Se si usa NFSv3:
sudo vi /etc/fstab # Add the following lines to fstab, save and exit 192.168.24.5:/sapQAS/sapmntQAS /sapmnt/QAS nfs rw,hard,rsize=65536,wsize=65536,nfsvers=3 192.168.24.4:/transSAP /usr/sap/trans nfs rw,hard,rsize=65536,wsize=65536,nfsvers=3
Se si usa NFSv4.1:
sudo vi /etc/fstab # Add the following lines to fstab, save and exit 192.168.24.5:/sapQAS/sapmntQAS /sapmnt/QAS nfs rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys 192.168.24.4:/transSAP /usr/sap/trans nfs rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys
Montare le nuove condivisioni.
sudo mount -a
[P] Creare e montare la directory PAS.
Se si usa NFSv3:
sudo mkdir -p /usr/sap/QAS/D02 sudo chattr +i /usr/sap/QAS/D02 sudo vi /etc/fstab # Add the following line to fstab 92.168.24.5:/sapQAS/usrsapQASpas /usr/sap/QAS/D02 nfs rw,hard,rsize=65536,wsize=65536,nfsvers=3 # Mount sudo mount -a
Se si usa NFSv4.1:
sudo mkdir -p /usr/sap/QAS/D02 sudo chattr +i /usr/sap/QAS/D02 sudo vi /etc/fstab # Add the following line to fstab 92.168.24.5:/sapQAS/usrsapQASpas /usr/sap/QAS/D02 nfs rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys # Mount sudo mount -a
[S] Creare e montare la directory AAS.
Se si usa NFSv3:
sudo mkdir -p /usr/sap/QAS/D03 sudo chattr +i /usr/sap/QAS/D03 sudo vi /etc/fstab # Add the following line to fstab 92.168.24.5:/sapQAS/usrsapQASaas /usr/sap/QAS/D03 nfs rw,hard,rsize=65536,wsize=65536,nfsvers=3 # Mount sudo mount -a
Se si usa NFSv4.1:
sudo mkdir -p /usr/sap/QAS/D03 sudo chattr +i /usr/sap/QAS/D03 sudo vi /etc/fstab # Add the following line to fstab 92.168.24.5:/sapQAS/usrsapQASaas /usr/sap/QAS/D03 nfs rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys # Mount sudo mount -a
[A] Configurare il file 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 VM 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
Riavviare l'agente per attivare la modifica.
sudo service waagent restart
Installare il database
In questo esempio, SAP NetWeaver è installato in SAP HANA. Per questa installazione è possibile usare qualsiasi database supportato. Per altre informazioni su come installare SAP HANA in Azure, vedere Disponibilità elevata di SAP HANA in macchine virtuali di Azure su Red Hat Enterprise Linux. Per un elenco dei database supportati, vedere la nota SAP 1928533.
Eseguire l'installazione dell'istanza del database SAP.
Installare l'istanza del database di SAP NetWeaver come radice usando un nome host virtuale mappato all'indirizzo IP della configurazione front-end di bilanciamento del carico per il database.
È possibile usare il parametro
sapinst
SAPINST_REMOTE_ACCESS_USER
per consentire a un utente nonroot di connettersi asapinst
.sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
Installazione del server applicazioni di SAP NetWeaver
Per installare il server applicazioni SAP, seguire questi passaggi.
Preparare il server applicazioni.
Per preparare il server applicazioni, seguire la procedura descritta nella sezione precedente Preparazione del server applicazioni di SAP NetWeaver.
Installare il server applicazioni SAP NetWeaver.
Installare un server applicazioni di SAP NetWeaver primario o aggiuntivo.
È possibile usare il parametro
sapinst
SAPINST_REMOTE_ACCESS_USER
per consentire a un utente nonroot di connettersi asapinst
.sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
Aggiornare l'archivio sicuro di SAP HANA.
Aggiornare l'archivio sicuro di SAP HANA in modo che punti al nome virtuale della configurazione della replica di sistema di SAP HANA.
Eseguire il comando seguente per visualizzare le voci come <sapsid>adm.
hdbuserstore List
Tutte le voci devono essere elencate e hanno un aspetto simile al seguente:
DATA FILE : /home/qasadm/.hdb/anftstsapa01/SSFS_HDB.DAT KEY FILE : /home/qasadm/.hdb/anftstsapa01/SSFS_HDB.KEY KEY DEFAULT ENV : 192.168.14.4:30313 USER: SAPABAP1 DATABASE: QAS
L'output mostra che l'indirizzo IP della voce predefinita fa riferimento alla macchina virtuale e non all'indirizzo IP del bilanciamento del carico. È necessario modificare questa voce in modo che punti al nome host virtuale del bilanciamento del carico. Assicurarsi di usare la stessa porta (30313 nell'output precedente) e il nome del database (QAS nell'output precedente).
su - qasadm hdbuserstore SET DEFAULT qasdb:30313@QAS SAPABAP1 <password of ABAP schema>
Testare la configurazione del cluster
Testare accuratamente il cluster Pacemaker. Per altre informazioni, vedere Eseguire i test di failover tipici.
Passaggi successivi
- Per distribuire uno scenario di ottimizzazione dei costi in cui le istanze PAS e AAS vengono distribuite con il cluster SAP NetWeaver HA in RHEL, vedere Installare un'istanza della finestra di dialogo SAP con MACCHINE virtuali a disponibilità elevata SAP ASCS/SCS in RHEL.
- Vedere la Guida al multi-SID per la disponibilità elevata per SAP NW in macchine virtuali di Azure su RHEL per applicazioni SAP.
- Vedere la Guida alla pianificazione e all'implementazione di macchine virtuali di Azure per SAP.
- Vedere Distribuzione di macchine virtuali di Azure per SAP.
- Vedere la Distribuzione DBMS di Macchine virtuali di Azure per SAP.
- Per informazioni su come configurare la disponibilità elevata e pianificare il ripristino di emergenza di SAP HANA in Azure (istanze Large), vedere Disponibilità elevata e ripristino di emergenza di SAP HANA (istanze Large) in Azure.
- Per informazioni su come ottenere la disponibilità elevata e un piano di ripristino di emergenza di SAP HANA nelle macchine virtuali di Azure vedere Disponibilità elevata di SAP HANA nelle macchine virtuali di Azure (VM).