Disponibilità elevata di SAP HANA in Macchine virtuali di Azure (VM)High Availability of SAP HANA on Azure Virtual Machines (VMs)

In locale è possibile usare la replica di sistema HANA oppure l'archiviazione condivisa per stabilire la disponibilità elevata per SAP HANA.On-premises, you can use either HANA System Replication or use shared storage to establish high availability for SAP HANA. La replica di sistema HANA è l'unica funzione per la disponibilità elevata supportata fino a questo momento in Macchine virtuali di Azure.On Azure VMs HANA System Replication on Azure is the only supported High Availability function so far. La replica SAP HANA è costituita da un nodo primario e da almeno un nodo secondario.SAP HANA Replication consists of one primary node and at least one secondary node. Le modifiche ai dati nel nodo primario vengono replicate nel nodo secondario in modo sincrono o asincrono.Changes to the data on the primary node are replicated to the secondary node synchronously or asynchronously.

Questo articolo descrive come distribuire le macchine virtuali, configurare le macchine virtuali, installare il framework del cluster e installare e configurare la replica di sistema SAP HANA.This article describes how to deploy the virtual machines, configure the virtual machines, install the cluster framework, install and configure SAP HANA System Replication. Nelle configurazioni di esempio, nei comandi di installazione e così via vengono usati il numero di istanza 03 e l'ID di sistema HANA HN1.In the example configurations, installation commands etc. instance number 03 and HANA System ID HN1 is used.

Leggere prima di tutto le note e i documenti seguenti relativi a SAPRead the following SAP Notes and papers first

PanoramicaOverview

Per ottenere disponibilità elevata, il sistema SAP HANA viene installato in due macchine virtuali.To achieve high availability, SAP HANA is installed on two virtual machines. I dati vengono replicati tramite la replica del sistema HANA.The data is replicated using HANA System Replication.

Panoramica della disponibilità elevata SAP HANA

Il programma di installazione di SAP HANA SR usa un nome host virtuale e indirizzi IP virtuali dedicati.The SAP HANA SR setup uses a dedicated virtual hostname and virtual IP addresses. Per usare un indirizzo IP virtuale in Azure, occorre il bilanciamento del carico.On Azure, a load balancer is required to use a virtual IP address. L'elenco seguente mostra la configurazione del bilanciamento del carico.The following list shows the configuration of the load balancer.

  • Configurazione front-endFrontend configuration
    • Indirizzo IP 10.0.0.13 per hn1-dbIP address 10.0.0.13 for hn1-db
  • Configurazione back-endBackend configuration
    • Connessione a interfacce di rete primarie di tutte le macchine virtuali che devono far parte della replica del sistema HANAConnected to primary network interfaces of all virtual machines that should be part of HANA System Replication
  • Porta probeProbe Port
    • Porta 62503Port 62503
  • Regole di bilanciamento del caricoLoadbalancing rules
    • 30313 TCP30313 TCP
    • 30315 TCP30315 TCP
    • 30317 TCP30317 TCP

Distribuzione di LinuxDeploying Linux

L'agente delle risorse per SAP HANA è incluso in SUSE Linux Enterprise Server for SAP Applications.The resource agent for SAP HANA is included in SUSE Linux Enterprise Server for SAP Applications. Azure Marketplace contiene un'immagine per SUSE Linux Enterprise Server for SAP Applications 12 che è possibile usare per distribuire nuove macchine virtuali.The Azure Marketplace contains an image for SUSE Linux Enterprise Server for SAP Applications 12 that you can use to deploy new virtual machines.

Eseguire la distribuzione con un modelloDeploy with template

