Alta disponibilidad de SAP NetWeaver en VM de Azure en SUSE Linux Enterprise Server con Azure NetApp Files para las aplicaciones de SAP
En este artículo se explica cómo configurar la alta disponibilidad para la aplicación de SAP NetWeaver con Azure NetApp Files.
Para las nuevas implementaciones de SLES for SAP Applications 15, se recomienda implementar la alta disponibilidad para ASCS/ERS de SAP en una configuración de montaje sencilla. La configuración clásica de Pacemaker, basada en los sistemas de archivos controlados por clústeres para los directorios de servicios centrales de SAP que se describe en este artículo, sigue siendo compatible.
En las configuraciones de ejemplo, los comandos de instalación. etc., la instancia de ASCS es 00, la instancia de ERS es 01, la instancia de aplicación principal (PAS) es 02 y la instancia de aplicación (AAS) es 03. Se usan los controles de calidad de los identificadores del sistema SAP. El nivel de la base de datos no se trata en detalle en este artículo.
Lea primero las notas y los documentos de SAP siguientes:
- Documentación sobre Azure NetApp Files
- Nota de SAP 1928533, que incluye:
- La lista de tamaños de máquina virtual de Azure que se admiten para la implementación del software de SAP
- Información importante sobre la capacidad para los tamaños de máquina virtual de Azure
- Software de SAP admitido y combinaciones de sistema operativo y base de datos
- Versión del kernel de SAP requerida para Windows y Linux en Microsoft Azure
- La nota de SAP 2015553 enumera los requisitos previos para las implementaciones de software de SAP admitidas por SAP en Azure.
- La nota de SAP 2205917 contiene configuraciones recomendadas del sistema operativo para SUSE Linux Enterprise Server para SAP Applications
- La nota de SAP 1944799 contiene guías de SAP HANA para SUSE Linux Enterprise Server para SAP Applications
- La nota de SAP 2178632 contiene información detallada sobre todas las métricas de supervisión notificadas para SAP en Azure.
- La nota de SAP 2191498 incluye la versión de SAP Host Agent necesaria para Linux en Azure.
- La nota de SAP 2243692 incluye información acerca de las licencias de SAP en Linux en Azure.
- La nota de SAP 1984787 incluye información general sobre SUSE Linux Enterprise Server 12.
- La nota de SAP 1999351 contiene más soluciones de problemas de la extensión de supervisión mejorada de Azure para SAP.
- La WIKI de la comunidad SAP contiene todas las notas de SAP que se necesitan para Linux.
- Planeación e implementación de Azure Virtual Machines para SAP en Linux
- Implementación de Azure Virtual Machines para SAP en Linux
- Implementación de DBMS de Azure Virtual Machines para SAP en Linux
- Guías de procedimientos recomendados de SUSE SAP HA Las guías contienen toda la información necesaria para la configuración de Netweaver HA y la replicación del sistema de SAP HANA en el entorno local. Use estas guías como base de referencia general. Proporcionan información mucho más detallada.
- Notas de la versión de la Extensión 12 SP3 de alta disponibilidad para SUSE
- Aplicaciones de NetApp SAP en Microsoft Azure que usan Azure NetApp Files
- Procedimientos recomendados de NFS de NetApp
Información general
La alta disponibilidad de los servicios centrales de SAP Netweaver requiere almacenamiento compartido. Para lograrlo en SUSE Linux hasta ahora era necesario crear el clúster independiente NFS de alta disponibilidad.
Ahora ya es posible lograr alta disponibilidad en SAP Netweaver mediante el uso de almacenamiento compartido implementado en Azure NetApp Files. Mediante el uso de Azure NetApp Files para el almacenamiento compartido se elimina la necesidad del clúster NFS adicional. Pacemaker sigue siendo necesario para lograr una alta disponibilidad de los servicios centrales de SAP NetWeaver (ASCS/SCS).
SAP NetWeaver ASCS, SAP NetWeaver SCS, SAP NetWeaver ERS y la base de datos SAP HANA usan direcciones IP virtuales y el nombre de host virtual. En Azure, se requiere un equilibrador de carga para usar una dirección IP virtual. Se recomienda usar Standard Load Balancer. La configuración presentada muestra un equilibrador de carga con:
- Dirección IP de front-end 10.1.1.20 para ASCS
- Dirección IP de front-end 10.1.1.21 para ERS
- Puerto de sondeo 62000 para ASCS
- Puerto de sondeo 62101 para ERS
Configuración de la infraestructura de Azure NetApp Files
SAP NetWeaver requiere un almacenamiento compartido para el directorio de transporte y perfil. Antes de continuar con la configuración de la infraestructura de Azure NetApp Files, familiarícese con la documentación correspondiente. Compruebe si la región de Azure seleccionada ofrece Azure NetApp Files. El siguiente vínculo muestra la disponibilidad de Azure NetApp Files por región de Azure: Disponibilidad de Azure NetApp Files por región de Azure.
Azure NetApp Files está disponible en varias regiones de Azure.
Implementación de recursos de Azure NetApp Files
En estos pasos se supone que ya ha implementado Azure Virtual Network. Los recursos de Azure NetApp Files y las máquinas virtuales en las que esos recursos se montarán se deben implementar en la misma red virtual de Azure o en redes virtuales emparejadas.
- Cree la cuenta de NetApp en la región de Azure seleccionada mediante las instrucciones para crear la cuenta de NetApp.
- Configure el grupo de capacidad de Azure NetApp Files con las instrucciones correspondientes.
La arquitectura de SAP Netweaver que se presenta en este artículo usa un único grupo de capacidad de Azure NetApp Files, SKU Premium. Se recomienda usar SKU Premium de Azure NetApp Files para cargas de trabajo de aplicaciones de SAP NetWeaver en Azure. - Delegue una subred en Azure NetApp Files como se describe en las instrucciones correspondientes.
- Implemente los volúmenes de Azure NetApp Files mediante las instrucciones correspondientes. Implemente los volúmenes en la subred de Azure NetApp Files designada. Las direcciones IP de los volúmenes de Azure NetApp se asignan automáticamente. Tenga en cuenta que los recursos de Azure NetApp Files y las máquinas virtuales de Azure deben estar en la misma red virtual de Azure o en redes virtuales emparejadas. En este ejemplo se usan dos volúmenes de Azure NetApp Files: sapQAS y trans. Las rutas de acceso de los archivos que se montan en los correspondientes puntos de montaje son /usrsapqas/sapmntQAS, /usrsapqas/usrsapQASsys, etc.
- volumen sapQAS (nfs://10.1.0.4/usrsapqas/sapmntQAS)
- volumen sapQAS (nfs://10.1.0.4/usrsapqas/usrsapQASascs)
- volumen sapQAS (nfs://10.1.0.4/usrsapqas/usrsapQASsys)
- volumen sapQAS (nfs://10.1.0.4/usrsapqas/usrsapQASers)
- volumen trans (nfs://10.1.0.4/trans)
- volumen sapQAS (nfs://10.1.0.4/usrsapqas/usrsapQASpas)
- volumen sapQAS (nfs://10.1.0.4/usrsapqas/usrsapQASaas)
En este ejemplo, hemos usado Azure NetApp Files para todos los sistemas de archivos de SAP Netweaver para demostrar cómo se puede usar Azure NetApp Files. Los sistemas de archivos SAP que no es necesario montar mediante NFS se pueden también implementar en Azure Disk Storage. En este ejemplo, a-e deben estar en Azure NetApp Files y f-g (es decir, /usr/sap/QAS/D02, /usr/sap/QAS/D03) se podrían implementar en Azure Disk Storage.
Consideraciones importantes
A la hora de considerar Azure NetApp Files para SAP Netweaver en la arquitectura de alta disponibilidad de SUSE, tenga en cuenta los siguientes aspectos importantes:
- Para conocer los límites de volumen y grupo de capacidad, consulte Límites de recursos de Azure NetApp Files.
- Azure NetApp Files y todas las máquinas virtuales en las que los volúmenes de Azure NetApp Files se montarán, se deben implementar en la misma red virtual de Azure o en redes virtuales emparejadas de la misma región. Ahora también se admite el acceso de Azure NetApp Files mediante emparejamiento de red virtual en la misma región. Aún no se admite el acceso de Azure NetApp a través del emparejamiento global.
- La red virtual seleccionada debe tener una subred delegada en Azure NetApp Files.
- El rendimiento y las características de rendimiento de un volumen de Azure NetApp Files es una función de la cuota del volumen y del nivel de servicio, como se documenta en Nivel de servicio para Azure NetApp Files. Al ajustar el tamaño de los volúmenes de Azure NetApp de SAP, asegúrese de que el rendimiento resultante cumpla los requisitos de la aplicación.
- Azure NetApp Files ofrece la directiva de exportación: puede controlar los clientes permitidos, el tipo de acceso (lectura y escritura, solo lectura, etc.).
- La característica Azure NetApp Files no depende aún de la zona. En la actualidad, la característica Azure NetApp Files no se implementa en todas las zonas de disponibilidad de una región de Azure. Tenga en cuenta las posibles implicaciones de latencia en algunas regiones de Azure.
- Los volúmenes de Azure NetApp Files se pueden implementar como volúmenes NFSv3 o NFSv4.1. Los dos protocolos son compatibles con el nivel de aplicación de SAP (ASCS/ERS, servidores de aplicaciones de SAP).
Preparación de la infraestructura
El agente de recursos para SAP Instance se incluye en SUSE Linux Enterprise Server para SAP Applications. En Azure Marketplace se puede encontrar una imagen para SUSE Linux Enterprise Server para SAP Applications 12 o 15. Puede usar la imagen para implementar nuevas máquinas virtuales.
Implementación manual de VM de Linux mediante Azure Portal
Este documento asume que ya ha implementado un grupo de recursos, Azure Virtual Network y una subred.
Implemente máquinas virtuales con SLES para la imagen de SAP Applications. Elija una versión adecuada de la imagen de SLES compatible con el sistema SAP. Puede implementar la máquina virtual en cualquiera de las opciones de disponibilidad: conjunto de escalado de máquinas virtuales, zona de disponibilidad o conjunto de disponibilidad.
Configurar Azure Load Balancer
Durante la configuración de la máquina virtual, tiene una opción para crear o seleccionar salir del equilibrador de carga en la sección de redes. Siga los pasos siguientes para configurar un equilibrador de carga estándar para la configuración de alta disponibilidad de ASCS de SAP y ERS de SAP.
Siga la guía de creación del equilibrador de carga para configurar un equilibrador de carga estándar para un sistema SAP de alta disponibilidad mediante Azure Portal. Durante la configuración del equilibrador de carga, tenga en cuenta los siguientes puntos.
- Configuración de IP de front-end: cree dos direcciones IP de front-end, una para ASCS y otra para ERS. Seleccione la misma red virtual y subred que las máquinas virtuales ASCS/ERS.
- Grupo de back-end: cree un grupo de back-end y agregue máquinas virtuales ASCS y ERS.
- Reglas de entrada: cree dos reglas de equilibrio de carga, una para ASCS y otra para ERS. Siga los mismos pasos para ambas reglas de equilibrio de carga.
- Dirección IP de front-end: selección de IP de front-end
- Grupo de back-end: selección del grupo de back-end
- Comprobación de "Puertos de alta disponibilidad"
- Protocolo: TCP
- Sondeo de estado: cree un sondeo de estado con los detalles siguientes (se aplica tanto para ASCS como para ERS)
- Protocolo: TCP
- Puerto: [por ejemplo: 620<Instance-no.> para ASCS, 621<Instance-no.> para ERS]
- Intervalo: 5
- Umbral de sondeo: 2
- Tiempo de espera de inactividad (minutos): 30
- Active "Habilitar IP flotante"
Nota:
No se respeta la propiedad de configuración del sondeo de estado numberOfProbes, también conocida como "umbral incorrecto" en el Portal. Por lo tanto, para controlar el número de sondeos consecutivos correctos o erróneos, establezca la propiedad "probeThreshold" en 2. Actualmente no es posible establecer esta propiedad mediante Azure Portal, por lo que puede usar la CLI de Azure o el comando de PowerShell.
Nota:
Cuando las máquinas virtuales sin direcciones IP públicas se colocan en el grupo de back-end de Standard Load Balancer interno (sin dirección IP pública), no hay conectividad saliente de Internet, a menos que se realice una configuración adicional para permitir el enrutamiento a puntos de conexión públicos. Para obtener más información sobre cómo obtener conectividad saliente, vea Conectividad de punto de conexión público para máquinas virtuales con Azure Standard Load Balancer en escenarios de alta disponibilidad de SAP.
Importante
- No habilite las marcas de tiempo TCP en máquinas virtuales de Azure que se encuentren detrás de Azure Load Balancer. Si habilita las marcas de tiempo TCP provocará un error en los sondeos de estado. Establezca el parámetro
net.ipv4.tcp_timestamps
en0
. Para más información, consulte Sondeos de estado de Load Balancer. - Para evitar que saptune cambie el valor
net.ipv4.tcp_timestamps
establecido manualmente de0
a nuevamente1
, debe actualizar la versión de saptune a la versión 3.1.1 o posterior. Para más información, consulte saptune 3.1.1: ¿Necesito actualizar?
Deshabilite la asignación de identificadores (si se usa NFSv4.1)
Las instrucciones de esta sección solo se aplican si se usan volúmenes de Azure NetApp Files con el protocolo NFSv4.1. Realice la configuración en todas las máquinas virtuales donde se montarán los volúmenes NFSv4.1 de Azure NetApp Files.
Compruebe la configuración del dominio NFS. Asegúrese de que el dominio esté configurado como dominio predeterminado de Azure NetApp Files, es decir,
defaultv4iddomain.com
, y que la asignación se haya establecido en nobody.Importante
Asegúrese de establecer el dominio NFS de
/etc/idmapd.conf
en la máquina virtual para que coincida con la configuración de dominio predeterminada en Azure NetApp Files:defaultv4iddomain.com
. Si hay alguna discrepancia entre la configuración de dominio del cliente NFS (es decir, la máquina virtual) y el servidor NFS (es decir la configuración de Azure NetApp), los permisos de archivos en volúmenes de Azure NetApp que estén montados en las máquinas virtuales se mostrarán comonobody
.sudo cat /etc/idmapd.conf # Example [General] Verbosity = 0 Pipefs-Directory = /var/lib/nfs/rpc_pipefs Domain = defaultv4iddomain.com [Mapping] Nobody-User = nobody Nobody-Group = nobody
[A] Compruebe
nfs4_disable_idmapping
. Debe establecerse en S. Para crear la estructura de directorio en la que se encuentranfs4_disable_idmapping
, ejecute el comando mount. No podrá crear manualmente el directorio en /sys/modules, ya que el acceso está reservado para el kernel o los controladores.# 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.1.0.4:/sapmnt/qas /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
Configuración de (A)SCS
A continuación, preparará e instalará las instancias de SAP ASCS y ERS.
Creación del clúster de Pacemaker
Siga los pasos que se describen en Configuración de Pacemaker en SUSE Linux Enterprise Server en Azure para crear un clúster de Pacemaker básico para este servidor (A)SCS.
Instalación
Los elementos siguientes tienen el prefijo [A] : aplicable a todos los nodos, [1] : aplicable solo al nodo 1 o [2] : aplicable solo al nodo 2.
[A] Instale el conector de SUSE
sudo zypper install sap-suse-cluster-connector
Nota
El problema conocido con el uso de un guion en los nombres de host se ha corregido con la versión 3.1.1 del paquete sap-suse-cluster-connector. Si utiliza nodos de clúster con un guion en el nombre de host, asegúrese de usar al menos la versión 3.1.1 del paquete sap-suse-cluster-connector. Si lo hace, el clúster no funcionará.
Asegúrese de que instaló la nueva versión del conector de clúster SUSE SAP. La antigua se llamaba sap_suse_cluster_connector y la nueva se llama sap-suse-cluster-connector.
sudo zypper info sap-suse-cluster-connector # Information for package sap-suse-cluster-connector: # --------------------------------------------------- # Repository : SLE-12-SP3-SAP-Updates # Name : sap-suse-cluster-connector # Version : 3.1.0-8.1 # Arch : noarch # Vendor : SUSE LLC <https://www.suse.com/> # Support Level : Level 3 # Installed Size : 45.6 KiB # Installed : Yes # Status : up-to-date # Source package : sap-suse-cluster-connector-3.1.0-8.1.src # Summary : SUSE High Availability Setup for SAP Products
[A] Actualice los agentes de recursos de SAP
Se requiere una revisión del paquete de agentes de recursos para usar la nueva configuración que se describe este artículo. Puede usar el comando siguiente para comprobar si la revisión ya está instalada
sudo grep 'parameter name="IS_ERS"' /usr/lib/ocf/resource.d/heartbeat/SAPInstance
La salida debe ser similar a
<parameter name="IS_ERS" unique="0" required="0">
Si el comando grep no encuentra el parámetro IS_ERS, necesita instalar la revisión que aparece en la página de descarga de SUSE
# example for patch for SLES 12 SP1 sudo zypper in -t patch SUSE-SLE-HA-12-SP1-2017-885=1 # example for patch for SLES 12 SP2 sudo zypper in -t patch SUSE-SLE-HA-12-SP2-2017-886=1
[A] Configure la resolución nombres de host
Puede usar un servidor DNS o modificar /etc/hosts en todos los nodos. En este ejemplo se muestra cómo utilizar el archivo /etc/hosts. Reemplace la dirección IP y el nombre de host en los siguientes comandos
sudo vi /etc/hosts
Inserte las siguientes líneas en /etc/hosts. Cambie la dirección IP y el nombre de host para que coincida con su entorno
# IP address of cluster node 1 10.1.1.18 anftstsapcl1 # IP address of cluster node 2 10.1.1.6 anftstsapcl2 # IP address of the load balancer frontend configuration for SAP Netweaver ASCS 10.1.1.20 anftstsapvh # IP address of the load balancer frontend configuration for SAP Netweaver ERS 10.1.1.21 anftstsapers
[1] Cree directorios de SAP en el volumen de Azure NetApp Files.
Monte el volumen de Azure NetApp Files temporalmente en una de las máquinas virtuales y cree los directorios de SAP (rutas de acceso de archivos).
# 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 10.1.0.4:/sapQAS /saptmp # If using NFSv4.1 sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys,tcp 10.1.0.4:/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
Preparación de la instalación de SAP NetWeaver
[A] Cree los directorios compartidos
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] Configure
autofs
sudo vi /etc/auto.master # Add the following line to the file, save and exit /- /etc/auto.direct
Si usa NFSv3, cree un archivo con:
sudo vi /etc/auto.direct # Add the following lines to the file, save and exit /sapmnt/QAS -nfsvers=3,nobind 10.1.0.4:/usrsapqas/sapmntQAS /usr/sap/trans -nfsvers=3,nobind 10.1.0.4:/trans /usr/sap/QAS/SYS -nfsvers=3,nobind 10.1.0.4:/usrsapqas/usrsapQASsys
Si usa NFSv4.1, cree un archivo con:
sudo vi /etc/auto.direct # Add the following lines to the file, save and exit /sapmnt/QAS -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/sapmntQAS /usr/sap/trans -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/trans /usr/sap/QAS/SYS -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/usrsapQASsys
Nota
Asegúrese de hacer coincidir la versión del protocolo NFS de los volúmenes Azure NetApp Files al montar los volúmenes. Si los volúmenes de Azure NetApp Files se crean como volúmenes NFSv3, use la configuración de NFSv3 correspondiente. Si los volúmenes de Azure NetApp Files se crean como volúmenes NFSv4.1, siga las instrucciones para deshabilitar la asignación de Id. y asegúrese de usar la configuración de NFSv4.1 correspondiente. En este ejemplo, los volúmenes de Azure NetApp Files se crearon como volúmenes NFSv3.
Reinicie
autofs
para montar los recursos compartidos nuevos.sudo systemctl enable autofs sudo service autofs restart
[A] Configure el archivo de intercambio
sudo vi /etc/waagent.conf # Check if property ResourceDisk.Format is already set to y and if not, set it ResourceDisk.Format=y # 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 el agente para activar el cambio
sudo service waagent restart
Instalación de SAP NetWeaver ASCS/ERS
[1] Cree un recurso IP virtual y un sondeo de estado para la instancia de ASCS
Importante
Pruebas recientes han mostrado situaciones en las que netcat deja de responder a las solicitudes debido al trabajo pendiente y a su limitación para controlar solo una conexión. El recurso netcat deja de escuchar las solicitudes del equilibrador de carga de Azure y la dirección IP flotante deja de estar disponible.
En el caso de los clústeres de Pacemaker existentes, en el pasado se recomendaba reemplazar netcat por socat. Actualmente se recomienda usar el agente de recursos azure-lb, que forma parte de los agentes de recursos de paquetes, con los siguientes requisitos de versión de paquete:- En el caso de SLES 12 SP4/SP5, la versión debe ser, al menos, resource-agents-4.3.018.a7fb5035-3.30.1.
- Para SLES 15/15 SP1, la versión debe ser al menos resource-agents-4.3.0184.6ee15eb2-4.13.1.
Tenga en cuenta que el cambio requerirá un breve tiempo de inactividad.
En el caso de los clústeres de Pacemaker existentes, si la configuración ya se ha cambiado para usar socat, como se describe en Protección de la detección del equilibrador de carga de Azure, no hay ningún requisito para cambiar inmediatamente al agente de recursos de azure-lb.sudo crm node standby anftstsapcl2 # If using NFSv3 sudo crm configure primitive fs_QAS_ASCS Filesystem device='10.1.0.4/usrsapqas/usrsapQASascs' directory='/usr/sap/QAS/ASCS00' fstype='nfs' \ op start timeout=60s interval=0 \ op stop timeout=60s interval=0 \ op monitor interval=20s timeout=40s # If using NFSv4.1 sudo crm configure primitive fs_QAS_ASCS Filesystem device='10.1.0.4:/usrsapqas/usrsapQASascs' directory='/usr/sap/QAS/ASCS00' fstype='nfs' options='sec=sys,nfsvers=4.1' \ op start timeout=60s interval=0 \ op stop timeout=60s interval=0 \ op monitor interval=20s timeout=105s sudo crm configure primitive vip_QAS_ASCS IPaddr2 \ params ip=10.1.1.20 \ op monitor interval=10 timeout=20 sudo crm configure primitive nc_QAS_ASCS azure-lb port=62000 \ op monitor timeout=20s interval=10 sudo crm configure group g-QAS_ASCS fs_QAS_ASCS nc_QAS_ASCS vip_QAS_ASCS \ meta resource-stickiness=3000
Asegúrese de que el estado del clúster sea el correcto y que se iniciaron todos los recursos. No es importante en qué nodo se ejecutan los recursos.
sudo crm_mon -r # Node anftstsapcl2: standby # Online: [ anftstsapcl1 ] # # Full list of resources: # # 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 # stonith-sbd (stonith:external/sbd): Started anftstsapcl2
[1] Instale SAP NetWeaver ASCS
Instale SAP NetWeaver ASCS como raíz en el primer nodo mediante un nombre de host virtual que se asigna a la dirección IP de la configuración de front-end del equilibrador de carga para ASCS; por ejemplo, anftstsapvh, 10.1.1.20. Especifique también el número de instancia que usó para el sondeo del equilibrador de carga; por ejemplo, 00.
Puede usar el parámetro de sapinst SAPINST_REMOTE_ACCESS_USER para permitir que un usuario no raíz se conecta a sapinst. Puede usar el parámetro SAPINST_USE_HOSTNAME para instalar SAP con el nombre de host virtual.
sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
Si se produce un error en la instalación para crear una subcarpeta en /usr/sap/QAS/ASCS00, pruebe a establecer el propietario y el grupo de la carpeta ASCS00 e inténtelo de nuevo.
chown qasadm /usr/sap/QAS/ASCS00 chgrp sapsys /usr/sap/QAS/ASCS00
[1] Cree un recurso IP virtual y un sondeo de estado para la instancia de ERS.
sudo crm node online anftstsapcl2 sudo crm node standby anftstsapcl1 # If using NFSv3 sudo crm configure primitive fs_QAS_ERS Filesystem device='10.1.0.4:/usrsapqas/usrsapQASers' directory='/usr/sap/QAS/ERS01' fstype='nfs' \ op start timeout=60s interval=0 \ op stop timeout=60s interval=0 \ op monitor interval=20s timeout=40s # If using NFSv4.1 sudo crm configure primitive fs_QAS_ERS Filesystem device='10.1.0.4:/usrsapqas/usrsapQASers' directory='/usr/sap/QAS/ERS01' fstype='nfs' options='sec=sys,nfsvers=4.1' \ op start timeout=60s interval=0 \ op stop timeout=60s interval=0 \ op monitor interval=20s timeout=105s sudo crm configure primitive vip_QAS_ERS IPaddr2 \ params ip=10.1.1.21 \ op monitor interval=10 timeout=20 sudo crm configure primitive nc_QAS_ERS azure-lb port=62101 \ op monitor timeout=20s interval=10 sudo crm configure group g-QAS_ERS fs_QAS_ERS nc_QAS_ERS vip_QAS_ERS
Asegúrese de que el estado del clúster sea el correcto y que se iniciaron todos los recursos. No es importante en qué nodo se ejecutan los recursos.
sudo crm_mon -r # Node anftstsapcl1: standby # Online: [ anftstsapcl2 ] # # Full list of resources: # # stonith-sbd (stonith:external/sbd): 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_ERS # fs_QAS_ERS (ocf::heartbeat:Filesystem): Started anftstsapcl2 # nc_QAS_ERS (ocf::heartbeat:azure-lb): Started anftstsapcl2 # vip_QAS_ERS (ocf::heartbeat:IPaddr2): Started anftstsapcl2
[2] Instale SAP NetWeaver ERS
Instale SAP NetWeaver ERS como raíz en el segundo nodo mediante un nombre de host virtual que se asigna a la dirección IP de la configuración de front-end del equilibrador de carga para ERS (por ejemplo, anftstsapers, 10.1.1.21) y el número de instancia que usó para el sondeo del equilibrador de carga (por ejemplo, 01).
Puede usar el parámetro de sapinst SAPINST_REMOTE_ACCESS_USER para permitir que un usuario no raíz se conecta a sapinst. Puede usar el parámetro SAPINST_USE_HOSTNAME para instalar SAP con el nombre de host virtual.
sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
Nota
Use SWPM SP 20 PL 05 o superior. Las versiones inferiores no establecen correctamente los permisos y se producirá un error de instalación.
Si se produce un error en la instalación para crear una subcarpeta en /usr/sap/QAS/ERS01, pruebe a establecer el propietario y el grupo de la carpeta ERS01 e inténtelo de nuevo.
chown qasadm /usr/sap/QAS/ERS01 chgrp sapsys /usr/sap/QAS/ERS01
[1] Adapte los perfiles de instancias ASCS/SCS y ERS
Perfil 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 following lines service/halib = $(DIR_CT_RUN)/saphascriptco.so service/halib_cluster_connector = /usr/bin/sap_suse_cluster_connector # Add the keep alive parameter, if using ENSA1 enque/encni/set_so_keepalive = true
En el caso de ENSA1 y ENSA2, asegúrese de que los parámetros del sistema operativo
keepalive
se establecen tal y como se describe en la nota de SAP 1410736.Perfil 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) # Add the following lines service/halib = $(DIR_CT_RUN)/saphascriptco.so service/halib_cluster_connector = /usr/bin/sap_suse_cluster_connector # remove Autostart from ERS profile # Autostart = 1
[A] Configure la conexión persistente
La comunicación entre el servidor de aplicaciones de SAP NetWeaver y ASCS/SCS se enruta a través de un equilibrador de carga de software. El equilibrador de carga desconecta las conexiones inactivas después de un tiempo de expiración que se puede configurar. Para evitarlo, tendrá que establecer un parámetro en el perfil de SAP NetWeaver ASCS/SCS, si usa ENSA1, y cambiar la configuración
keepalive
del sistema Linux en todos los servidores SAP para ENSA1 y ENSA2. Para más información, lea la nota de SAP 1410736.# Change the Linux system configuration sudo sysctl net.ipv4.tcp_keepalive_time=300
[A] Configure los usuarios de SAP después de la instalación
# Add sidadm to the haclient group sudo usermod -aG haclient qasadm
[1] Agregue los servicios SAP de ASCS y ERS al archivo
sapservice
Agregue la entrada del servicio ASCS al segundo nodo y copie la entrada del servicio ERS al primer nodo.
cat /usr/sap/sapservices | grep ASCS00 | sudo ssh anftstsapcl2 "cat >>/usr/sap/sapservices" sudo ssh anftstsapcl2 "cat /usr/sap/sapservices" | grep ERS01 | sudo tee -a /usr/sap/sapservices
[A] Deshabilitación de los servicios
systemd
de la instancia de SAP de ASCS y ERS. Este paso solo es aplicable, si el marco de inicio de SAP se administra mediante sistema según la nota SAP 3115048Nota:
Al administrar instancias de SAP como ASCS de SAP y ERS de SAP mediante la configuración del clúster de SLES, tendría que realizar modificaciones adicionales para integrar el clúster con el marco de inicio de SAP basado en sistema nativo. Esto garantiza que los procedimientos de mantenimiento no pongan en peligro la estabilidad del clúster. Después de instalar o cambiar el marco de inicio de SAP a la configuración habilitada para systemd según la nota SAP 3115048, debe deshabilitar los servicios de
systemd
para las instancias de SAP de ASCS y ERS.# 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. anftstsapcl1) sudo systemctl disable SAPQAS_00 # Execute below command on VM where you have performed ERS instance installation (e.g. anftstsapcl2) sudo systemctl disable SAPQAS_01
[1]: cree los recursos del clúster de SAP.
En función de si ejecuta un sistema ENSA1 o ENSA2, seleccione la pestaña correspondiente para definir los recursos. SAP introdujo compatibilidad con ENSA2, incluida la replicación, en SAP NetWeaver 7.52. A partir de la plataforma ABAP 1809, ENSA2 se instala de forma predeterminada. Para información sobre la compatibilidad con ENSA2, consulte la nota de SAP 2630416.
sudo crm configure property maintenance-mode="true" # If using NFSv3 sudo crm configure primitive rsc_sap_QAS_ASCS00 SAPInstance \ operations \$id=rsc_sap_QAS_ASCS00-operations \ op monitor interval=11 timeout=60 on-fail=restart \ params InstanceName=QAS_ASCS00_anftstsapvh START_PROFILE="/sapmnt/QAS/profile/QAS_ASCS00_anftstsapvh" \ AUTOMATIC_RECOVER=false \ meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10 # If using NFSv4.1 sudo crm configure primitive rsc_sap_QAS_ASCS00 SAPInstance \ operations \$id=rsc_sap_QAS_ASCS00-operations \ op monitor interval=11 timeout=105 on-fail=restart \ params InstanceName=QAS_ASCS00_anftstsapvh START_PROFILE="/sapmnt/QAS/profile/QAS_ASCS00_anftstsapvh" \ AUTOMATIC_RECOVER=false \ meta resource-stickiness=5000 failure-timeout=105 migration-threshold=1 priority=10 # If using NFSv3 sudo crm configure primitive rsc_sap_QAS_ERS01 SAPInstance \ operations \$id=rsc_sap_QAS_ERS01-operations \ op monitor interval=11 timeout=60 on-fail=restart \ params InstanceName=QAS_ERS01_anftstsapers START_PROFILE="/sapmnt/QAS/profile/QAS_ERS01_anftstsapers" AUTOMATIC_RECOVER=false IS_ERS=true \ meta priority=1000 # If using NFSv4.1 sudo crm configure primitive rsc_sap_QAS_ERS01 SAPInstance \ operations \$id=rsc_sap_QAS_ERS01-operations \ op monitor interval=11 timeout=105 on-fail=restart \ params InstanceName=QAS_ERS01_anftstsapers START_PROFILE="/sapmnt/QAS/profile/QAS_ERS01_anftstsapers" AUTOMATIC_RECOVER=false IS_ERS=true \ meta priority=1000 sudo crm configure modgroup g-QAS_ASCS add rsc_sap_QAS_ASCS00 sudo crm configure modgroup g-QAS_ERS add rsc_sap_QAS_ERS01 sudo crm configure colocation col_sap_QAS_no_both -5000: g-QAS_ERS g-QAS_ASCS sudo crm configure location loc_sap_QAS_failover_to_ers rsc_sap_QAS_ASCS00 rule 2000: runs_ers_QAS eq 1 sudo crm configure order ord_sap_QAS_first_start_ascs Optional: rsc_sap_QAS_ASCS00:start rsc_sap_QAS_ERS01:stop symmetrical=false sudo crm_attribute --delete --name priority-fencing-delay sudo crm node online anftstsapcl1 sudo crm configure property maintenance-mode="false"
Si está actualizando desde una versión anterior y va a cambiar al servidor 2 de puesta en cola, consulte la nota de SAP 2641019.
Nota:
Los tiempos de espera más altos, sugeridos al usar NFSv4.1, son necesarios debido a una pausa específica del protocolo, relacionada con las renovaciones de concesión de NFSv4.1. Para obtener más información, consulte Procedimiento recomendado de NFS en NetApp.
Es posible que los tiempos de espera de la configuración anterior deban adaptarse a la configuración específica de SAP.
Asegúrese de que el estado del clúster sea el correcto y que se iniciaron todos los recursos. No es importante en qué nodo se ejecutan los recursos.
sudo crm_mon -r
# Full list of resources:
#
# stonith-sbd (stonith:external/sbd): Started anftstsapcl2
# 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
# rsc_sap_QAS_ASCS00 (ocf::heartbeat:SAPInstance): Started anftstsapcl1
# Resource Group: g-QAS_ERS
# fs_QAS_ERS (ocf::heartbeat:Filesystem): Started anftstsapcl2
# nc_QAS_ERS (ocf::heartbeat:azure-lb): Started anftstsapcl2
# vip_QAS_ERS (ocf::heartbeat:IPaddr2): Started anftstsapcl2
# rsc_sap_QAS_ERS01 (ocf::heartbeat:SAPInstance): Started anftstsapcl2
Preparación del servidor de aplicaciones de SAP NetWeaver
Algunas bases de datos requieren que la instalación de la instancia de base de datos se ejecute en un servidor de aplicaciones. Prepare las máquinas virtuales del servidor de aplicaciones para poder usarlas en estos casos.
En los pasos siguientes se supone que instala el servidor de aplicaciones en un servidor distinto de los servidores ASCS/SCS y HANA. De lo contrario, no se necesitan algunos de los pasos que aparecen a continuación (como configurar la resolución de nombres de host).
Los elementos siguientes tienen el prefijo [A] (aplicable a PAS y AAS), [P] (solo aplicable a PAS) o [S] (solo aplicable a AAS).
[A] Configure el sistema operativo
Reduzca el tamaño de la caché de datos incorrectos. Para más información, consulte Low write performance on SLES 11/12 servers with large RAM (Bajo rendimiento de escritura en servidores SLES 11/12 con RAM grande).
sudo vi /etc/sysctl.conf # Change/set the following settings vm.dirty_bytes = 629145600 vm.dirty_background_bytes = 314572800
[A] Configure la resolución nombres de host
Puede usar un servidor DNS o modificar /etc/hosts en todos los nodos. En este ejemplo se muestra cómo utilizar el archivo /etc/hosts. Reemplace la dirección IP y el nombre de host en los siguientes comandos
sudo vi /etc/hosts
Inserte las siguientes líneas en /etc/hosts. Cambie la dirección IP y el nombre de host para que coincida con su entorno
# IP address of the load balancer frontend configuration for SAP NetWeaver ASCS/SCS 10.1.1.20 anftstsapvh # IP address of the load balancer frontend configuration for SAP NetWeaver ERS 10.1.1.21 anftstsapers # IP address of all application servers 10.1.1.15 anftstsapa01 10.1.1.16 anftstsapa02
[A] Cree el directorio sapmnt.
sudo mkdir -p /sapmnt/QAS sudo mkdir -p /usr/sap/trans sudo chattr +i /sapmnt/QAS sudo chattr +i /usr/sap/trans
[P] Cree el directorio PAS.
sudo mkdir -p /usr/sap/QAS/D02 sudo chattr +i /usr/sap/QAS/D02
[S] Cree el directorio AAS.
sudo mkdir -p /usr/sap/QAS/D03 sudo chattr +i /usr/sap/QAS/D03
[P] Configure
autofs
en PASsudo vi /etc/auto.master # Add the following line to the file, save and exit /- /etc/auto.direct
Si usa NFSv3, cree un archivo con:
sudo vi /etc/auto.direct # Add the following lines to the file, save and exit /sapmnt/QAS -nfsvers=3,nobind 10.1.0.4:/usrsapqas/sapmntQAS /usr/sap/trans -nfsvers=3,nobind 10.1.0.4:/trans /usr/sap/QAS/D02 -nfsvers=3,nobind 10.1.0.4:/usrsapqas/usrsapQASpas
Si usa NFSv4.1, cree un archivo con:
sudo vi /etc/auto.direct # Add the following lines to the file, save and exit /sapmnt/QAS -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/sapmntQAS /usr/sap/trans -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/trans /usr/sap/QAS/D02 -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/usrsapQASpas
Reinicie
autofs
para montar los recursos compartidos nuevos.sudo systemctl enable autofs sudo service autofs restart
[P] Configure
autofs
en AASsudo vi /etc/auto.master # Add the following line to the file, save and exit /- /etc/auto.direct
Si usa NFSv3, cree un archivo con:
sudo vi /etc/auto.direct # Add the following lines to the file, save and exit /sapmnt/QAS -nfsvers=3,nobind 10.1.0.4:/usrsapqas/sapmntQAS /usr/sap/trans -nfsvers=3,nobind 10.1.0.4:/trans /usr/sap/QAS/D03 -nfsvers=3,nobind 10.1.0.4:/usrsapqas/usrsapQASaas
Si usa NFSv4.1, cree un archivo con:
sudo vi /etc/auto.direct # Add the following lines to the file, save and exit /sapmnt/QAS -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/sapmntQAS /usr/sap/trans -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/trans /usr/sap/QAS/D03 -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/usrsapQASaas
Reinicie
autofs
para montar los recursos compartidos nuevos.sudo systemctl enable autofs sudo service autofs restart
[A] Configure el archivo de intercambio
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 el agente para activar el cambio
sudo service waagent restart
Instalar la base de datos
En este ejemplo, SAP NetWeaver se instala en SAP HANA. En esta instalación puede usar todas las bases de datos admitidas. Para más información acerca de cómo instalar SAP HANA en Azure, consulte Alta disponibilidad de SAP HANA en Azure Virtual Machines (VM). Para ver una lista de las bases de datos admitidas, consulte la nota de SAP 1928533.
Ejecute la instalación de la instancia de base de datos de SAP.
Instale la instancia de base de datos de SAP NetWeaver como raíz con un nombre de host virtual que se asigna a la dirección IP de la configuración de front-end del equilibrador de carga para la base de datos.
Puede usar el parámetro de sapinst SAPINST_REMOTE_ACCESS_USER para permitir que un usuario no raíz se conecta a sapinst.
sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
Instalación del servidor de aplicaciones de SAP NetWeaver
Siga estos pasos para instalar un servidor de aplicaciones de SAP.
[A] Prepare el servidor de aplicaciones. Siga los pasos descritos en el capítulo Preparación del servidor de aplicaciones de SAP NetWeaver anterior para preparar el servidor de aplicaciones.
[A] Instale el servidor de aplicaciones de SAP NetWeaver. Instale un servidor de aplicaciones de SAP NetWeaver principal o adicional.
Puede usar el parámetro de sapinst SAPINST_REMOTE_ACCESS_USER para permitir que un usuario no raíz se conecta a sapinst.
sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
[A] Actualice el almacenamiento seguro de SAP HANA.
Actualice el almacenamiento seguro de SAP HANA que apunte al nombre virtual de la configuración de la replicación del sistema SAP HANA.
Ejecute el siguiente comando para mostrar las entradas:
hdbuserstore List
Se deberían mostrar todas las entradas y deberían ser parecidas a estas:
DATA FILE : /home/qasadm/.hdb/anftstsapa01/SSFS_HDB.DAT KEY FILE : /home/qasadm/.hdb/anftstsapa01/SSFS_HDB.KEY KEY DEFAULT ENV : 10.1.1.5:30313 USER: SAPABAP1 DATABASE: QAS
El resultado muestra que la dirección IP de la entrada predeterminada apunta a la máquina virtual y no a la dirección IP del equilibrador de carga. Esta entrada debe modificarse para que apunte al nombre de host virtual del equilibrador de carga. Asegúrese de usar el mismo puerto (30313 en la salida anterior) y el mismo nombre de base de datos (QAS en la salida anterior).
su - qasadm hdbuserstore SET DEFAULT qasdb:30313@QAS SAPABAP1 <password of ABAP schema>
Prueba de la configuración del clúster
Pruebe exhaustivamente el clúster de Pacemaker. Ejecute las pruebas de conmutación por error típicas.
Pasos siguientes
- Alta disponibilidad para SAP NetWeaver en máquinas virtuales de Azure en SUSE Linux Enterprise Server para SAP Applications: guía de varios SID
- Planeamiento e implementación de Azure Virtual Machines para SAP
- Implementación de Azure Virtual Machines para SAP
- Implementación de DBMS de Azure Virtual Machines para SAP
- Para más información sobre cómo establecer la alta disponibilidad y planear la recuperación ante desastres de SAP HANA en Azure Virtual Machines, consulte Alta disponibilidad de SAP HANA en las máquinas virtuales de Azure.