Поделиться через


Azure Виртуальные машины высокой доступности для SAP NetWeaver в RHEL с Azure NetApp Files для приложений SAP

В этой статье описывается, как развернуть виртуальные машины, настроить виртуальные машины, установить платформу кластера и установить высокодоступную систему SAP NetWeaver 7.50 с помощью Azure NetApp Files. В примерах конфигураций и команд установки экземпляр ASCS имеет номер 00, экземпляр ERS имеет номер 01, основной экземпляр приложения (PAS) равен 02, а экземпляр приложения (AAS) равен 03. Используется идентификатор системы SAP.

В этой статье нет подробных сведений об уровне базы данных.

Необходимые компоненты

Прежде всего прочитайте следующие примечания и документы SAP:

Обзор

Высокий уровень доступности для центральных служб SAP NetWeaver требует общего хранилища. До сих пор для достижения высокой доступности в Red Hat Linux необходимо было создать отдельный высокодоступный кластер GlusterFS.

Теперь можно достичь высокого уровня доступности SAP NetWeaver с помощью общего хранилища, развернутого в Azure NetApp Files. Использование Azure NetApp Files для общего хранилища устраняет необходимость в дополнительных кластерах GlusterFS. Pacemaker по-прежнему необходим для высокой доступности центральных служб SAP NetWeaver (ASCS/SCS).

Схема с обзором высокого уровня доступности SAP NetWeaver.

SAP NetWeaver ASCS, SAP NetWeaver SCS, SAP NetWeaver ERS и база данных SAP HANA используют виртуальное имя узла и виртуальные IP-адреса. Load Balancer в Azure должен использовать виртуальный IP-адрес. Мы рекомендуем использовать Azure Load Balancer Уровня "Стандартный". В этой конфигурации показан подсистема балансировки нагрузки с помощью:

  • Внешний IP-адрес 192.168.14.9 для ASCS.
  • Внешний IP-адрес 192.168.14.10 для ERS.
  • Порт пробы 62000 для ASCS.
  • Порт пробы 62101 для ERS.

Настройка инфраструктуры Azure NetApp Files

SAP NetWeaver требует общее хранилище для каталога профиля и транспорта. Прежде чем продолжить настройку инфраструктуры Azure NetApp Files, ознакомьтесь с документацией по Azure NetApp Files. Проверьте, предлагает ли выбранный регион Azure службу Azure NetApp Files. Сведения о доступности Azure NetApp Files в регионе Azure см. в статье о доступности Azure NetApp Files по регионам Azure.

Azure NetApp Files доступны в нескольких регионах Azure.

Развертывание ресурсов Azure NetApp Files