È possibile usare uno dei modelli di avvio rapido di GitHub per distribuire tutte le risorse necessarie.You can use one of the quickstart templates on github to deploy all required resources. Il modello consente di distribuire le macchine virtuali, il servizio di bilanciamento del carico, il set di disponibilità e così via. Per distribuire il modello, seguire questi passaggi:The template deploys the virtual machines, the load balancer, availability set etc. To deploy the template, follow these steps:

  1. Aprire il modello di database o il modello con convergenza nel portale di Azure.Open the database template or the converged template on the Azure portal. Il modello di database crea solo le regole di bilanciamento del carico per un database, mentre il modello con convergenza crea anche le regole di bilanciamento del carico per un'istanza di ASCS/SCS ed ERS (solo Linux).The database template only creates the load-balancing rules for a database whereas the converged template also creates the load-balancing rules for an ASCS/SCS and ERS (Linux only) instance. Se si prevede di installare un sistema basato su SAP NetWeaver e si vuole installare anche l'istanza di ASCS/SCS nelle stesse macchine, usare il modello con convergenza.If you plan to install an SAP NetWeaver based system and you also want to install the ASCS/SCS instance on the same machines, use the converged template.
  2. Immettere i parametri seguentiEnter the following parameters
    1. Sap System IDSap System ID
      Immettere l'ID del sistema SAP che si vuole installare.Enter the SAP system ID of the SAP system you want to install. L'ID verrà usato come prefisso per le risorse distribuite.The ID is going to be used as a prefix for the resources that are deployed.
    2. Tipo di stack (applicabile solo se si usa il modello con convergenza)Stack Type (only applicable if you use the converged template)
      Selezionare il tipo di stack SAP NetWeaverSelect the SAP NetWeaver stack type
    3. Tipo di sistema operativoOs Type
      Selezionare una delle distribuzioni Linux.Select one of the Linux distributions. Per questo esempio, selezionare SLES 12For this example, select SLES 12
    4. Tipo di databaseDb Type
      Selezionare HANASelect HANA
    5. Dimensioni del sistema SAPSap System Size
      Quantità di SAPS che verranno forniti dal nuovo sistema.The amount of SAPS the new system is going to provide. Se non si è certi del numero di SAPS necessari per il sistema, chiedere all'integratore di sistemi o al partner tecnologico SAPIf you are not sure how many SAPS the system requires, ask your SAP Technology Partner or System Integrator
    6. Disponibilità del sistemaSystem Availability
      Selezionare la disponibilità elevata.Select HA
    7. Nome utente e password amministratoreAdmin Username and Admin Password
      Verrà creato un nuovo utente con cui è possibile accedere alla macchinaA new user is created that can be used to log on to the machine.
    8. Subnet nuova o esistenteNew Or Existing Subnet
      Determina se devono essere create una nuova rete virtuale e una nuova subnet o deve essere usata una subnet esistente.Determines whether a new virtual network and subnet should be created or an existing subnet should be used. Se è già presente una rete virtuale connessa alla rete locale, selezionare "existing".If you already have a virtual network that is connected to your on-premises network, select existing.
    9. Subnet IDSubnet ID
      ID della subnet a cui devono essere connesse le macchine virtuali.The ID of the subnet to which the virtual machines should be connected to. Per connettere la macchina virtuale alla rete locale, selezionare la subnet della rete virtuale Express Route o della VPN.To connect the virtual machine to your on-premises network, select the subnet of your VPN or Express Route virtual network. L'ID si presenta in genere come segue: /subscriptions/<subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.Network/virtualNetworks/<virtual network name>/subnets/<subnet name>The ID usually looks like /subscriptions/<subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.Network/virtualNetworks/<virtual network name>/subnets/<subnet name>

Distribuzione manualeManual Deployment

  1. Creare un gruppo di risorseCreate a Resource Group
  2. Creare una rete virtualeCreate a Virtual Network
  3. Creare un set di disponibilitàCreate an Availability Set
    Impostare il numero massimo di domini di aggiornamentoSet max update domain
  4. Creare un servizio di bilanciamento del carico (interno)Create a Load Balancer (internal)
    Selezionare la rete virtuale creata nel secondoSelect VNET created in the second
  5. Creare la macchina virtuale 1Create Virtual Machine 1
    Usare almeno SLES4SAP 12 SP1, in questo esempio verrà usata l'immagine SLES4SAP 12 SP2 https://ms.portal.azure.com/#create/SUSE.SUSELinuxEnterpriseServerforSAPApplications12SP2PremiumImage-ARMUse at least SLES4SAP 12 SP1, in this example we will use the SLES4SAP 12 SP2 image https://ms.portal.azure.com/#create/SUSE.SUSELinuxEnterpriseServerforSAPApplications12SP2PremiumImage-ARM
    SLES per SAP 12 SP2 (Premium)SLES for SAP 12 SP2 (Premium)
    Selezionare il set di disponibilità creato in precedenzaSelect Availability Set created earlier
  6. Creare la macchina virtuale 2Create Virtual Machine 2
    Usare almeno SLES4SAP 12 SP1, in questo esempio verrà usata l'immagine SLES4SAP 12 SP1 BYOS https://ms.portal.azure.com/#create/SUSE.SUSELinuxEnterpriseServerforSAPApplications12SP2PremiumImage-ARMUse at least SLES4SAP 12 SP1, in this example we will use the SLES4SAP 12 SP1 BYOS image https://ms.portal.azure.com/#create/SUSE.SUSELinuxEnterpriseServerforSAPApplications12SP2PremiumImage-ARM
    SLES per SAP 12 SP2 (Premium)SLES for SAP 12 SP2 (Premium)
    Selezionare il set di disponibilità creato in precedenzaSelect Availability Set created earlier
  7. Aggiungere dischi datiAdd Data Disks
  8. Configurare il servizio di bilanciamento del caricoConfigure the load balancer
    1. Creare un pool di indirizzi IP front-endCreate a frontend IP pool
      1. Aprire il servizio di bilanciamento del carico, selezionare Pool di indirizzi IP front-end e fare clic su AggiungiOpen the load balancer, select frontend IP pool, and click Add
      2. Immettere il nome del nuovo pool di indirizzi IP front-end (ad esempio, hana-frontend)Enter the name of the new frontend IP pool (for example hana-frontend)
      3. Impostare Assegnazione su Statico e immettere l'indirizzo IP, ad esempio 10.0.0.13Set the Assignment to Static and enter the IP address (for example 10.0.0.13)
      4. Fare clic su OK.Click OK
      5. Dopo aver creato il nuovo pool di indirizzi IP front-end, annotare il relativo indirizzo IPAfter the new frontend IP pool is created, write down its IP address
    2. Creare un pool back-endCreate a backend pool
      1. Aprire il servizio di bilanciamento del carico, selezionare Pool back-end e fare clic su AggiungiOpen the load balancer, select backend pools, and click Add
      2. Immettere il nome del nuovo pool back-end (ad esempio, hana-backend)Enter the name of the new backend pool (for example hana-backend)
      3. Fare clic su Aggiungi una macchina virtualeClick Add a virtual machine
      4. Selezionare il set di disponibilità creato in precedenzaSelect the Availability Set you created earlier
      5. Selezionare le macchine virtuali del cluster SAP HANASelect the virtual machines of the SAP HANA cluster
      6. Fare clic su OK.Click OK
    3. Creare un probe di integritàCreate a health probe
      1. Aprire il servizio di bilanciamento del carico, selezionare Probe integrità e fare clic su AggiungiOpen the load balancer, select health probes, and click Add
      2. Immettere il nome del nuovo probe integrità (ad esempio, hana-hp)Enter the name of the new health probe (for example hana-hp)
      3. Selezionare TCP come protocollo, la porta 62503, mantenere 5 per Intervallo e impostare il valore di Soglia di non integrità su 2Select TCP as protocol, port 62503, keep Interval 5 and Unhealthy threshold 2
      4. Fare clic su OK.Click OK
    4. SAP HANA 1.0: Creare regole di bilanciamento del caricoSAP HANA 1.0: Create load balancing rules
      1. Aprire il servizio di bilanciamento del carico, selezionare Regole di bilanciamento del carico e fare clic su AggiungiOpen the load balancer, select load balancing rules and click Add
      2. Immettere il nome della nuova regola di bilanciamento del carico (ad esempio, hana-lb-30315)Enter the name of the new load balancer rule (for example hana-lb-30315)
      3. Selezionare l'indirizzo IP front-end, il pool back-end e il probe integrità creati in precedenza (ad esempio, hana-frontend)Select the frontend IP address, backend pool, and health probe you created earlier (for example hana-frontend)
      4. Mantenere il protocollo TCP, immettere la porta 30315Keep protocol TCP, enter port 30315
      5. Aumentare il timeout di inattività a 30 minutiIncrease idle timeout to 30 minutes
      6. Assicurarsi di abilitare l'indirizzo IP mobileMake sure to enable Floating IP
      7. Fare clic su OK.Click OK
      8. Ripetere i passaggi precedenti per la porta 30317Repeat the steps above for port 30317
    5. SAP HANA 2.0: Creare regole di bilanciamento del carico per il database di sistemaSAP HANA 2.0: Create load balancing rules for system database
      1. Aprire il servizio di bilanciamento del carico, selezionare Regole di bilanciamento del carico e fare clic su AggiungiOpen the load balancer, select load balancing rules and click Add
      2. Immettere il nome della nuova regola di bilanciamento del carico, ad esempio hana-lb-30313Enter the name of the new load balancer rule (for example hana-lb-30313)
      3. Selezionare l'indirizzo IP front-end, il pool back-end e il probe integrità creati in precedenza (ad esempio, hana-frontend)Select the frontend IP address, backend pool, and health probe you created earlier (for example hana-frontend)
      4. Mantenere il protocollo TCP, immettere la porta 30313Keep protocol TCP, enter port 30313
      5. Aumentare il timeout di inattività a 30 minutiIncrease idle timeout to 30 minutes
      6. Assicurarsi di abilitare l'indirizzo IP mobileMake sure to enable Floating IP
      7. Fare clic su OK.Click OK
      8. Ripetere i passaggi precedenti per la porta 30314Repeat the steps above for port 30314
    6. SAP HANA 2.0: Creare regole di bilanciamento del carico per il primo database tenantSAP HANA 2.0: Create load balancing rules for first the tenant database
      1. Aprire il servizio di bilanciamento del carico, selezionare Regole di bilanciamento del carico e fare clic su AggiungiOpen the load balancer, select load balancing rules and click Add
      2. Immettere il nome della nuova regola di bilanciamento del carico, ad esempio, hana-lb-30340Enter the name of the new load balancer rule (for example hana-lb-30340)
      3. Selezionare l'indirizzo IP front-end, il pool back-end e il probe integrità creati in precedenza (ad esempio, hana-frontend)Select the frontend IP address, backend pool, and health probe you created earlier (for example hana-frontend)
      4. Mantenere il protocollo TCP, immettere la porta 30340Keep protocol TCP, enter port 30340
      5. Aumentare il timeout di inattività a 30 minutiIncrease idle timeout to 30 minutes
      6. Assicurarsi di abilitare l'indirizzo IP mobileMake sure to enable Floating IP
      7. Fare clic su OK.Click OK
      8. Ripetere i passaggi precedenti per le porte 30341 e 30342Repeat the steps above for port 30341 and 30342

Per altre informazioni sulle porte necessarie per SAP HANA, leggere il capitolo Connections to Tenant Databases (Connessioni a database tenant) della guida SAP HANA Tenant Databases (Database tenant SAP HANA) o la nota SAP 2388694.For more information about the required ports for SAP HANA, read chapter Connections to Tenant Databases of the SAP HANA Tenant Databases guide or SAP Note 2388694.

Creare un cluster PacemakerCreate Pacemaker cluster

Seguire i passaggi descritti in Setting up Pacemaker on SUSE Linux Enterprise Server in Azure (Configurazione di Pacemaker su SUSE Linux Enterprise Server in Azure) per creare un cluster Pacemaker di base per questo server HANA.Follow the steps in Setting up Pacemaker on SUSE Linux Enterprise Server in Azure to create a basic Pacemaker cluster for this HANA server. È possibile usare lo stesso cluster Pacemaker anche per SAP HANA e SAP NetWeaver (A)SCS.You can also use the same Pacemaker cluster for SAP HANA and SAP NetWeaver (A)SCS.