В шагах предполагается, что вы уже развернули виртуальная сеть Azure. Ресурсы Azure NetApp Files и виртуальные машины, где будут подключены ресурсы Azure NetApp Files, должны быть развернуты в той же виртуальной сети Azure или в одноранговых виртуальных сетях Azure.

  1. Создайте учетную запись Azure NetApp Files в выбранном регионе Azure, следуя инструкциям по созданию учетной записи Azure NetApp Files.

  2. Настройте пул емкости Azure NetApp Files, следуя инструкциям по настройке пула емкости Azure NetApp Files. В архитектуре SAP NetWeaver, представленной в этой статье, используется один пул емкости Azure NetApp Files с номером SKU ценовой категории "Премиум". Мы рекомендуем номер SKU Azure NetApp Files Premium для рабочей нагрузки приложения SAP NetWeaver в Azure.

  3. Делегировать подсеть в Azure NetApp Files, как описано в инструкциях по делегированию подсети в Azure NetApp Files.

  4. Разверните тома Azure NetApp Files, следуя инструкциям по созданию тома для Azure NetApp Files. Разверните тома в выделенной подсети Azure NetApp Files. IP-адреса томов Azure NetApp Files назначаются автоматически. Ресурсы Azure NetApp Files и виртуальные машины Azure должны находиться в одной виртуальной сети Azure или в одноранговых виртуальных сетях Azure. В этом примере мы используем два тома Azure NetApp Files: sapQAS и transSAP. Пути к файлам, подключенным к соответствующим точкам подключения, являются /usrsapqas/sapmntQAS и /usrsap qas/usrsapQASsys.

    1. Volume sapQAS (nfs://192.168.24.5/usrsapqas/sapmntQAS)
    2. Volume sapQAS (nfs://192.168.24.5/usrsapqas/usrsapQASascs)
    3. Volume sapQAS (nfs://192.168.24.5/usrsapqas/usrsapQASsys)
    4. Volume sapQAS (nfs://192.168.24.5/usrsapqas/usrsapQASers)
    5. Volume transSAP (nfs://192.168.24.4/transSAP)
    6. Volume sapQAS (nfs://192.168.24.5/usrsapqas/usrsapQASpas)
    7. Volume sapQAS (nfs://192.168.24.5/usrsapqas/usrsapQAS aas)

В этом примере мы использовали Azure NetApp Files для всех файловой системы SAP NetWeaver, чтобы продемонстрировать, как можно использовать Azure NetApp Files. Файловые системы SAP, которые не нужно подключать через NFS, можно также развернуть как хранилище дисков Azure. В этом примере a-e должен находиться в Azure NetApp Files и f-g (т. е. /usr/sap/QAS/D02 и /usr/sap/QAS/D03) можно развернуть в качестве хранилища дисков Azure.

Важные замечания

При рассмотрении Azure NetApp Files для SAP NetWeaver в архитектуре высокого уровня доступности RHEL следует учитывать следующие важные аспекты:

  • Минимальный размер пула емкости равен 4 ТиБ. Вы можете увеличить размер пула емкости в 1-ТиБ.
  • Минимальный размер тома — 100 ГиБ.
  • Azure NetApp Files и все виртуальные машины, в которых будут подключены тома Azure NetApp Files, должны находиться в одной виртуальной сети Azure или в одноранговых виртуальных сетях в одном регионе. Теперь поддерживается доступ к Azure NetApp Files через пиринг между виртуальными сетями в том же регионе. Доступ к Azure NetApp Files через глобальный пиринг пока не поддерживается.
  • Выбранная виртуальная сеть должна иметь подсеть, делегированную Azure NetApp Files.
  • Характеристики пропускной способности и производительности тома Azure NetApp Files — это функция квоты тома и уровня обслуживания. Дополнительные сведения см. в разделе "Уровень обслуживания Azure NetApp Files". При размере томов SAP Azure NetApp убедитесь, что результирующая пропускная способность соответствует требованиям приложения.
  • Azure NetApp Files предлагает политику экспорта. Вы можете контролировать разрешенные клиенты и тип доступа (например, только для чтения и записи и чтения).
  • Функция Azure NetApp Files пока не знает о зоне. В настоящее время функция Azure NetApp Files не развертывается во всех зонах доступности в регионе Azure. Учитывайте возможную задержку в некоторых регионах Azure.
  • Тома Azure NetApp Files можно развернуть как тома NFSv3 или NFSv4.1. Оба протокола поддерживаются на уровне приложений SAP (ASCS/ERS, серверы приложений SAP).

Подготовка инфраструктуры

Azure Marketplace содержит образы, квалифицированные для SAP с надстройкой с высоким уровнем доступности, которую можно использовать для развертывания новых виртуальных машин с помощью различных версий Red Hat.

Развертывание виртуальных машин Linux вручную с помощью портал Azure

В этом документе предполагается, что вы уже развернули виртуальную сеть Azure, подсеть и группу ресурсов.

Развертывание виртуальных машин для СЕРВЕРОВ SAP ASCS, ERS и приложений. Выберите подходящий образ RHEL, поддерживаемый для системы SAP. Виртуальную машину можно развернуть в любом из вариантов доступности: масштабируемый набор виртуальных машин, зона доступности или группу доступности.

Настройка Azure Load Balancer

Во время настройки виртуальной машины можно создать или выбрать выход из подсистемы балансировки нагрузки в разделе сети. Выполните приведенные ниже действия, чтобы настроить стандартную подсистему балансировки нагрузки для установки высокого уровня доступности SAP ASCS и SAP ERS.

Следуйте инструкциям по созданию подсистемы балансировки нагрузки уровня "Стандартный" для системы SAP с высоким уровнем доступности с помощью портал Azure. Во время настройки подсистемы балансировки нагрузки рассмотрите следующие моменты.

  1. Конфигурация внешнего IP-адреса: создайте два внешних IP-адреса, один для ASCS и другой для ERS. Выберите ту же виртуальную сеть и подсеть, что и виртуальные машины ASCS/ERS.
  2. Внутренний пул: создание внутреннего пула и добавление виртуальных машин ASCS и ERS.
  3. Правила для входящего трафика: создайте два правила балансировки нагрузки, одно для ASCS и другое для ERS. Выполните те же действия для обоих правил балансировки нагрузки.
    • Внешний IP-адрес: выбор внешнего IP-адреса
    • Серверный пул: выбор внутреннего пула
    • Проверьте "Порты высокой доступности"
    • Протокол: TCP
    • Проба работоспособности: создание пробы работоспособности со следующими сведениями (применяется как для ASCS, так и для ERS)
      • Протокол: TCP
      • Порт: [например: 620<экземпляров нет.> для ASCS, 621<Экземпляр no.> для ERS]
      • Интервал: 5
      • Пороговое значение пробы: 2
    • Время ожидания простоя (минуты): 30
    • Установите флажок "Включить плавающий IP-адрес"

Примечание.

Номер свойства конфигурации пробы работоспособностиOfProbes, иначе известный как "Неработоспособное пороговое значение" на портале, не учитывается. Таким образом, чтобы управлять числом успешных или неудачных последовательных проб, задайте для свойства "probeThreshold" значение 2. В настоящее время невозможно задать это свойство с помощью портал Azure, поэтому используйте команду Azure CLI или PowerShell.

Примечание.

Если виртуальные машины без общедоступных IP-адресов помещаются в внутренний пул внутренней подсистемы балансировки нагрузки (без общедоступного IP-адреса) стандартной подсистемы балансировки нагрузки, подключение к исходящему интернету не выполняется, если только не выполняется дополнительная настройка, чтобы разрешить маршрутизацию на общедоступные конечные точки. Дополнительные сведения о том, как достичь исходящего подключения, см. в статье "Подключение к общедоступной конечной точке для виртуальных машин" с помощью Azure Load Balancer (цен. категория в сценариях высокой доступности SAP.

Внимание

Не включайте метки времени TCP на виртуальных машинах Azure, размещенных за Azure Load Balancer. Включение меток времени TCP может привести к сбою проб работоспособности. Задайте параметру net.ipv4.tcp_timestamps значение 0. Дополнительные сведения см. в статье Пробы работоспособности Load Balancer.

Отключение сопоставления идентификаторов (если используется NFSv4.1)

Инструкции в этом разделе применимы только при использовании томов Azure NetApp Files с протоколом NFSv4.1. Выполните настройку на всех виртуальных машинах, к которым будут подключены тома Azure NetApp Files с протоколом NFS версии 4.1.

  1. Проверьте параметр домена NFS. Убедитесь, что домен настроен в качестве домена Azure NetApp Files по умолчанию, тdefaultv4iddomain.com. е. сопоставление не задано никому.

    Внимание

    Обязательно укажите домен NFS в /etc/idmapd.conf виртуальной машине в соответствии с конфигурацией домена по умолчанию в Azure NetApp Files: defaultv4iddomain.com. Если существует несоответствие между конфигурацией домена на клиенте NFS (то есть виртуальной машине) и сервером NFS (то есть конфигурацией Azure NetApp), то разрешения для файлов на томах Azure NetApp, подключенных на виртуальных машинах, как показано nobody.

    sudo cat /etc/idmapd.conf
    
    # Example
    [General]
    Domain = defaultv4iddomain.com
    [Mapping]
    Nobody-User = nobody
    Nobody-Group = nobody
    

Следующий префикс [A] применяется как к PAS, так и к AAS.

  1. [A] Проверьте параметр nfs4_disable_idmapping. Оно должно иметь значение Y. Чтобы создать структуру каталогов, в которой nfs4_disable_idmapping находится, выполните команду подключения. Вы не сможете вручную создать каталог /sys/modules , так как доступ зарезервирован для ядра и драйверов.

    # 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
    

Настройка (A)SCS

Далее вы подготовите и установите экземпляры SAP ASCS и ERS.

Создание кластера Pacemaker

Выполните действия, описанные в статье "Настройка Pacemaker на Red Hat Enterprise Linux в Azure ", чтобы создать базовый кластер Pacemaker для этого сервера (A)SCS.

Подготовка к установке SAP NetWeaver

Ниже описаны префиксы этапов настройки и их значение:

  • [A]: применимо ко всем узлам;
  • [1]: применимо только к узлу 1
  • [2]: применимо только к узлу 2
  1. [A] Настройте разрешение имен узлов.

    Вы можете использовать DNS-сервер или изменить /etc/hosts файл на всех узлах. В этом примере показано, как использовать файл /etc/hosts. Замените IP-адрес и имя узла в следующих командах:

    sudo vi /etc/hosts
    

    Вставьте следующие строки в /etc/hosts. Измените IP-адрес и имя узла в соответствии с параметрами среды.

    # 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
    
  2. [1] Создайте каталоги SAP в томе Azure NetApp Files. Подключите том Azure NetApp Files временно на одной из виртуальных машин и создайте каталоги SAP (пути к файлам).

    # 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
    
  3. [A] Создайте общие папки.

    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
    
  4. [A] Установите клиент NFS и другие требования.

    sudo yum -y install nfs-utils resource-agents resource-agents-sap
    
  5. [A] Проверьте версию resource-agents-sap.

    Убедитесь, что по крайней мере 3.9.5-124.el7установлена версия установленного resource-agents-sap пакета.

    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.
    
  6. [A]: добавьте записи подключения.

    Если вы используете 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
    

    Если вы используете 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
    

    Примечание.

    Не забудьте сопоставить версию протокола NFS томов Azure NetApp Files при подключении томов. Если тома Azure NetApp Files созданы как тома NFSv3, применяйте соответствующую конфигурацию NFSv3. Если тома Azure NetApp Files созданы как тома NFSv4.1, следуйте инструкциям по отключению сопоставления идентификаторов и обязательно используйте соответствующую конфигурацию NFSv4.1. В этом примере тома Azure NetApp Files были созданы в виде томов NFSv3.

    Подключите новые общие папки.

    sudo mount -a  
    
  7. [A] Настройте файл подкачки.

    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
    

    Перезапустите агент, чтобы активировать изменение.

    sudo service waagent restart
    
  8. [A] Выполните конфигурацию ОС RHEL.

    На основе версии RHEL выполните конфигурацию, указанную в заметках SAP 2002167, 2772999 или 3108316.

Установка SAP NetWeaver ASCS/ERS

  1. [1] Настройка свойств кластера по умолчанию.

    pcs resource defaults resource-stickiness=1
    pcs resource defaults migration-threshold=3
    
  2. [1] Создайте виртуальный IP-адрес и пробу работоспособности для экземпляра 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
    

    Убедитесь, что состояние кластера нормально и все ресурсы запущены. Какой узел, на котором выполняются ресурсы, не важен.

    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
    
  3. [1] Установите SAP NetWeaver ASCS.

    Установите SAP NetWeaver ASCS в качестве корневого узла на первом узле с помощью имени виртуального узла, которое сопоставляется с IP-адресом интерфейсной конфигурации подсистемы балансировки нагрузки для ASCS, например anftstsapvh, 192.168.14.9, а также номер экземпляра, используемый для проверки подсистемы балансировки нагрузки, например 00.

    Вы можете использовать sapinst параметр SAPINST_REMOTE_ACCESS_USER , чтобы разрешить пользователю, не который будет подключаться sapinstк нему.

    # Allow access to SWPM. This rule is not permanent. If you reboot the machine, you have to run the command again.
    sudo firewall-cmd --zone=public  --add-port=4237/tcp
    
    sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=<virtual_hostname>
    

    Если установка завершилась ошибкой при создании вложенной папки в /usr/sap/QAS/ASCS00, попробуйте задать владельца и группу ASCS папки 00 и повторите заново.

    sudo chown qasadm /usr/sap/QAS/ASCS00
    sudo chgrp sapsys /usr/sap/QAS/ASCS00
    
  4. [1] Создайте виртуальный IP-адрес и пробу работоспособности для экземпляра 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
    

    Убедитесь, что состояние кластера нормально и все ресурсы запущены. Какой узел, на котором выполняются ресурсы, не важен.

    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
    
  5. [2] Установите ERS SAP NetWeaver.

    Установите SAP NetWeaver ERS в качестве корня на втором узле с помощью имени виртуального узла, которое сопоставляется с IP-адресом интерфейсной конфигурации подсистемы балансировки нагрузки для ERS, например anftstsapers, 192.168.14.10, а также номер экземпляра, используемый для проверки подсистемы балансировки нагрузки, например 01.

    Вы можете использовать sapinst параметр SAPINST_REMOTE_ACCESS_USER , чтобы разрешить пользователю, не который будет подключаться sapinstк нему.

    # Allow access to SWPM. This rule is not permanent. If you reboot the machine, you have to run the command again.
    sudo firewall-cmd --zone=public  --add-port=4237/tcp
    
    sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=<virtual_hostname>
    

    Если установка завершилась ошибкой при создании вложенной папки в /usr/sap/QAS/ERS01, попробуйте задать владельца и группу ERS папки 01 и повторите заново.

    sudo chown qaadm /usr/sap/QAS/ERS01
    sudo chgrp sapsys /usr/sap/QAS/ERS01
    
  6. [1] Адаптация профилей экземпляров ASCS/SCS и ERS.

    • Профиль 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
      

      Для ENSA1 и ENSA2 убедитесь, что keepalive параметры ОС заданы, как описано в 1410736 заметки SAP.

    • Профиль 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
      
  7. [A] Настройка поддержания активности.

    Обмен данными между сервером приложений SAP NetWeaver и ASCS/SCS происходит через программный балансировщик нагрузки. Балансировщик нагрузки отключает неактивные подключения по истечении времени ожидания, которое можно настроить. Чтобы предотвратить это действие, задайте параметр в профиле SAP NetWeaver ASCS/SCS, если вы используете ENSA1, и измените параметры системы keepalive Linux на всех серверах SAP для обоих ENSA1/ENSA2. Дополнительные сведения см. в 1410736 заметки SAP.

    # Change the Linux system configuration
    sudo sysctl net.ipv4.tcp_keepalive_time=300
    
  8. [A] Обновите /usr/sap/sapservices файл.

    Чтобы предотвратить запуск экземпляров скриптом sapinit запуска, все экземпляры, управляемые Pacemaker, должны быть закомментированы из /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
    

    Внимание

    Благодаря системной платформе SAP Startup Framework экземпляры SAP теперь могут управляться системой. Минимальная требуемая версия Red Hat Enterprise Linux (RHEL) — RHEL 8 для SAP. Как описано в примечании SAP 3115048, новая установка ядра SAP с интегрированной системой поддержкой SAP Startup Framework всегда приведет к системному управляемому экземпляру SAP. После обновления ядра SAP существующей установки SAP до ядра, в котором поддерживается системная поддержка SAP Startup Framework, однако некоторые действия вручную необходимо выполнить, как описано в sap Note 3115048 , чтобы преобразовать существующую среду запуска SAP в ту, которая управляется системой.

    При использовании служб Red Hat HA для SAP (конфигурации кластера) для управления экземплярами сервера приложений SAP, такими как SAP ASCS и SAP ERS, необходимо внести дополнительные изменения, чтобы обеспечить совместимость агента ресурсов SAPInstance и новой платформы запуска SAP на основе системы. Поэтому после установки или переключения экземпляров сервера приложений SAP на системное ядро SAP в зависимости от 3115048 SAP, шаги, описанные в red Hat KBA 6884531, должны быть успешно выполнены на всех узлах кластера.

  9. [1] Создайте кластерные ресурсы SAP.

    В зависимости от того, выполняется ли система ENSA1 или ENSA2, выберите соответствующую вкладку, чтобы определить ресурсы. SAP представила поддержку ENSA2, включая репликацию, в SAP NetWeaver версии 7.52. Начиная с ABAP Platform 1809 сервер постановки ENSA2 устанавливается по умолчанию. Для поддержки ENSA2. См. примечание SAP 2630416 для поддержки сервера 2.

    Если вы используете архитектуру enqueue server 2 (ENSA2), установите агент ресурсов resource-agents-sap-4.1.1-12.el7.x86_64 или более поздней версии и определите ресурсы, как показано ниже:

    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
    

    Если вы обновляете более раннюю версию и переходите на сервер в очередь 2, см. заметку SAP 2641322.

    Примечание.

    Более высокие сроки ожидания, предлагаемые при использовании NFSv4.1, необходимы из-за приостановки аренды, связанной с продлением аренды NFSv4.1. Дополнительные сведения см . в рекомендации по NFS в NetApp. Время ожидания в предыдущей конфигурации — это только примеры и может потребоваться адаптироваться к определенной настройке SAP.

    Убедитесь, что состояние кластера нормально и все ресурсы запущены. Какой узел, на котором выполняются ресурсы, не важен.

    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
    
  10. [1] Выполните следующий шаг, чтобы настроить priority-fencing-delay (применимо только в pacemaker-2.0.4-6.el8 или более поздней версии).

    Примечание.

    Если у вас есть кластер с двумя узлами, у вас есть возможность настроить priority-fencing-delay свойство кластера. Это свойство представляет большую задержку в ограждении узла, имеющего более высокий общий приоритет ресурсов при возникновении сценария разделения мозга. Дополнительные сведения см. в статье "Можно ли Pacemaker заборить узел кластера с наименьшими работающими ресурсами?".

    Свойство priority-fencing-delay применимо к pacemaker-2.0.4-6.el8 или более поздней версии. Если вы настраиваете priority-fencing-delay существующий кластер, обязательно снимите pcmk_delay_max параметр на устройстве ограждения.

    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
    
  11. [A] Добавление правил брандмауэра для ASCS и ERS в обоих узлах.

    # 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
    

Подготовка сервера приложений SAP NetWeaver

Для некоторых баз данных требуется, чтобы установка экземпляра базы данных выполнялось на сервере приложений. Подготовьте виртуальные машины сервера приложений для их использования в этих случаях.

В следующих шагах предполагается, что сервер приложений устанавливается на сервер, отличный от серверов ASCS/SCS и HANA. В противном случае некоторые шаги (например, настройка разрешения имен узлов) не требуются.

Ниже описаны префиксы этапов настройки и их значение:

  • [A]: применимо как к PAS, так и К AAS
  • [P]: применимо только к PAS
  • [S]: применимо только к AAS
  1. [A] Настройте разрешение имен узлов.

    Вы можете использовать DNS-сервер или изменить /etc/hosts файл на всех узлах. В этом примере показано, как использовать файл /etc/hosts. Замените IP-адрес и имя узла в следующих командах:

    sudo vi /etc/hosts
    

    Вставьте следующие строки в /etc/hosts. Измените IP-адрес и имя узла в соответствии с параметрами среды.

    # 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
    
  2. [A] Создайте sapmnt каталог.

    sudo mkdir -p /sapmnt/QAS
    sudo mkdir -p /usr/sap/trans
    
    sudo chattr +i /sapmnt/QAS
    sudo chattr +i /usr/sap/trans
    
  3. [A] Установите клиент NFS и другие требования.

    sudo yum -y install nfs-utils uuidd
    
  4. [A]: добавьте записи подключения.

    Если вы используете 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
    

    Если вы используете 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
    

    Подключите новые общие папки.

    sudo mount -a
    
  5. [P] Создайте и подключите каталог PAS.

    Если вы используете 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
    

    Если вы используете 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
    
  6. [S] Создайте и подключите каталог AAS.

    Если вы используете 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
    

    Если вы используете 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
    
  7. [A] Настройте файл подкачки.

    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
    

    Перезапустите агент, чтобы активировать изменение.

    sudo service waagent restart
    

Установка базы данных

В данном примере SAP NetWeaver уже установлен на SAP HANA. Для этой установки можно использовать любую поддерживаемую базу данных. Дополнительные сведения об установке SAP HANA в Azure см. в статье Обеспечение высокого уровня доступности SAP HANA на виртуальных машинах Azure в Red Hat Enterprise Linux. Список поддерживаемых баз данных см. в примечании SAP 1928533.

  • Запустите установку экземпляра базы данных SAP.

    Установите экземпляр базы данных SAP NetWeaver в качестве корня с помощью имени виртуального узла, которое сопоставляется с IP-адресом конфигурации внешнего интерфейса подсистемы балансировки нагрузки для базы данных.

    Вы можете использовать sapinst параметр SAPINST_REMOTE_ACCESS_USER , чтобы разрешить пользователю, не который будет подключаться sapinstк нему.

    sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
    

Установка сервера приложений SAP NetWeaver

Для установки сервера приложений SAP выполните следующие действия.

  1. Подготовьте сервер приложений.

    Выполните действия, описанные в предыдущем разделе о подготовке сервера приложений SAP NetWeaver для подготовки сервера приложений.

  2. Установите сервер приложений SAP NetWeaver.

    Установите основной и дополнительный сервер приложений SAP NetWeaver:

    Вы можете использовать sapinst параметр SAPINST_REMOTE_ACCESS_USER , чтобы разрешить пользователю, не который будет подключаться sapinstк нему.

    sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
    
  3. Обновите безопасное хранилище SAP HANA.

    Обновите безопасное хранилище SAP HANA, чтобы оно указывало на виртуальное имя настройки репликации системы SAP HANA.

    Выполните следующую команду, чтобы вывести список записей как <sapsid>adm.

    hdbuserstore List
    

    Все записи должны быть перечислены и выглядеть примерно так:

    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
    

    В выходных данных показано, что IP-адрес записи по умолчанию указывает на виртуальную машину, а не НА IP-адрес подсистемы балансировки нагрузки. Чтобы указать имя виртуального узла подсистемы балансировки нагрузки, необходимо изменить эту запись. Обязательно используйте тот же порт (30313 в предыдущих выходных данных) и имя базы данных (QAS в предыдущем выходных данных).

    su - qasadm
    hdbuserstore SET DEFAULT qasdb:30313@QAS SAPABAP1 <password of ABAP schema>
    

Проверка настройки кластера

Тщательно протестируйте кластер Pacemaker. Дополнительные сведения см. в разделе "Выполнение типичных тестов отработки отказа".

Следующие шаги