Installazione di SAP HANAInstalling SAP HANA

Gli elementi seguenti sono preceduti dal prefisso [A] - applicabile a tutti i nodi, [1] - applicabile solo al nodo 1 o [2] - applicabile solo al nodo 2 del cluster Pacemaker.The following items are prefixed with either [A] - applicable to all nodes, [1] - only applicable to node 1 or [2] - only applicable to node 2 of the Pacemaker cluster.

  1. [A] Configurare il layout dei dischi[A] Setup disk layout

    1. LVMLVM

      È in genere consigliabile usare LVM per i volumi che archiviano i dati e file di log.We generally recommend using LVM for volumes that store data and log files. L'esempio seguente presuppone che le macchine virtuali abbiano quattro dischi dati collegati che devono essere usati per creare due volumi.The example following assumes that the virtual machines have four data disks attached that should be used to create two volumes.

      Elencare tutti i dischi disponibiliList all available disks

      
      ls /dev/disk/azure/scsi1/lun*
      

      Output di esempioExample output

      /dev/disk/azure/scsi1/lun0  /dev/disk/azure/scsi1/lun1  /dev/disk/azure/scsi1/lun2  /dev/disk/azure/scsi1/lun3
      

      Creare i volumi fisici per tutti i dischi da usare.Create physical volumes for all disks that you want to use.

      
      sudo pvcreate /dev/disk/azure/scsi1/lun0
      sudo pvcreate /dev/disk/azure/scsi1/lun1
      sudo pvcreate /dev/disk/azure/scsi1/lun2
      sudo pvcreate /dev/disk/azure/scsi1/lun3
      

      Creare un gruppo di volumi per i file di dati, un gruppo di volumi per i file di log e uno per la directory condivisa di SAP HANACreate a volume group for the data files, one volume group for the log files and one for the shared directory of SAP HANA

      
      sudo vgcreate vg_hana_data_HN1 /dev/disk/azure/scsi1/lun0 /dev/disk/azure/scsi1/lun1
      sudo vgcreate vg_hana_log_HN1 /dev/disk/azure/scsi1/lun2
      sudo vgcreate vg_hana_shared_HN1 /dev/disk/azure/scsi1/lun3
      

      Creare i volumi logici.Create the logical volumes. Quando si usa lvcreate senza il parametro -i verrà creato un volume lineare.Linear volume will be created when using lvcreate without -i switch. È consigliabile creare un volume con striping per migliorare le prestazioni di I/O; l'argomento -i deve corrispondere al numero del volume fisico sottostante.We suggest to create striped volume for better IO performance, the -i argument should be same as the number of underlying physical volume. In questo documento vengono usati 2 volumi fisici per il volume di dati e quindi l'argomento del parametro -i è 2.In this document, 2 physical volumes are used for data volume, so the -i switch argument is 2. Viene usato 1 volume fisico per il volume di log e quindi non viene usato nessun parametro -i in modo esplicito.1 physical volume is used for log volume so no -i switch is used explicitly. Usare il parametro -i e sostituire il numero con lo stesso numero di volume fisico sottostante quando si usa più di 1 volume fisico per ogni volume dei dati, dei log e della condivisione.Please use -i switch and replace the number to same underlying physical volume number when you are using more than 1 physical volume for each data, log or shared volumes.

      
      sudo lvcreate -i 2 -l 100%FREE -n hana_data vg_hana_data_HN1
      sudo lvcreate -l 100%FREE -n hana_log vg_hana_log_HN1
      sudo lvcreate -l 100%FREE -n hana_shared vg_hana_shared_HN1
      sudo mkfs.xfs /dev/vg_hana_data_HN1/hana_data
      sudo mkfs.xfs /dev/vg_hana_log_HN1/hana_log
      sudo mkfs.xfs /dev/vg_hana_shared_HN1/hana_shared
      

      Creare le directory di montaggio e copiare l'UUID di tutti i volumi logiciCreate the mount directories and copy the UUID of all logical volumes

      
      sudo mkdir -p /hana/data/HN1
      sudo mkdir -p /hana/log/HN1
      sudo mkdir -p /hana/shared/HN1
      # write down the ID of /dev/vg_hana_data_HN1/hana_data, /dev/vg_hana_log_HN1/hana_log and /dev/vg_hana_shared_HN1/hana_shared
      sudo blkid
      

      Creare voci fstab per i tre volumi logiciCreate fstab entries for the three logical volumes

      
      sudo vi /etc/fstab
      

      Inserire questa riga in /etc/fstabInsert this line to /etc/fstab

      
      /dev/disk/by-uuid/<UUID of /dev/mapper/vg_hana_data_HN1-hana_data> /hana/data/HN1 xfs  defaults,nofail  0  2
      /dev/disk/by-uuid/<UUID of /dev/mapper/vg_hana_log_HN1-hana_log> /hana/log/HN1 xfs  defaults,nofail  0  2
      /dev/disk/by-uuid/<UUID of /dev/mapper/vg_hana_shared_HN1-hana_shared> /hana/shared/HN1 xfs  defaults,nofail  0  2
      

      Montare i nuovi volumiMount the new volumes

      
      sudo mount -a
      
    2. Dischi normaliPlain Disks
      Per sistemi demo, è possibile inserire i dati e i file di log HANA in un solo disco.For demo systems, you can place your HANA data and log files on one disk. I comandi seguenti creano una partizione in /dev/disk/azure/scsi1/lun0 e la formattano con XFS.The following commands create a partition on /dev/disk/azure/scsi1/lun0 and format it with xfs.

      
      sudo sh -c 'echo -e "n\n\n\n\n\nw\n" | fdisk /dev/disk/azure/scsi1/lun0'
      sudo mkfs.xfs /dev/disk/azure/scsi1/lun0-part1
      
      # write down the ID of /dev/disk/azure/scsi1/lun0-part1
      sudo /sbin/blkid
      sudo vi /etc/fstab
      

      Inserire questa riga in /etc/fstabInsert this line to /etc/fstab

      
      /dev/disk/by-uuid/<UUID> /hana xfs  defaults,nofail  0  2
      

      Creare la directory di destinazione e montare il disco.Create the target directory and mount the disk.

      
      sudo mkdir /hana
      sudo mount -a
      
  2. [A] Configurare la risoluzione dei nomi host per tutti gli host[A] Setup host name resolution for all hosts
    È possibile usare un server DNS o modificare /etc/hosts in tutti i nodi.You can either use a DNS server or modify the /etc/hosts on all nodes. Questo esempio mostra come usare il file /etc/hosts.This example shows how to use the /etc/hosts file. Sostituire l'indirizzo IP e il nome host nei comandi seguentiReplace the IP address and the hostname in the following commands

    sudo vi /etc/hosts
    

    Inserire le righe seguenti in /etc/hosts.Insert the following lines to /etc/hosts. Modificare l'indirizzo IP e il nome host in base all'ambienteChange the IP address and hostname to match your environment

    
    10.0.0.5 hn1-db-0
    10.0.0.6 hn1-db-1
    
  3. [A] Installare pacchetti HANA a disponibilità elevata[A] Install HANA HA packages

    sudo zypper install SAPHanaSR
    

Per installare la replica di sistema SAP HANA, seguire il capitolo 4 della guida SAP HANA SR Performance Optimized Scenario (Scenario di ottimizzazione delle prestazioni di SAP HANA SR) all'indirizzo https://www.suse.com/products/sles-for-sap/resource-library/sap-best-practices/To install SAP HANA System Replication, follow chapter 4 of the SAP HANA SR Performance Optimized Scenario guide at https://www.suse.com/products/sles-for-sap/resource-library/sap-best-practices/

  1. [A] Eseguire hdblcm dal DVD di HANA[A] Run hdblcm from the HANA DVD

    • Scegliere l'installazione -> 1Choose installation -> 1
    • Selezionare i componenti aggiuntivi per l'installazione -> 1Select additional components for installation -> 1
    • Immettere il percorso di installazione [/hana/shared]: -> INVIOEnter Installation Path [/hana/shared]: -> ENTER
    • Immettere il nome host locale [..]: -> INVIOEnter Local Host Name [..]: -> ENTER
    • Aggiungere altri host al sistema?Do you want to add additional hosts to the system? (y/n) [n]: -> INVIO(y/n) [n]: -> ENTER
    • Immettere l'ID di sistema SAP HANA: <SID of HANA e.g. HN1>Enter SAP HANA System ID: <SID of HANA e.g. HN1>
    • Immettere il numero di istanza [00]:Enter Instance Number [00]:
      Numero di istanza di HANA.HANA Instance number. Usare 03 se è stato usato il modello di Azure o se è stata seguita la procedura di distribuzione manualeUse 03 if you used the Azure Template or followed the manual deployment
    • Selezionare la modalità di database/immettere l'indice [1]: -> INVIOSelect Database Mode / Enter Index [1]: -> ENTER
    • Selezionare l'utilizzo del sistema/immettere l'indice [4]:Select System Usage / Enter Index [4]:
      Selezionare l'utilizzo del sistemaSelect the system Usage
    • Immettere il percorso dei volumi di dati [/hana/data/HN1]: -> INVIOEnter Location of Data Volumes [/hana/data/HN1]: -> ENTER
    • Immettere il percorso dei volumi di log [/hana/log/HN1]: -> INVIOEnter Location of Log Volumes [/hana/log/HN1]: -> ENTER
    • Limitare l'allocazione massima della memoria?Restrict maximum memory allocation? [n]: -> INVIO
    • Immettere il nome host del certificato per l'host "..." [...]: -> INVIOEnter Certificate Host Name For Host '...' [...]: -> ENTER
    • Immettere la password dell'utente agente host SAP (sapadm):Enter SAP Host Agent User (sapadm) Password:
    • Confermare la password dell'utente agente host SAP (sapadm):Confirm SAP Host Agent User (sapadm) Password:
    • Immettere la password dell'amministratore di sistema (hdbadm):Enter System Administrator (hdbadm) Password:
    • Confermare la password dell'amministratore di sistema (hdbadm):Confirm System Administrator (hdbadm) Password:
    • Immettere la home directory dell'amministratore di sistema [/usr/sap/HN1/home]: -> INVIOEnter System Administrator Home Directory [/usr/sap/HN1/home]: -> ENTER
    • Immettere la shell di accesso dell'amministratore di sistema [/bin/sh]: -> INVIOEnter System Administrator Login Shell [/bin/sh]: -> ENTER
    • Immettere l'ID utente dell'amministratore di sistema [1001]: -> INVIOEnter System Administrator User ID [1001]: -> ENTER
    • Immettere l'ID del gruppo di utenti (sapsys) [79]: -> INVIOEnter ID of User Group (sapsys) [79]: -> ENTER
    • Immettere la password dell'utente del database (SYSTEM):Enter Database User (SYSTEM) Password:
    • Confermare la password dell'utente del database (SYSTEM):Confirm Database User (SYSTEM) Password:
    • Riavviare il sistema dopo il riavvio della macchina?Restart system after machine reboot? [n]: -> INVIO
    • Continuare?Do you want to continue? (y/n):(y/n):
      Convalidare il riepilogo e immettere y per continuareValidate the summary and enter y to continue
  2. [A] Aggiornare l'agente host SAP[A] Upgrade SAP Host Agent
    Scaricare l'archivio dell'agente host SAP più recente dal sito SAP Softwarecenter ed eseguire il comando seguente per aggiornare l'agente.Download the latest SAP Host Agent archive from the SAP Softwarecenter and run the following command to upgrade the agent. Sostituire il percorso dell'archivio in modo da puntare al file scaricato.Replace the path to the archive to point to the file you downloaded.

    sudo /usr/sap/hostctrl/exe/saphostexec -upgrade -archive <path to SAP Host Agent SAR>
    

Configurare la replica di sistema di SAP HANA 2.0Configure SAP HANA 2.0 System Replication

Gli elementi seguenti sono preceduti dal prefisso [A] - applicabile a tutti i nodi, [1] - applicabile solo al nodo 1 o [2] - applicabile solo al nodo 2 del cluster Pacemaker.The following items are prefixed with either [A] - applicable to all nodes, [1] - only applicable to node 1 or [2] - only applicable to node 2 of the Pacemaker cluster.

  1. [1] Creare un database tenant[1] Create Tenant Database

    Se si usa SAP HANA 2.0 o MDC, creare un database tenant per il sistema SAP NetWeaver.If you are using SAP HANA 2.0 or MDC, create a tenant database for your SAP NetWeaver system. Sostituire NW1 con il SID del sistema SAP in uso.Replace NW1 with the SID of your SAP system.

    Accedere come <hanasid>adm ed eseguire il comando seguenteLog in as <hanasid>adm and execute the following command

    
    hdbsql -u SYSTEM -p "passwd" -i 03 -d SYSTEMDB 'CREATE DATABASE NW1 SYSTEM USER PASSWORD "passwd"'
    
  2. [1] Configurare la replica di sistema nel primo nodo[1] Configure System Replication on First Node

    Accedere come <hanasid> adm ed eseguire il backup dei databaseLog in as <hanasid>adm and backup the databases

    
    hdbsql -d SYSTEMDB -u SYSTEM -p "passwd" -i 03 "BACKUP DATA USING FILE ('initialbackupSYS')"
    hdbsql -d HN1 -u SYSTEM -p "passwd" -i 03 "BACKUP DATA USING FILE ('initialbackupHN1')"
    hdbsql -d NW1 -u SYSTEM -p "passwd" -i 03 "BACKUP DATA USING FILE ('initialbackupNW1')"
    

    Copiare i file dell'infrastruttura a chiave pubblica (PKI) di sistema nel sito secondarioCopy the system PKI files to secondary

    
    scp /usr/sap/HN1/SYS/global/security/rsecssfs/data/SSFS_HN1.DAT hn1-db-1:/usr/sap/HN1/SYS/global/security/rsecssfs/data/
    scp /usr/sap/HN1/SYS/global/security/rsecssfs/key/SSFS_HN1.KEY hn1-db-1:/usr/sap/HN1/SYS/global/security/rsecssfs/key/
    

    Creare il sito primario.Create the primary site.

    
    hdbnsutil -sr_enable –-name=SITE1
    
  3. [2] Configurare la replica di sistema nel secondo nodo[2] Configure System Replication on Second Node

    Registrare il secondo nodo per avviare la replica di sistema.Register the second node to start the system replication. Accedere come <hanasid>adm ed eseguire il comando seguenteLog in as <hanasid>adm and run the following command

    
     sapcontrol -nr 03 -function StopWait 600 10
     hdbnsutil -sr_register --remoteHost=hn1-db-0 --remoteInstance=03 --replicationMode=sync --name=SITE2 
     

Configurare la replica di sistema di SAP HANA 1.0Configure SAP HANA 1.0 System Replication

  1. [1] Creare gli utenti necessari[1] Create the Required Users

    Accedere come root ed eseguire il comando seguente.Log in as root and run the following command. Assicurarsi di sostituire le stringhe in grassetto (ID di sistema HANA HN1 e numero di istanza 03) con i valori dell'installazione di SAP HANA in uso.Make sure to replace bold strings (HANA System ID HN1 and instance number 03) with the values of your SAP HANA installation.

    
     PATH="$PATH:/usr/sap/HN1/HDB03/exe"
     hdbsql -u system -i 03 'CREATE USER hdbhasync PASSWORD "passwd"' 
     hdbsql -u system -i 03 'GRANT DATA ADMIN TO hdbhasync' 
     hdbsql -u system -i 03 'ALTER USER hdbhasync DISABLE PASSWORD LIFETIME' 
     
  2. [A] Creare una voce di archivio chiavi[A] Create keystore entry

    Accedere come root ed eseguire il comando seguente per creare una nuova voce di archivio chiavi.Log in as root and run the following command to create a new keystore entry.

    
     PATH="$PATH:/usr/sap/HN1/HDB03/exe"
     hdbuserstore SET hdbhaloc localhost:30315 hdbhasync passwd
     
  3. [1] Eseguire il backup dei database[1] Backup database

    Accedere come root ed eseguire il backup dei databaseLog in as root and backup the databases

    
    PATH="$PATH:/usr/sap/HN1/HDB03/exe"
    hdbsql -d SYSTEMDB -u system -i 03 "BACKUP DATA USING FILE ('initialbackup')"
    

    Se si usa un'installazione multi-tenant, eseguire anche il backup del database tenantIf you use a multi-tenant installation, also backup the tenant database

       
    hdbsql -d HN1 -u system -i 03 "BACKUP DATA USING FILE ('initialbackup')"
    
  4. [1] Configurare la replica di sistema nel primo nodo[1] Configure System Replication on First Node

    Accedere come <hanasid>adm e creare il sito primario.Log in as <hanasid>adm and create the primary site.

    
     su - hdbadm
     hdbnsutil -sr_enable –-name=SITE1
     
  5. [2] Configurare la replica di sistema nel nodo secondario.[2] Configure System Replication on Secondary Node.

    Accedere come <hanasid> adm e registrare il sito secondario.Log in as <hanasid>adm and register the secondary site.

    
     sapcontrol -nr 03 -function StopWait 600 10
     hdbnsutil -sr_register --remoteHost=hn1-db-0 --remoteInstance=03 --replicationMode=sync --name=SITE2 
     

Creare le risorse cluster SAP HANACreate SAP HANA cluster resources

Prima di tutto, creare la topologia HANA.First, create the HANA topology. Eseguire i comandi seguenti in uno dei nodi del cluster Pacemaker.Run the following commands on one of the Pacemaker cluster nodes.


   sudo crm configure property maintenance-mode=true

   # replace the bold string with your instance number and HANA system ID

   sudo crm configure primitive rsc_SAPHanaTopology_HN1_HDB03 ocf:suse:SAPHanaTopology \
     operations \$id="rsc_sap2_HN1_HDB03-operations" \
     op monitor interval="10" timeout="600" \
     op start interval="0" timeout="600" \
     op stop interval="0" timeout="300" \
     params SID="HN1" InstanceNumber="03"

   sudo crm configure clone cln_SAPHanaTopology_HN1_HDB03 rsc_SAPHanaTopology_HN1_HDB03 \
     meta is-managed="true" clone-node-max="1" target-role="Started" interleave="true"
   

Creare poi le risorse HANA.Next, create the HANA resources.


   # replace the bold string with your instance number, HANA system ID and the frontend IP address of the Azure load balancer. 

   sudo crm configure primitive rsc_SAPHana_HN1_HDB03 ocf:suse:SAPHana \
     operations \$id="rsc_sap_HN1_HDB03-operations" \
     op start interval="0" timeout="3600" \
     op stop interval="0" timeout="3600" \
     op promote interval="0" timeout="3600" \
     op monitor interval="60" role="Master" timeout="700" \
     op monitor interval="61" role="Slave" timeout="700" \
     params SID="HN1" InstanceNumber="03" PREFER_SITE_TAKEOVER="true" \
     DUPLICATE_PRIMARY_TIMEOUT="7200" AUTOMATED_REGISTER="false"

   sudo crm configure ms msl_SAPHana_HN1_HDB03 rsc_SAPHana_HN1_HDB03 \
     meta is-managed="true" notify="true" clone-max="2" clone-node-max="1" \
     target-role="Started" interleave="true"

   sudo crm configure primitive rsc_ip_HN1_HDB03 ocf:heartbeat:IPaddr2 \
     meta target-role="Started" is-managed="true" \
     operations \$id="rsc_ip_HN1_HDB03-operations" \
     op monitor interval="10s" timeout="20s" \
     params ip="10.0.0.13"

   sudo crm configure primitive rsc_nc_HN1_HDB03 anything \
     params binfile="/usr/bin/nc" cmdline_options="-l -k 62503" \
     op monitor timeout=20s interval=10 depth=0

   sudo crm configure group g_ip_HN1_HDB03 rsc_ip_HN1_HDB03 rsc_nc_HN1_HDB03

   sudo crm configure colocation col_saphana_ip_HN1_HDB03 4000: g_ip_HN1_HDB03:Started \
     msl_SAPHana_HN1_HDB03:Master  

   sudo crm configure order ord_SAPHana_HN1_HDB03 2000: cln_SAPHanaTopology_HN1_HDB03 \
     msl_SAPHana_HN1_HDB03

   # Cleanup the HANA resources. The HANA resources might have failed because of a known issue.
   sudo crm resource cleanup rsc_SAPHana_HN1_HDB03

   sudo crm configure property maintenance-mode=false
   

Assicurarsi che lo stato del cluster sia corretto e che tutte le risorse siano avviate.Make sure that the cluster status is ok and that all resources are started. Non è importante il nodo su cui sono in esecuzione le risorse.It is not important on which node the resources are running.


   sudo crm_mon -r

   # Online: [ hn1-db-0 hn1-db-1 ]
   #
   # Full list of resources:
   #
   # stonith-sbd     (stonith:external/sbd): Started hn1-db-0
   # rsc_st_azure    (stonith:fence_azure_arm):      Started hn1-db-1
   # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]
   #     Started: [ hn1-db-0 hn1-db-1 ]
   # Master/Slave Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03]
   #     Masters: [ hn1-db-0 ]
   #     Slaves: [ hn1-db-1 ]
   # Resource Group: g_ip_HN1_HDB03
   #     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-0
   #     rsc_nc_HN1_HDB03   (ocf::heartbeat:anything):      Started hn1-db-0
   

Testare la configurazione del clusterTest cluster setup

La sezione seguente descrive come testare la configurazione.This chapter describes how you can test your setup. Ogni test presuppone che si usi l'account root e che il master SAP HANA sia in esecuzione nella macchina virtuale hn1-db-0.Every test assumes that you are root and the SAP HANA master is running on the virtual machine hn1-db-0.

Test di isolamentoFencing Test

È possibile testare la configurazione dell'agente di isolamento disabilitando l'interfaccia di rete nel nodo hn1-db-0.You can test the setup of the fencing agent by disabling the network interface on node hn1-db-0.


sudo ifdown eth0

La macchina virtuale dovrebbe ora venire riavviata o arrestata, a seconda della configurazione del cluster.The virtual machine should now get restarted or stopped depending on your cluster configuration. Se si imposta stonith-action su off, la macchina virtuale verrà arrestata e verrà eseguita la migrazione delle risorse alla macchina virtuale in esecuzione.If you set the stonith-action to off, the virtual machine is going to be stopped and the resources are migrated to the running virtual machine.

Una volta riavviata la macchina virtuale, la risorsa SAP HANA non viene avviata come secondaria se si imposta AUTOMATED_REGISTER="false".Once you start the virtual machine again, the SAP HANA resource fails to start as secondary if you set AUTOMATED_REGISTER="false". In questo caso, configurare l'istanza di HANA come secondaria eseguendo questo comando:In this case, configure the HANA instance as secondary by executing this command:


su - hn1adm

# Stop the HANA instance just in case it is running
sapcontrol -nr 03 -function StopWait 600 10
hdbnsutil -sr_register --remoteHost=hn1-db-1 --remoteInstance=03 --replicationMode=sync --name=SITE1

# switch back to root and cleanup the failed state
exit
crm resource cleanup msl_SAPHana_HN1_HDB03 hn1-db-0

Test di un failover manualeTesting a manual failover

È possibile testare un failover manuale arrestando il servizio pacemaker nel nodo hn1-db-0.You can test a manual failover by stopping the pacemaker service on node hn1-db-0.


service pacemaker stop

Dopo il failover, è possibile avviare nuovamente il servizio.After the failover, you can start the service again. Se si imposta AUTOMATED_REGISTER="false", la risorsa SAP HANA in hn1-db-0 non viene avviata come secondaria.If you set AUTOMATED_REGISTER="false", the SAP HANA resource on hn1-db-0 fails to start as secondary. In questo caso, configurare l'istanza di HANA come secondaria eseguendo questo comando:In this case, configure the HANA instance as secondary by executing this command:


service pacemaker start
su - hn1adm

# Stop the HANA instance just in case it is running
sapcontrol -nr 03 -function StopWait 600 10
hdbnsutil -sr_register --remoteHost=hn1-db-1 --remoteInstance=03 --replicationMode=sync --name=SITE1 


# Switch back to root and cleanup the failed state
exit
crm resource cleanup msl_SAPHana_HN1_HDB03 hn1-db-0

Test di una migrazioneTesting a migration

È possibile eseguire la migrazione del nodo master SAP HANA eseguendo il comando seguenteYou can migrate the SAP HANA master node by executing the following command


crm resource migrate msl_SAPHana_HN1_HDB03 hn1-db-1
crm resource migrate g_ip_HN1_HDB03 hn1-db-1

Se si imposta AUTOMATED_REGISTER="false", questa sequenza di comandi deve eseguire la migrazione del nodo master SAP HANA e del gruppo contenente l'indirizzo IP virtuale a hn1-db-1.if you set AUTOMATED_REGISTER="false", this sequence of commands should migrate the SAP HANA master node and the group that contains the virtual IP address to hn1-db-1. La risorsa SAP HANA in hn1-db-0 non viene avviata come secondaria.The SAP HANA resource on hn1-db-0 fails to start as secondary. In questo caso, configurare l'istanza di HANA come secondaria eseguendo questo comando:In this case, configure the HANA instance as secondary by executing this command:


su - hn1adm

# Stop the HANA instance just in case it is running
sapcontrol -nr 03 -function StopWait 600 10
hdbnsutil -sr_register --remoteHost=hn1-db-1 --remoteInstance=03 --replicationMode=sync --name=SITE1 

La migrazione crea vincoli di posizione che devono essere eliminati di nuovo.The migration creates location constraints that need to be deleted again.


crm configure edited

# Delete location constraints that are named like the following contraint. You should have two constraints, one for the SAP HANA resource and one for the IP address group.
location cli-prefer-g_ip_HN1_HDB03 g_ip_HN1_HDB03 role=Started inf: hn1-db-1

È anche necessario eseguire la pulizia di stato della risorsa nodo secondarioYou also need to clean up the state of the secondary node resource


# Switch back to root and cleanup the failed state
exit
crm resource cleanup msl_SAPHana_HN1_HDB03 hn1-db-0

Passaggi successiviNext steps