SUSE Linux Enterprise Server'da Azure VM'lerinde SAP HANA için yüksek kullanılabilirlik

Şirket içi SAP HANA dağıtımında yüksek kullanılabilirlik sağlamak için SAP HANA sistem çoğaltmasını veya paylaşılan depolamayı kullanabilirsiniz.

Şu anda Azure sanal makinelerinde (VM) desteklenen tek yüksek kullanılabilirlik işlevi Azure'da SAP HANA sistem çoğaltmasıdır.

SAP HANA sistem çoğaltması bir birincil düğümden ve en az bir ikincil düğümden oluşur. Birincil düğümdeki verilerde yapılan değişiklikler ikincil düğüme zaman uyumlu veya zaman uyumsuz olarak çoğaltılır.

Bu makalede VM'lerin nasıl dağıtılacağı ve yapılandırılacağı, küme çerçevesinin nasıl yükleneceği ve SAP HANA sistem çoğaltmasının nasıl yükleneceği ve yapılandırılacağı açıklanır.

Başlamadan önce aşağıdaki SAP Notları ve kağıtlarını okuyun:

  • SAP Not 1928533. Not şunları içerir:
    • SAP yazılımının dağıtımı için desteklenen Azure VM boyutlarının listesi.
    • Azure VM boyutları için önemli kapasite bilgileri.
    • Desteklenen SAP yazılımı, işletim sistemi (OS) ve veritabanı birleşimleri.
    • Microsoft Azure'da Windows ve Linux için gerekli SAP çekirdek sürümleri.
  • SAP Not 2015553 , Azure'da SAP tarafından desteklenen SAP yazılım dağıtımları için önkoşulları listeler.
  • SAP Not 2205917 SAP Uygulamaları için SUSE Linux Enterprise Server 12 (SLES 12) işletim sistemi ayarlarını önermiştir.
  • SAP Not 2684254 SAP Uygulamaları için SUSE Linux Enterprise Server 15 (SLES 15) işletim sistemi ayarlarını önermiştir.
  • SAP Note 2235581 SAP HANA tarafından desteklenen İşletim sistemlerine sahiptir
  • SAP Not 2178632 , Azure'da SAP için bildirilen tüm izleme ölçümleri hakkında ayrıntılı bilgiler içerir.
  • SAP Note 2191498 , Azure'da Linux için gerekli SAP konak aracısı sürümüne sahiptir.
  • SAP Note 2243692 , Azure'da Linux için SAP lisanslama hakkında bilgi içerir.
  • SAP Not 1984787 SUSE Linux Enterprise Server 12 hakkında genel bilgiler içerir.
  • SAP Not 1999351 , SAP için Azure Gelişmiş İzleme Uzantısı için daha fazla sorun giderme bilgisi içerir.
  • SAP Not 401162 , HANA sistem çoğaltmasını ayarlarken "adres zaten kullanımda" hatalarından kaçınma hakkında bilgi içerir.
  • SAP Topluluk Desteği Wiki'sinde Linux için gerekli tüm SAP Notları bulunur.
  • SAP HANA Sertifikalı IaaS Platformları.
  • Linux üzerinde SAP için Azure Sanal Makineler planlama ve uygulama kılavuzu.
  • Linux üzerinde SAP için Azure Sanal Makineler dağıtımı kılavuzu.
  • Linux üzerinde SAP için Azure Sanal Makineler DBMS dağıtımı kılavuzu.
  • SAP Uygulamaları için SUSE Linux Enterprise Server 15 en iyi yöntemler kılavuzları ve SAP Uygulamaları için SUSE Linux Enterprise Server 12 en iyi yöntemler kılavuzları:
    • SAP HANA SR Performans için İyileştirilmiş Altyapı (SAP Uygulamaları için SLES) ayarlama. Kılavuz, şirket içi geliştirme için SAP HANA sistem çoğaltmasını ayarlamak için gerekli tüm bilgileri içerir. Bu kılavuzu temel olarak kullanın.
    • SAP HANA SR Maliyet İçin İyileştirilmiş Altyapı (SAP Uygulamaları için SLES) ayarlama.

SAP HANA yüksek kullanılabilirliğini planlama

Yüksek kullanılabilirlik elde etmek için SAP HANA'yı iki VM'ye yükleyin. Veriler HANA sistem çoğaltması kullanılarak çoğaltılır.

SAP HANA yüksek kullanılabilirliğine genel bakış gösteren diyagram.

SAP HANA sistem çoğaltma kurulumu ayrılmış bir sanal konak adı ve sanal IP adresleri kullanır. Azure'da sanal IP adresi dağıtmak için bir yük dengeleyiciye ihtiyacınız vardır.

Yukarıdaki şekilde şu yapılandırmalara sahip örnek bir yük dengeleyici gösterilmektedir:

  • Ön uç IP adresi: HN1-db için 10.0.0.13
  • Yoklama bağlantı noktası: 62503

Altyapıyı hazırlama

SAP HANA için kaynak aracısı, SAP Uygulamaları için SUSE Linux Enterprise Server'a dahildir. SAP Applications 12 veya 15 için SUSE Linux Enterprise Server görüntüsü Azure Market'de kullanılabilir. Görüntüyü kullanarak yeni VM'ler dağıtabilirsiniz.

Azure portalı aracılığıyla Linux VM'lerini el ile dağıtma

Bu belgede zaten bir kaynak grubu, Azure Sanal Ağ ve alt ağ dağıttığınız varsayılır.

SAP HANA için sanal makineleri dağıtma. HANA sistemi için desteklenen uygun bir SLES görüntüsü seçin. Sanal makine ölçek kümesi, kullanılabilirlik alanı veya kullanılabilirlik kümesi gibi kullanılabilirlik seçeneklerinden herhangi birinde VM dağıtabilirsiniz.

Önemli

Seçtiğiniz işletim sisteminin, dağıtımınızda kullanmayı planladığınız belirli VM türlerinde SAP HANA sertifikalı olduğundan emin olun. SAP HANA sertifikalı VM türlerini ve bunların işletim sistemi sürümlerini SAP HANA Sertifikalı IaaS Platformları'nda arayabilirsiniz. Belirli bir VM türü için SAP HANA tarafından desteklenen işletim sistemi sürümlerinin tam listesini almak için VM türünün ayrıntılarına baktığınızdan emin olun.

Azure yük dengeleyiciyi yapılandırma

VM yapılandırması sırasında ağ bölümünde yük dengeleyiciden çıkma seçeneğiniz vardır. HANA veritabanının yüksek kullanılabilirlik kurulumu için standart yük dengeleyiciyi ayarlamak için aşağıdaki adımları izleyin.

Azure portalını kullanarak yüksek kullanılabilirlikli bir SAP sistemi için standart yük dengeleyici ayarlamak için Yük dengeleyici oluşturma makalesindeki adımları izleyin. Yük dengeleyicinin kurulumu sırasında aşağıdaki noktaları göz önünde bulundurun:

  1. Ön uç IP Yapılandırması: Ön uç IP'si oluşturun. Veritabanı sanal makinelerinizle aynı sanal ağı ve alt ağ adını seçin.
  2. Arka Uç Havuzu: Arka uç havuzu oluşturun ve veritabanı VM'leri ekleyin.
  3. Gelen kuralları: Yük dengeleme kuralı oluşturun. Her iki yük dengeleme kuralı için de aynı adımları izleyin.
    • Ön uç IP adresi: Ön uç IP'lerini seçin.
    • Arka uç havuzu: Bir arka uç havuzu seçin.
    • Yüksek kullanılabilirlik bağlantı noktaları: Bu seçeneği belirleyin.
    • Protokol: TCP'yi seçin.
    • Sistem Durumu Yoklaması: Aşağıdaki ayrıntıları içeren bir sistem durumu yoklaması oluşturun:
      • Protokol: TCP'yi seçin.
      • Bağlantı noktası: Örneğin, 625<örnek-no.>.
      • Aralık: 5 girin.
      • Yoklama Eşiği: 2 girin.
    • Boşta kalma zaman aşımı (dakika): 30 girin.
    • Kayan IP'yi etkinleştir: Bu seçeneği belirleyin.

Not

Portalda iyi durumda olmayan eşik olarak bilinen durum yoklaması yapılandırma özelliğine numberOfProbesuyulmaz. Başarılı veya başarısız ardışık yoklama sayısını denetlemek için özelliğini probeThreshold olarak 2ayarlayın. Şu anda Azure portalını kullanarak bu özelliği ayarlamak mümkün değildir, bu nedenle Azure CLI veya PowerShell komutunu kullanın.

SAP HANA için gerekli bağlantı noktaları hakkında daha fazla bilgi için SAP HANA Kiracı Veritabanları kılavuzunda veya SAP Not 2388694 kiracı veritabanlarına Bağlan lar bölümünü okuyun.

Önemli

Kayan IP adresi, yük dengeleme senaryolarında ağ arabirim kartı (NIC) ikincil IP yapılandırmasında desteklenmez. Ayrıntılar için bkz . Azure Load Balancer sınırlamaları. VM için başka bir IP adresine ihtiyacınız varsa ikinci bir NIC dağıtın.

Not

Genel IP adresleri olmayan VM'ler Azure Load Balancer'ın iç (genel IP adresi yok) standart örneğinin arka uç havuzuna yerleştirildiğinde, varsayılan yapılandırma giden İnternet bağlantısı değildir. Genel uç noktalara yönlendirmeye izin vermek için ek adımlar uygulayabilirsiniz. Giden bağlantı elde etme hakkında ayrıntılı bilgi için bkz. SAP yüksek kullanılabilirlik senaryolarında Azure Standart Load Balancer kullanarak VM'ler için genel uç nokta bağlantısı.

Önemli

  • Azure Load Balancer'ın arkasına yerleştirilen Azure VM'lerinde TCP zaman damgalarını etkinleştirmeyin. TCP zaman damgalarının etkinleştirilmesi sistem durumu yoklamalarının başarısız olmasına neden olur. parametresini net.ipv4.tcp_timestamps olarak 0ayarlayın. Ayrıntılar için bkz . Load Balancer sistem durumu yoklamaları veya SAP not 2382421.
  • saptune'un el ile ayarlanan net.ipv4.tcp_timestamps değeri olarak 0 değiştirmesini önlemek için 1saptune sürümünü 3.1.1 veya üzeri bir sürüme güncelleştirin. Daha fazla ayrıntı için bkz . saptune 3.1.1 – Güncelleştirmem Gerekiyor mu?.

Pacemaker kümesi oluşturma

Bu HANA sunucusu için temel bir Pacemaker kümesi oluşturmak için Azure'da SUSE Linux Enterprise Server'da Pacemaker'ı ayarlama makalesindeki adımları izleyin. SAP HANA ve SAP NetWeaver (A)SCS için aynı Pacemaker kümesini kullanabilirsiniz.

SAP HANA yükleme

Bu bölümdeki adımlar aşağıdaki ön ekleri kullanır:

  • [A]: Adım tüm düğümler için geçerlidir.
  • [1]: Adım yalnızca düğüm 1 için geçerlidir.
  • [2]: Adım yalnızca Pacemaker kümesinin 2. düğümü için geçerlidir.

değerini SAP HANA yüklemenizin değerleriyle değiştirin <placeholders> .

  1. [A] Mantıksal Birim Yöneticisi'ni (LVM) kullanarak disk düzenini ayarlayın.

    Verileri ve günlük dosyalarını depolayan birimler için LVM kullanmanızı öneririz. Aşağıdaki örnekte, VM'lerin iki birim oluşturmak için kullanılan dört bağlı veri diski olduğu varsayılır.

    1. Kullanılabilir tüm diskleri listelemek için şu komutu çalıştırın:

      /dev/disk/azure/scsi1/lun*
      

      Örnek çıkış:

      /dev/disk/azure/scsi1/lun0  /dev/disk/azure/scsi1/lun1  /dev/disk/azure/scsi1/lun2  /dev/disk/azure/scsi1/lun3
      
    2. Kullanmak istediğiniz tüm diskler için fiziksel birimler oluşturun:

      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
      
    3. Veri dosyaları için bir birim grubu oluşturun. Sap HANA'nın paylaşılan dizini için günlük dosyaları için bir birim grubu ve bir birim grubu kullanın:

      sudo vgcreate vg_hana_data_<HANA SID> /dev/disk/azure/scsi1/lun0 /dev/disk/azure/scsi1/lun1
      sudo vgcreate vg_hana_log_<HANA SID> /dev/disk/azure/scsi1/lun2
      sudo vgcreate vg_hana_shared_<HANA SID> /dev/disk/azure/scsi1/lun3
      
    4. Mantıksal birimleri oluşturun.

      Anahtar olmadan -i kullandığınızda lvcreate doğrusal bir birim oluşturulur. Daha iyi G/Ç performansı için şeritli birim oluşturmanızı öneririz. Şerit boyutlarını SAP HANA VM depolama yapılandırmalarında açıklanan değerlerle hizalayın. -i Bağımsız değişken, temel alınan fiziksel birimlerin sayısı, -I bağımsız değişken ise şerit boyutu olmalıdır.

      Örneğin, veri birimi için iki fiziksel birim kullanılıyorsa, -i anahtar bağımsız değişkeni 2 olarak ayarlanır ve veri biriminin şerit boyutu 256 Kb olur. Günlük birimi için bir fiziksel birim kullanıldığından, günlük birimi komutları için açıkça hayır -i veya -I anahtarları kullanılır.

      Önemli

      Her veri birimi, günlük birimi veya paylaşılan birim için birden fazla fiziksel birim kullandığınızda, anahtarı kullanın -i ve temel alınan fiziksel birimlerin sayısını ayarlayın. Şeritli birim oluşturduğunuzda, şerit boyutunu belirtmek için anahtarı kullanın -I .

      Şerit boyutları ve disk sayısı da dahil olmak üzere önerilen depolama yapılandırmaları için bkz . SAP HANA VM depolama yapılandırmaları.

      sudo lvcreate <-i number of physical volumes> <-I stripe size for the data volume> -l 100%FREE -n hana_data vg_hana_data_<HANA SID>
      sudo lvcreate -l 100%FREE -n hana_log vg_hana_log_<HANA SID>
      sudo lvcreate -l 100%FREE -n hana_shared vg_hana_shared_<HANA SID>
      sudo mkfs.xfs /dev/vg_hana_data_<HANA SID>/hana_data
      sudo mkfs.xfs /dev/vg_hana_log_<HANA SID>/hana_log
      sudo mkfs.xfs /dev/vg_hana_shared_<HANA SID>/hana_shared
      
    5. Bağlama dizinlerini oluşturun ve tüm mantıksal birimlerin evrensel benzersiz tanımlayıcısını (UUID) kopyalayın:

      sudo mkdir -p /hana/data/<HANA SID>
      sudo mkdir -p /hana/log/<HANA SID>
      sudo mkdir -p /hana/shared/<HANA SID>
      # Write down the ID of /dev/vg_hana_data_<HANA SID>/hana_data, /dev/vg_hana_log_<HANA SID>/hana_log, and /dev/vg_hana_shared_<HANA SID>/hana_shared
      sudo blkid
      
    6. Üç mantıksal birim için girdi oluşturmak fstab için /etc/fstab dosyasını düzenleyin:

      sudo vi /etc/fstab
      
    7. /etc/fstab dosyasına aşağıdaki satırları ekleyin:

      /dev/disk/by-uuid/<UUID of /dev/mapper/vg_hana_data_<HANA SID>-hana_data> /hana/data/<HANA SID> xfs  defaults,nofail  0  2
      /dev/disk/by-uuid/<UUID of /dev/mapper/vg_hana_log_<HANA SID>-hana_log> /hana/log/<HANA SID> xfs  defaults,nofail  0  2
      /dev/disk/by-uuid/<UUID of /dev/mapper/vg_hana_shared_<HANA SID>-hana_shared> /hana/shared/<HANA SID> xfs  defaults,nofail  0  2
      
    8. Yeni birimleri bağlayın:

      sudo mount -a
      
  2. [A] Düz diskleri kullanarak disk düzenini ayarlayın.

    Tanıtım sistemleri için HANA verilerinizi ve günlük dosyalarınızı tek bir diske yerleştirebilirsiniz.

    1. /dev/disk/azure/scsi1/lun0 üzerinde bir bölüm oluşturun ve XFS kullanarak bu bölümü biçimlendirin:

      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
      
    2. Bu satırı /etc/fstab dosyasına ekleyin:

      /dev/disk/by-uuid/<UUID> /hana xfs  defaults,nofail  0  2
      
    3. Hedef dizini oluşturun ve diski bağlayın:

      sudo mkdir /hana
      sudo mount -a
      
  3. [A] Tüm konaklar için ana bilgisayar adı çözümlemesini ayarlayın.

    Bir DNS sunucusu kullanabilir veya tüm düğümlerde /etc/hosts dosyasını değiştirebilirsiniz. Bu örnekte /etc/hosts dosyasının nasıl kullanılacağı gösterilmektedir. Aşağıdaki komutlarda IP adreslerini ve ana bilgisayar adlarını değiştirin.

    1. /etc/hosts dosyasını düzenleyin:

      sudo vi /etc/hosts
      
    2. /etc/hosts dosyasına aşağıdaki satırları ekleyin. IP adreslerini ve ana bilgisayar adlarını ortamınızla eşleşecek şekilde değiştirin.

      10.0.0.5 hn1-db-0
      10.0.0.6 hn1-db-1
      
  4. [A] SAP HANA yüksek kullanılabilirlik paketlerini yükleyin:

    • Yüksek kullanılabilirlik paketlerini yüklemek için aşağıdaki komutu çalıştırın:

      sudo zypper install SAPHanaSR
      

    SAP HANA sistem çoğaltmasını yüklemek için SAP HANA SR Performansı için İyileştirilmiş Senaryo kılavuzunun 4. bölümünü gözden geçirin.

  5. [A] HANA yükleme medyasından hdblcm programını çalıştırın.

    İstendiğinde aşağıdaki değerleri girin:

    1. Yükleme'yi seçin: 1 girin.
    2. Yükleme için ek bileşenler seçin: 1 girin.
    3. Yükleme yolunu girin: /hana/shared girin ve Enter tuşuna basın.
    4. Yerel ana bilgisayar adını girin: .. girin ve Enter'ı seçin.
    5. Sisteme başka konaklar eklemek istiyor musunuz? (y/n): n girin ve Enter tuşuna basın.
    6. SAP HANA sistem kimliğini girin: HANA SID'nizi girin.
    7. Örnek numarasını girin: HANA örnek numarasını girin. Azure şablonunu kullanarak dağıttıysanız veya bu makalenin el ile dağıtım bölümünü izlediyseniz 03 girin.
    8. Veritabanı modunu seçin / Dizini girin: 1 girin veya seçin ve Ardından Enter'ı seçin.
    9. Sistem kullanımını seçin / Dizini girin: Sistem kullanım değerini seçin 4.
    10. Veri birimlerinin konumunu girin: /hana/data/<HANA SID> girin ve Enter'ı seçin.
    11. Günlük birimlerinin konumunu girin: /hana/log/<HANA SID> girin ve Enter'ı seçin.
    12. En fazla bellek ayırmayı kısıtla? : n girin ve Enter tuşuna basın.
    13. Konağın sertifika ana bilgisayar adını girin: ... girin ve Enter tuşuna basın.
    14. SAP konak aracısı kullanıcı (sapadm) parolasını girin: Konak aracısı kullanıcı parolasını girin ve enter tuşuna basın.
    15. SAP konak aracısı kullanıcı (sapadm) parolasını onaylayın: Konak aracısı kullanıcı parolasını yeniden girin ve enter tuşuna basın.
    16. Sistem yöneticisi (hdbadm) parolasını girin: Sistem yöneticisi parolasını girin ve enter tuşuna basın.
    17. Sistem yöneticisi (hdbadm) parolasını onaylayın: Sistem yöneticisi parolasını yeniden girin ve enter tuşuna basın.
    18. Sistem yöneticisi giriş dizinini girin: /usr/sap/<HANA SID>/home girin ve Enter'ı seçin.
    19. Sistem yöneticisi oturum açma kabuğunu girin: /bin/sh girin ve Enter tuşuna basın.
    20. Sistem yöneticisi kullanıcı kimliğini girin: 1001 girin ve Enter tuşuna basın.
    21. Kullanıcı grubunun kimliğini girin (sapsys): 79 girin ve Enter tuşuna basın.
    22. Veritabanı kullanıcı (SYSTEM) parolasını girin: Veritabanı kullanıcı parolasını girin ve enter tuşuna basın.
    23. Veritabanı kullanıcı (SYSTEM) parolasını onaylayın: Veritabanı kullanıcı parolasını yeniden girin ve enter tuşuna basın.
    24. Makine yeniden başlatıldıktan sonra sistem yeniden başlatılasın mı? (y/n): n girin ve Enter tuşuna basın.
    25. Devam etmek istiyor musunuz? (y/n): Özeti doğrulayın. Devam etmek için y girin.
  6. [A] SAP konak aracısını yükseltin.

    SAP Yazılım Merkezi'nden en son SAP konak aracısı arşivini indirin. Aracıyı yükseltmek için aşağıdaki komutu çalıştırın. Arşiv yolunu indirdiğiniz dosyaya işaret etmek için değiştirin.

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

SAP HANA 2.0 sistem çoğaltmasını yapılandırma

Bu bölümdeki adımlar aşağıdaki ön ekleri kullanır:

  • [A]: Adım tüm düğümler için geçerlidir.
  • [1]: Adım yalnızca düğüm 1 için geçerlidir.
  • [2]: Adım yalnızca Pacemaker kümesinin 2. düğümü için geçerlidir.

değerini SAP HANA yüklemenizin değerleriyle değiştirin <placeholders> .

  1. [1] Kiracı veritabanını oluşturun.

    SAP HANA 2.0 veya SAP HANA MDC kullanıyorsanız SAP NetWeaver sisteminiz için bir kiracı veritabanı oluşturun.

    Aşağıdaki komutu HANA SID>adm olarak <çalıştırın:

    hdbsql -u SYSTEM -p "<password>" -i <instance number> -d SYSTEMDB 'CREATE DATABASE <SAP SID> SYSTEM USER PASSWORD "<password>"'
    
  2. [1] İlk düğümde sistem çoğaltmasını yapılandırın:

    İlk olarak veritabanlarını HANA SID>adı olarak <yedekleyin:

    hdbsql -d SYSTEMDB -u SYSTEM -p "<password>" -i <instance number> "BACKUP DATA USING FILE ('<name of initial backup file for SYS>')"
    hdbsql -d <HANA SID> -u SYSTEM -p "<password>" -i <instance number> "BACKUP DATA USING FILE ('<name of initial backup file for HANA SID>')"
    hdbsql -d <SAP SID> -u SYSTEM -p "<password>" -i <instance number> "BACKUP DATA USING FILE ('<name of initial backup file for SAP SID>')"
    

    Ardından, sistem ortak anahtar altyapısı (PKI) dosyalarını ikincil siteye kopyalayın:

    scp /usr/sap/<HANA SID>/SYS/global/security/rsecssfs/data/SSFS_<HANA SID>.DAT   hn1-db-1:/usr/sap/<HANA SID>/SYS/global/security/rsecssfs/data/
    scp /usr/sap/<HANA SID>/SYS/global/security/rsecssfs/key/SSFS_<HANA SID>.KEY  hn1-db-1:/usr/sap/<HANA SID>/SYS/global/security/rsecssfs/key/
    

    Birincil siteyi oluşturun:

    hdbnsutil -sr_enable --name=<site 1>
    
  3. [2] İkinci düğümde sistem çoğaltmasını yapılandırın:

    Sistem çoğaltmasını başlatmak için ikinci düğümü kaydedin.

    Aşağıdaki komutu HANA SID>adm olarak <çalıştırın:

    sapcontrol -nr <instance number> -function StopWait 600 10
    hdbnsutil -sr_register --remoteHost=hn1-db-0 --remoteInstance=<instance number> --replicationMode=sync --name=<site 2> 
    

SAP HANA 1.0 sistem çoğaltmasını yapılandırma

Bu bölümdeki adımlar aşağıdaki ön ekleri kullanır:

  • [A]: Adım tüm düğümler için geçerlidir.
  • [1]: Adım yalnızca düğüm 1 için geçerlidir.
  • [2]: Adım yalnızca Pacemaker kümesinin 2. düğümü için geçerlidir.

değerini SAP HANA yüklemenizin değerleriyle değiştirin <placeholders> .

  1. [1] Gerekli kullanıcıları oluşturun.

    Aşağıdaki komutu kök olarak çalıştırın:

    PATH="$PATH:/usr/sap/<HANA SID>/HDB<instance number>/exe"
    hdbsql -u system -i <instance number> 'CREATE USER hdbhasync PASSWORD "<password>"'
    hdbsql -u system -i <instance number> 'GRANT DATA ADMIN TO hdbhasync'
    hdbsql -u system -i <instance number> 'ALTER USER hdbhasync DISABLE PASSWORD LIFETIME'
    
  2. [A] Anahtar deposu girdisini oluşturun.

    Yeni bir anahtar deposu girdisi oluşturmak için aşağıdaki komutu kök olarak çalıştırın:

    PATH="$PATH:/usr/sap/<HANA SID>/HDB<instance number>/exe"
    hdbuserstore SET hdbhaloc localhost:3<instance number>15 hdbhasync <password>
    
  3. [1] Veritabanını yedekleyin.

    Veritabanlarını kök olarak yedekleyin:

    PATH="$PATH:/usr/sap/<HANA SID>/HDB<instance number>/exe"
    hdbsql -d SYSTEMDB -u system -i <instance number> "BACKUP DATA USING FILE ('<name of initial backup file>')"
    

    Çok kiracılı bir yükleme kullanıyorsanız kiracı veritabanını da yedekleyin:

    hdbsql -d <HANA SID> -u system -i <instance number> "BACKUP DATA USING FILE ('<name of initial backup file>')"
    
  4. [1] İlk düğümde sistem çoğaltmasını yapılandırın.

    Birincil siteyi HANA SID>adm olarak <oluşturun:

    su - hdbadm
    hdbnsutil -sr_enable --name=<site 1>
    
  5. [2] İkincil düğümde sistem çoğaltmasını yapılandırın.

    İkincil siteyi HANA SID>adm olarak <kaydedin:

    sapcontrol -nr <instance number> -function StopWait 600 10
    hdbnsutil -sr_register --remoteHost=<HANA SID>-db-<database 1> --remoteInstance=<instance number> --replicationMode=sync --name=<site 2> 
    

HANA kancalarını SAPHanaSR ve susChkSrv uygulama

Bu önemli adımda kümeyle tümleştirmeyi iyileştirecek ve bir küme yük devretmesi gerektiğinde algılamayı geliştirebilirsiniz. SAPHanaSR Python kancasını yapılandırmanızı kesinlikle öneririz. HANA 2.0 SP5 ve üzeri için SAPHanaSR kancasını ve susChkSrv kancasını uygulamanızı öneririz.

susChkSrv kancası, ana SAPHanaSR HA sağlayıcısının işlevselliğini genişletir. HANA işlemi hdbindexserver kilitlendiğinde hareket eder. Tek bir işlem kilitlenirse, HANA genellikle işlemi yeniden başlatmayı dener. Dizin sunucusu işleminin yeniden başlatılması uzun sürebilir ve bu süre boyunca HANA veritabanı yanıt vermiyor olabilir.

susChkSrv uygulandığında, anında ve yapılandırılabilir bir eylem yürütülür. Eylem, hdbindexserver işleminin aynı düğümde yeniden başlatılmasını beklemek yerine yapılandırılan zaman aşımı döneminde yük devretmeyi tetikler.

  1. [A] HANA sistem çoğaltma kancasını yükleyin. Kanca her iki HANA veritabanı düğümüne de yüklenmelidir.

    İpucu

    SAPHanaSR Python kancası yalnızca HANA 2.0 için uygulanabilir. SAPHanaSR paketi en az 0.153 sürümü olmalıdır.

    susChkSrv Python kancası SAP HANA 2.0 SP5 gerektirir ve SAPHanaSR sürümü 0.161.1_BF veya üzeri yüklenmelidir.

    1. Her iki düğümde de HANA'yı durdurun.

      Aşağıdaki kodu sapsid>adm olarak <çalıştırın:

      sapcontrol -nr <instance number> -function StopSystem
      
    2. Her küme düğümünde global.ini ayarlayın. susChkSrv kancasının gereksinimleri karşılanmazsa, aşağıdaki parametrelerden bloğun tamamını [ha_dr_provider_suschksrv] kaldırın.

      parametresini kullanarak action_on_lost davranışını susChkSrv ayarlayabilirsiniz. Geçerli değerler: [ ignorekillfence | stop | | ].

      # add to global.ini
      [ha_dr_provider_SAPHanaSR]
      provider = SAPHanaSR
      path = /usr/share/SAPHanaSR
      execution_order = 1
      
      [ha_dr_provider_suschksrv]
      provider = susChkSrv
      path = /usr/share/SAPHanaSR
      execution_order = 3
      action_on_lost = fence
      
      [trace]
      ha_dr_saphanasr = info
      

      Standart /usr/share/SAPHanaSR konumuna işaret ederseniz Python kanca kodu işletim sistemi güncelleştirmeleri veya paket güncelleştirmeleri aracılığıyla otomatik olarak güncelleştirilir. HANA, bir sonraki yeniden başlatmada kanca kodu güncelleştirmelerini kullanır. /hana/shared/myHooks gibi isteğe bağlı bir kendi yoluyla, kullandığınız kanca sürümünden işletim sistemi güncelleştirmelerini ayrıştırabilirsiniz.

  2. [A] Küme, SAP SID>adm için <her küme düğümünde sudoers yapılandırması gerektirir. Bu örnekte, bu yeni bir dosya oluşturularak elde edilir.

    Aşağıdaki komutu kök olarak çalıştırın:

     cat << EOF > /etc/sudoers.d/20-saphana
     # Needed for SAPHanaSR and susChkSrv Python hooks
     hn1adm ALL=(ALL) NOPASSWD: /usr/sbin/crm_attribute -n hana_hn1_site_srHook_*
     hn1adm ALL=(ALL) NOPASSWD: /usr/sbin/SAPHanaSR-hookHelper --sid=HN1 --case=fenceMe
     EOF
    

    SAP HANA sistem çoğaltma kancasını uygulama hakkında ayrıntılı bilgi için bkz . HANA HA/DR sağlayıcılarını ayarlama.

  3. [A] Sap HANA'yı her iki düğümde de başlatın.

    Aşağıdaki komutu SAP SID>adm olarak <çalıştırın:

     sapcontrol -nr <instance number> -function StartSystem 
    
  4. [1] Kanca yüklemesini doğrulayın.

    Aşağıdaki komutu etkin HANA sistem çoğaltma sitesinde SAP SID>adm olarak <çalıştırın:

     cdtrace
     awk '/ha_dr_SAPHanaSR.*crm_attribute/ \
     { printf "%s %s %s %s\n",$2,$3,$5,$16 }' nameserver_*
     # Example output
     # 2021-04-08 22:18:15.877583 ha_dr_SAPHanaSR SFAIL
     # 2021-04-08 22:18:46.531564 ha_dr_SAPHanaSR SFAIL
     # 2021-04-08 22:21:26.816573 ha_dr_SAPHanaSR SOK
    

    susChkSrv kanca yüklemesini doğrulayın.

    Aşağıdaki komutu tüm HANA VM'lerinde SAP SID>adm olarak <çalıştırın:

     cdtrace
     egrep '(LOST:|STOP:|START:|DOWN:|init|load|fail)' nameserver_suschksrv.trc
     # Example output
     # 2022-11-03 18:06:21.116728  susChkSrv.init() version 0.7.7, parameter info: action_on_lost=fence stop_timeout=20 kill_signal=9
     # 2022-11-03 18:06:27.613588  START: indexserver event looks like graceful tenant start
     # 2022-11-03 18:07:56.143766  START: indexserver event looks like graceful tenant start (indexserver started)
    

SAP HANA küme kaynakları oluşturma

İlk olarak HANA topolojisini oluşturun.

Pacemaker küme düğümlerinden birinde aşağıdaki komutları çalıştırın:

sudo crm configure property maintenance-mode=true

# Replace <placeholders> with your instance number and HANA system ID

sudo crm configure primitive rsc_SAPHanaTopology_<HANA SID>_HDB<instance number> ocf:suse:SAPHanaTopology \
  operations \$id="rsc_sap2_<HANA SID>_HDB<instance number>-operations" \
  op monitor interval="10" timeout="600" \
  op start interval="0" timeout="600" \
  op stop interval="0" timeout="300" \
  params SID="<HANA SID>" InstanceNumber="<instance number>"

sudo crm configure clone cln_SAPHanaTopology_<HANA SID>_HDB<instance number> rsc_SAPHanaTopology_<HANA SID>_HDB<instance number> \
  meta clone-node-max="1" target-role="Started" interleave="true"

Ardından HANA kaynaklarını oluşturun:

Önemli

Son testlerde, netcat kapsam nedeniyle ve yalnızca bir bağlantıyı işleme sınırlaması nedeniyle isteklere yanıt vermeyi durduruyor. Kaynak Azure netcat Load Balancer isteklerini dinlemeyi durdurur ve kayan IP kullanılamaz duruma gelir.

Mevcut Pacemaker kümeleri için daha önce ile socatdeğiştirmeniz netcat önerilir. Şu anda, bir paketinin azure-lb parçası olan kaynak aracısını resource-agentskullanmanızı öneririz. Aşağıdaki paket sürümleri gereklidir:

  • SLES 12 SP4/SP5 için, sürüm en az resource-agents-4.3.018.a7fb5035-3.30.1 olmalıdır.
  • SLES 15/15 SP1 için, sürüm en az resource-agents-4.3.0184.6ee15eb2-4.13.1 olmalıdır.

Bu değişikliği yapmak için kısa bir kapalı kalma süresi gerekir.

Mevcut Pacemaker kümelerinde yapılandırmanız Azure Load Balancer Algılama Sağlamlaştırma'da açıklandığı gibi kullanılacak socat şekilde zaten değiştirildiyse, kaynak aracısına azure-lb hemen geçiş yapmanız gerekmez.

Not

Bu makale, Microsoft'un artık kullanmadığını ifade eden başvurular içerir. Bu terimler yazılımdan kaldırıldığında, bunları bu makaleden kaldıracağız.

# Replace <placeholders> with your instance number, HANA system ID, and the front-end IP address of the Azure load balancer. 

sudo crm configure primitive rsc_SAPHana_<HANA SID>_HDB<instance number> ocf:suse:SAPHana \
  operations \$id="rsc_sap_<HANA SID>_HDB<instance number>-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="<HANA SID>" InstanceNumber="<instance number>" PREFER_SITE_TAKEOVER="true" \
  DUPLICATE_PRIMARY_TIMEOUT="7200" AUTOMATED_REGISTER="false"

sudo crm configure ms msl_SAPHana_<HANA SID>_HDB<instance number> rsc_SAPHana_<HANA SID>_HDB<instance number> \
  meta notify="true" clone-max="2" clone-node-max="1" \
  target-role="Started" interleave="true"

sudo crm resource meta msl_SAPHana_<HANA SID>_HDB<instance number> set priority 100

sudo crm configure primitive rsc_ip_<HANA SID>_HDB<instance number> ocf:heartbeat:IPaddr2 \
  meta target-role="Started" \
  operations \$id="rsc_ip_<HANA SID>_HDB<instance number>-operations" \
  op monitor interval="10s" timeout="20s" \
  params ip="<front-end IP address>"

sudo crm configure primitive rsc_nc_<HANA SID>_HDB<instance number> azure-lb port=625<instance number> \
  op monitor timeout=20s interval=10 \
  meta resource-stickiness=0

sudo crm configure group g_ip_<HANA SID>_HDB<instance number> rsc_ip_<HANA SID>_HDB<instance number> rsc_nc_<HANA SID>_HDB<instance number>

sudo crm configure colocation col_saphana_ip_<HANA SID>_HDB<instance number> 4000: g_ip_<HANA SID>_HDB<instance number>:Started \
  msl_SAPHana_<HANA SID>_HDB<instance number>:Master  

sudo crm configure order ord_SAPHana_<HANA SID>_HDB<instance number> Optional: cln_SAPHanaTopology_<HANA SID>_HDB<instance number> \
  msl_SAPHana_<HANA SID>_HDB<instance number>

# Clean up the HANA resources. The HANA resources might have failed because of a known issue.
sudo crm resource cleanup rsc_SAPHana_<HANA SID>_HDB<instance number>

sudo crm configure property priority-fencing-delay=30

sudo crm configure property maintenance-mode=false
sudo crm configure rsc_defaults resource-stickiness=1000
sudo crm configure rsc_defaults migration-threshold=5000

Önemli

Başarısız bir birincil örneğin otomatik olarak ikincil olarak kaydedilmesini önlemek için yalnızca kapsamlı yük devretme testlerini tamamlarken olarak ayarlamanızı AUTOMATED_REGISTERfalse öneririz. Yük devretme testleri başarıyla tamamlandığında, devralma işleminden sonra sistem çoğaltmasının otomatik olarak sürdürülmesi için trueolarak ayarlayınAUTOMATED_REGISTER.

Küme durumunun OK ve tüm kaynakların başlatıldığından emin olun. Kaynakların hangi düğümde çalıştığı önemli değildir.

sudo crm_mon -r

# Online: [ hn1-db-0 hn1-db-1 ]
#
# Full list of resources:
#
# stonith-sbd     (stonith:external/sbd): Started hn1-db-0
# 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:azure-lb):      Started hn1-db-0

Pacemaker kümesinde HANA etkin/okuma özellikli sistem çoğaltmasını yapılandırma

SAP HANA 2.0 SPS 01 ve sonraki sürümlerinde SAP, SAP HANA sistem çoğaltması için etkin/okuma özellikli bir kuruluma izin verir. Bu senaryoda, SAP HANA sistem çoğaltmasının ikincil sistemleri yoğun okuma kullanan iş yükleri için etkin bir şekilde kullanılabilir.

Bir kümede bu kurulumu desteklemek için, istemcilerin ikincil okuma özellikli SAP HANA veritabanına erişebilmesi için ikinci bir sanal IP adresi gerekir. İkincil çoğaltma sitesine bir devralma işleminden sonra hala erişilebildiğinden emin olmak için kümenin sanal IP adresini SAPHana kaynağının ikinciliyle birlikte taşıması gerekir.

Bu bölümde, ikinci bir sanal IP adresi kullanan bir SUSE yüksek kullanılabilirlik kümesinde HANA etkin/okuma özellikli sistem çoğaltmasını yönetmek için gereken ek adımlar açıklanmaktadır.

Devam etmeden önce, önceki bölümlerde açıklandığı gibi SAP HANA veritabanını yöneten SUSE yüksek kullanılabilirlik kümesini tam olarak yapılandırdığınızdan emin olun.

Okuma özellikli ikincil IP ile SAP HANA yüksek kullanılabilirlik örneğini gösteren diyagram.

Etkin/okuma özellikli sistem çoğaltması için yük dengeleyiciyi ayarlama

İkinci sanal IP'yi sağlamaya yönelik ek adımlarla devam etmek için, Azure Portal aracılığıyla Linux VM'lerini el ile dağıtma bölümünde açıklandığı gibi Azure Load Balancer'ı yapılandırdığınızdan emin olun.

Standart yük dengeleyici için, daha önce oluşturduğunuz yük dengeleyici üzerinde bu ek adımları tamamlayın.

  1. İkinci bir ön uç IP havuzu oluşturun:
    1. Yük dengeleyiciyi açın, ön uç IP havuzunu seçin ve Ekle'yi seçin.
    2. İkinci ön uç IP havuzunun adını girin (örneğin, hana-secondaryIP).
    3. Atama'yıStatik olarak ayarlayın ve IP adresini girin (örneğin, 10.0.0.14).
    4. Tamam'ı seçin.
    5. Yeni ön uç IP havuzu oluşturulduktan sonra ön uç IP adresini not edin.
  2. Sistem durumu araştırması oluşturma:
    1. Yük dengeleyicide sistem durumu yoklamaları'nı ve ardından Ekle'yi seçin.
    2. Yeni sistem durumu yoklamasının adını girin (örneğin, hana-secondaryhp).
    3. Protokol ve bağlantı noktası 626 örnek numarası> olarak TCP'yi< seçin. Aralık değerinin 5, İyi durumda olmayan eşik değerinin ise 2 olarak ayarlanmasını sağlayın.
    4. Tamam'ı seçin.
  3. Yük dengeleme kurallarını oluşturun:
    1. Yük dengeleyicide yük dengeleme kuralları'nı ve ardından Ekle'yi seçin.
    2. Yeni yük dengeleyici kuralının adını girin (örneğin, hana-secondarylb).
    3. Ön uç IP adresini, arka uç havuzunu ve daha önce oluşturduğunuz sistem durumu araştırmasını (örneğin, hana-secondaryIP, hana-backend ve hana-secondaryhp) seçin.
    4. HA Bağlantı Noktaları'nı seçin.
    5. Boşta kalma zaman aşımını 30 dakikaya yükseltin.
    6. Kayan IP'yi etkinleştirdiğinizden emin olun.
    7. Tamam'ı seçin.

HANA etkin/okuma özellikli sistem çoğaltmasını ayarlama

HANA sistem çoğaltmasını yapılandırma adımları SAP HANA 2.0 sistem çoğaltmasını yapılandırma bölümünde açıklanmıştır. Okuma özellikli bir ikincil senaryo dağıtıyorsanız, ikinci düğümde sistem çoğaltmasını ayarlarken HANA SID>adm olarak <aşağıdaki komutu çalıştırın:

sapcontrol -nr <instance number> -function StopWait 600 10 

hdbnsutil -sr_register --remoteHost=hn1-db-0 --remoteInstance=<instance number> --replicationMode=sync --name=<site 2> --operationMode=logreplay_readaccess 

İkincil sanal IP adresi kaynağı ekleme

Aşağıdaki komutları kullanarak ikinci sanal IP'yi ve uygun birlikte bulundurma kısıtlamasını ayarlayabilirsiniz:

crm configure property maintenance-mode=true

crm configure primitive rsc_secip_<HANA SID>_HDB<instance number> ocf:heartbeat:IPaddr2 \
 meta target-role="Started" \
 operations \$id="rsc_secip_<HANA SID>_HDB<instance number>-operations" \
 op monitor interval="10s" timeout="20s" \
 params ip="<secondary IP address>"

crm configure primitive rsc_secnc_<HANA SID>_HDB<instance number> azure-lb port=626<instance number> \
 op monitor timeout=20s interval=10 \
 meta resource-stickiness=0

crm configure group g_secip_<HANA SID>_HDB<instance number> rsc_secip_<HANA SID>_HDB<instance number> rsc_secnc_<HANA SID>_HDB<instance number>

crm configure colocation col_saphana_secip_<HANA SID>_HDB<instance number> 4000: g_secip_<HANA SID>_HDB<instance number>:Started \
 msl_SAPHana_<HANA SID>_HDB<instance number>:Slave 

crm configure property maintenance-mode=false

Küme durumunun OK ve tüm kaynakların başlatıldığından emin olun. İkinci sanal IP, SAPHana ikincil kaynağıyla birlikte ikincil sitede çalışır.

sudo crm_mon -r

# Online: [ hn1-db-0 hn1-db-1 ]
#
# Full list of resources:
#
# stonith-sbd     (stonith:external/sbd): Started hn1-db-0
# 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:azure-lb):      Started hn1-db-0
# Resource Group: g_secip_HN1_HDB03:
#     rsc_secip_HN1_HDB03       (ocf::heartbeat:IPaddr2):        Started hn1-db-1
#     rsc_secnc_HN1_HDB03       (ocf::heartbeat:azure-lb):       Started hn1-db-1

Sonraki bölümde, yürütülecek tipik yük devretme testleri kümesi açıklanmaktadır.

Okuma özellikli ikincil ile yapılandırılmış bir HANA kümesini test ederken dikkat edilmesi gerekenler:

  • Küme kaynağını öğesine hn1-db-1geçirdiğinizdeSAPHana_<HANA SID>_HDB<instance number>, ikinci sanal IP adresine hn1-db-0taşınır. Yapılandırdıysanız AUTOMATED_REGISTER="false" ve HANA sistem çoğaltması otomatik olarak kaydedilmediyse, sunucu kullanılabilir ve küme hizmetleri çevrimiçi olduğundan ikinci sanal IP üzerinde hn1-db-0 çalışır.

  • Sunucu kilitlenmesini test ettiğinizde, ikinci sanal IP kaynakları (rsc_secip_<HANA SID>_HDB<instance number>) ve Azure yük dengeleyici bağlantı noktası kaynağı (rsc_secnc_<HANA SID>_HDB<instance number>) birincil sunucuda birincil sanal IP kaynaklarıyla birlikte çalışır. İkincil sunucu devre dışıyken, okuma özellikli bir HANA veritabanına bağlı uygulamalar birincil HANA veritabanına bağlanır. İkincil sunucu kullanılamaz durumdayken okuma özellikli HANA veritabanına bağlı uygulamaların erişilemez olmasını istemediğiniz için bu davranış beklenir.

  • İkincil sunucu kullanılabilir olduğunda ve küme hizmetleri çevrimiçi olduğunda, HANA sistem çoğaltması ikincil olarak kaydedilmemiş olsa bile ikinci sanal IP ve bağlantı noktası kaynakları otomatik olarak ikincil sunucuya taşınır. Bu sunucuda küme hizmetlerini başlatmadan önce ikincil HANA veritabanını okuma etkin olarak kaydettiğinizden emin olun. parametresini AUTOMATED_REGISTER="true"ayarlayarak HANA örnek kümesi kaynağını ikincil kaydı otomatik olarak kaydedecek şekilde yapılandırabilirsiniz.

  • Yük devretme ve geri dönüş sırasında, HANA veritabanına bağlanmak için ikinci sanal IP'yi kullanan uygulamalar için mevcut bağlantılar kesintiye uğrayabilir.

Küme kurulumunu test edin

Bu bölümde, kurulumunuzu nasıl test edebilirsiniz açıklanmaktadır. Her test, kök olarak oturum açtığınızı ve SAP HANA yöneticisinin VM'de hn1-db-0 çalıştığını varsayar.

Geçişi test edin

Teste başlamadan önce Pacemaker'ın başarısız bir eylemi olmadığından (çalıştır crm_mon -r), beklenmeyen konum kısıtlamaları olmadığından (örneğin, geçiş testinin artıkları) ve HANA'nın eşitleme durumunda olduğundan emin olun( örneğin komutunu çalıştırarak SAPHanaSR-showAttr).

hn1-db-0:~ # SAPHanaSR-showAttr
Sites    srHook
----------------
SITE2    SOK
Global cib-time
--------------------------------
global Mon Aug 13 11:26:04 2018
Hosts    clone_state lpa_hn1_lpt node_state op_mode   remoteHost    roles                            score site  srmode sync_state version                vhost
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
hn1-db-0 PROMOTED    1534159564  online     logreplay nws-hana-vm-1 4:P:master1:master:worker:master 150   SITE1 sync   PRIM       2.00.030.00.1522209842 nws-hana-vm-0
hn1-db-1 DEMOTED     30          online     logreplay nws-hana-vm-0 4:S:master1:master:worker:master 100   SITE2 sync   SOK        2.00.030.00.1522209842 nws-hana-vm-1

Aşağıdaki komutu çalıştırarak SAP HANA ana düğümünü geçirebilirsiniz:

crm resource move msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-1 force

Küme, SAP HANA ana düğümünü ve sanal IP adresini içeren grubu öğesine hn1-db-1geçirir.

Geçiş tamamlandığında çıkış şu örneğe crm_mon -r benzer:

Online: [ hn1-db-0 hn1-db-1 ]

Full list of resources:
stonith-sbd     (stonith:external/sbd): 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-1 ]
     Stopped: [ hn1-db-0 ]
 Resource Group: g_ip_HN1_HDB03
     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-1
     rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-1
Failed Actions:
* rsc_SAPHana_HN1_HDB03_start_0 on hn1-db-0 'not running' (7): call=84, status=complete, exitreason='none',
    last-rc-change='Mon Aug 13 11:31:37 2018', queued=0ms, exec=2095ms

ile AUTOMATED_REGISTER="false", küme başarısız HANA veritabanını yeniden başlatmaz veya üzerindeki hn1-db-0yeni birincil veritabanına kaydetmez. Bu durumda, şu komutu çalıştırarak HANA örneğini ikincil olarak yapılandırın:

su - <hana sid>adm

# Stop the HANA instance, just in case it is running
hn1adm@hn1-db-0:/usr/sap/HN1/HDB03> sapcontrol -nr <instance number> -function StopWait 600 10
hn1adm@hn1-db-0:/usr/sap/HN1/HDB03> hdbnsutil -sr_register --remoteHost=hn1-db-1 --remoteInstance=<instance number> --replicationMode=sync --name=<site 1>

Geçiş, yeniden silinmesi gereken konum kısıtlamaları oluşturur:

# Switch back to root and clean up the failed state
exit
hn1-db-0:~ # crm resource clear msl_SAPHana_<HANA SID>_HDB<instance number>

İkincil düğüm kaynağının durumunu da temizlemeniz gerekir:

hn1-db-0:~ # crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-0

kullanarak crm_mon -rHANA kaynağının durumunu izleyin. ÜZERINDE HANA başlatıldığında hn1-db-0çıkış şu örneğe benzer:

Online: [ hn1-db-0 hn1-db-1 ]

Full list of resources:
stonith-sbd     (stonith:external/sbd): 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-1 ]
     Slaves: [ hn1-db-0 ]
 Resource Group: g_ip_HN1_HDB03
     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-1
     rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-1

Ağ iletişimini engelleme

Teste başlamadan önce kaynak durumu:

Online: [ hn1-db-0 hn1-db-1 ]

Full list of resources:
stonith-sbd     (stonith:external/sbd): 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-1 ]
     Slaves: [ hn1-db-0 ]
 Resource Group: g_ip_HN1_HDB03
     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-1
     rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-1

Düğümlerden birinde iletişimi engellemek için güvenlik duvarı kuralı yürütür.

# Execute iptable rule on hn1-db-1 (10.0.0.6) to block the incoming and outgoing traffic to hn1-db-0 (10.0.0.5)
iptables -A INPUT -s 10.0.0.5 -j DROP; iptables -A OUTPUT -d 10.0.0.5 -j DROP

Küme düğümleri birbiriyle iletişim kuramıyorsa, bölünmüş beyin senaryosu riski vardır. Böyle durumlarda küme düğümleri birbirlerini aynı anda çitle çevrilip çit yarışına neden olur.

Bir eskrim cihazı yapılandırılırken özelliğin yapılandırılması pcmk_delay_max önerilir. Bu nedenle, bölünmüş beyin senaryosu durumunda küme, her düğümdeki eskrim eylemine pcmk_delay_max değere kadar rastgele bir gecikmeye neden olur. Eskrim için en kısa gecikme süresine sahip düğüm seçilir.

Buna ek olarak, HANA yöneticisini çalıştıran düğümün önceliği aldığından ve bölünmüş bir beyin senaryosunda çit yarışını kazandığından emin olmak için küme yapılandırmasında özelliğin ayarlanması priority-fencing-delay önerilir. Küme, priority-fencing-delay özelliğini etkinleştirerek, özellikle HANA ana kaynağını barındıran düğümde eskrim eyleminde ek bir gecikmeye neden olabilir ve düğümün çit yarışını kazanmasına olanak tanır.

Güvenlik duvarı kuralını silmek için aşağıdaki komutu yürütebilirsiniz.

# If the iptables rule set on the server gets reset after a reboot, the rules will be cleared out. In case they have not been reset, please proceed to remove the iptables rule using the following command.
iptables -D INPUT -s 10.0.0.5 -j DROP; iptables -D OUTPUT -d 10.0.0.5 -j DROP

SBD eskrim test etme

Enquisitor işlemini sonlandırarak SBD kurulumunu test edebilirsiniz:

hn1-db-0:~ # ps aux | grep sbd
root       1912  0.0  0.0  85420 11740 ?        SL   12:25   0:00 sbd: inquisitor
root       1929  0.0  0.0  85456 11776 ?        SL   12:25   0:00 sbd: watcher: /dev/disk/by-id/scsi-360014056f268462316e4681b704a9f73 - slot: 0 - uuid: 7b862dba-e7f7-4800-92ed-f76a4e3978c8
root       1930  0.0  0.0  85456 11776 ?        SL   12:25   0:00 sbd: watcher: /dev/disk/by-id/scsi-360014059bc9ea4e4bac4b18808299aaf - slot: 0 - uuid: 5813ee04-b75c-482e-805e-3b1e22ba16cd
root       1931  0.0  0.0  85456 11776 ?        SL   12:25   0:00 sbd: watcher: /dev/disk/by-id/scsi-36001405b8dddd44eb3647908def6621c - slot: 0 - uuid: 986ed8f8-947d-4396-8aec-b933b75e904c
root       1932  0.0  0.0  90524 16656 ?        SL   12:25   0:00 sbd: watcher: Pacemaker
root       1933  0.0  0.0 102708 28260 ?        SL   12:25   0:00 sbd: watcher: Cluster
root      13877  0.0  0.0   9292  1572 pts/0    S+   12:27   0:00 grep sbd

hn1-db-0:~ # kill -9 1912

Küme <HANA SID>-db-<database 1> düğümü yeniden başlatılır. Pacemaker hizmeti yeniden başlatılamayabilir. Yeniden başlattığınızdan emin olun.

El ile yük devretmeyi test edin

Düğümde Pacemaker hizmetini durdurarak el ile yük devretmeyi hn1-db-0 test edebilirsiniz:

service pacemaker stop

Yük devretme işleminden sonra hizmeti yeniden başlatabilirsiniz. ayarlarsanız AUTOMATED_REGISTER="false", düğümdeki hn1-db-0 SAP HANA kaynağı ikincil olarak başlatılamaz.

Bu durumda, şu komutu çalıştırarak HANA örneğini ikincil olarak yapılandırın:

service pacemaker start
su - <hana sid>adm

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

# Switch back to root and clean up the failed state
exit
crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-0

SUSE testleri

Önemli

Seçtiğiniz işletim sisteminin, kullanmayı planladığınız belirli VM türlerinde SAP HANA için SAP sertifikalı olduğundan emin olun. SAP HANA sertifikalı VM türlerini ve bunların işletim sistemi sürümlerini SAP HANA Sertifikalı IaaS Platformları'nda arayabilirsiniz. Bu VM türü için SAP HANA tarafından desteklenen işletim sistemi sürümlerinin tam listesini almak için kullanmayı planladığınız VM türünün ayrıntılarına göz atdığınızdan emin olun.

Senaryonuza bağlı olarak SAP HANA SR Performans için İyileştirilmiş Senaryo kılavuzunda veya SAP HANA SR Maliyet için İyileştirilmiş Senaryo kılavuzunda listelenen tüm test çalışmalarını çalıştırın. SAP için en iyi yöntemler için SLES'de listelenen kılavuzları bulabilirsiniz.

Aşağıdaki testler SAP HANA SR Performans için İyileştirilmiş Senaryo SUSE Linux Enterprise Server for SAP Applications 12 SP1 kılavuzunun test açıklamalarının bir kopyasıdır. Güncel bir sürüm için kılavuzun kendisini de okuyun. Testi başlatmadan önce HER zaman HANA'nın eşitlenmiş olduğundan emin olun ve Pacemaker yapılandırmasının doğru olduğundan emin olun.

Aşağıdaki test açıklamalarında ve AUTOMATED_REGISTER="false"olduğunu varsayarızPREFER_SITE_TAKEOVER="true".

Not

Aşağıdaki testler sırayla çalıştırılacak şekilde tasarlanmıştır. Her test, önceki testin çıkış durumuna bağlıdır.

  1. Test 1: Düğüm 1'de birincil veritabanını durdurun.

    Teste başlamadan önce kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    

    Aşağıdaki komutları düğümde hn1-db-0 hana sid>adm olarak <çalıştırın:

    hn1adm@hn1-db-0:/usr/sap/HN1/HDB03> HDB stop
    

    Pacemaker durdurulan HANA örneğini algılar ve diğer düğüme yük devreder. Yük devretme tamamlandığında Pacemaker düğümü otomatik olarak HANA ikincil olarak kaydetmediğinden düğümdeki hn1-db-0 HANA örneği durdurulur.

    Düğümü ikincil olarak kaydetmek hn1-db-0 ve başarısız kaynağı temizlemek için aşağıdaki komutları çalıştırın:

    hn1adm@hn1-db-0:/usr/sap/HN1/HDB03> hdbnsutil -sr_register --remoteHost=hn1-db-1 --remoteInstance=<instance number> --replicationMode=sync --name=<site 1>
    
    # run as root
    hn1-db-0:~ # crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-0
    

    Test sonrasındaki kaynak durumu:

    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-1 ]
       Slaves: [ hn1-db-0 ]
    Resource Group: g_ip_HN1_HDB03
       rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-1
       rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-1
    
  2. Test 2: Düğüm 2'de birincil veritabanını durdurun.

    Teste başlamadan önce kaynak durumu:

    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-1 ]
       Slaves: [ hn1-db-0 ]
    Resource Group: g_ip_HN1_HDB03
       rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-1
       rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-1
    

    Aşağıdaki komutları düğümde hn1-db-1 hana sid>adm olarak <çalıştırın:

    hn1adm@hn1-db-1:/usr/sap/HN1/HDB01> HDB stop
    

    Pacemaker durdurulan HANA örneğini algılar ve diğer düğüme yük devreder. Yük devretme tamamlandığında Pacemaker düğümü otomatik olarak HANA ikincil olarak kaydetmediğinden düğümdeki hn1-db-1 HANA örneği durdurulur.

    Düğümü ikincil olarak kaydetmek hn1-db-1 ve başarısız kaynağı temizlemek için aşağıdaki komutları çalıştırın:

    hn1adm@hn1-db-1:/usr/sap/HN1/HDB03> hdbnsutil -sr_register --remoteHost=hn1-db-0 --remoteInstance=<instance number> --replicationMode=sync --name=<site 2>
    
    # run as root
    hn1-db-1:~ # crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-1
    

    Test sonrasındaki kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    
  3. Test 3: Düğüm 1'de birincil veritabanını kilitleyin.

    Teste başlamadan önce kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    

    Aşağıdaki komutları düğümde hn1-db-0 hana sid>adm olarak <çalıştırın:

    hn1adm@hn1-db-0:/usr/sap/HN1/HDB03> HDB kill-9
    

    Pacemaker, öldürülen HANA örneğini algılar ve diğer düğüme yük devreder. Yük devretme tamamlandığında Pacemaker düğümü otomatik olarak HANA ikincil olarak kaydetmediğinden düğümdeki hn1-db-0 HANA örneği durdurulur.

    Düğümü ikincil olarak kaydetmek hn1-db-0 ve başarısız kaynağı temizlemek için aşağıdaki komutları çalıştırın:

    hn1adm@hn1-db-0:/usr/sap/HN1/HDB03> hdbnsutil -sr_register --remoteHost=hn1-db-1 --remoteInstance=<instance number> --replicationMode=sync --name=<site 1>
    
    # run as root
    hn1-db-0:~ # crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-0
    

    Test sonrasındaki kaynak durumu:

    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-1 ]
       Slaves: [ hn1-db-0 ]
    Resource Group: g_ip_HN1_HDB03
       rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-1
       rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-1
    
  4. Test 4: Düğüm 2'de birincil veritabanını kilitleyin.

    Teste başlamadan önce kaynak durumu:

    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-1 ]
       Slaves: [ hn1-db-0 ]
    Resource Group: g_ip_HN1_HDB03
       rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-1
       rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-1
    

    Aşağıdaki komutları düğümde hn1-db-1 hana sid>adm olarak <çalıştırın:

    hn1adm@hn1-db-1:/usr/sap/HN1/HDB03> HDB kill-9
    

    Pacemaker, öldürülen HANA örneğini algılar ve diğer düğüme yük devreder. Yük devretme tamamlandığında Pacemaker düğümü otomatik olarak HANA ikincil olarak kaydetmediğinden düğümdeki hn1-db-1 HANA örneği durdurulur.

    Düğümü ikincil olarak kaydetmek hn1-db-1 ve başarısız kaynağı temizlemek için aşağıdaki komutları çalıştırın.

    hn1adm@hn1-db-1:/usr/sap/HN1/HDB03> hdbnsutil -sr_register --remoteHost=hn1-db-0 --remoteInstance=<instance number> --replicationMode=sync --name=<site 2>
    
    # run as root
    hn1-db-1:~ # crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-1
    

    Test sonrasındaki kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    
  5. Test 5: Birincil site düğümünü (düğüm 1) kilitleyin.

    Teste başlamadan önce kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    

    Düğümde kök hn1-db-0 olarak aşağıdaki komutları çalıştırın:

    hn1-db-0:~ #  echo 'b' > /proc/sysrq-trigger
    

    Pacemaker, küme düğümünü algılar ve düğümün çitlerini açar. Düğüm çevrelendiğinde Pacemaker, HANA örneğinin devralınma işlemini tetikler. Çitle çevrili düğüm yeniden başlatıldığında Pacemaker otomatik olarak başlatılmaz.

    Pacemaker'ı başlatmak, düğümün SBD iletilerini temizlemek, düğümü ikincil olarak kaydetmek hn1-db-0 ve başarısız kaynağı temizlemek için hn1-db-0 aşağıdaki komutları çalıştırın:

    # run as root
    # list the SBD device(s)
    hn1-db-0:~ # cat /etc/sysconfig/sbd | grep SBD_DEVICE=
    # SBD_DEVICE="/dev/disk/by-id/scsi-36001405772fe8401e6240c985857e116;/dev/disk/by-id/scsi-36001405034a84428af24ddd8c3a3e9e1;/dev/disk/by-id/scsi-36001405cdd5ac8d40e548449318510c3"
    
    hn1-db-0:~ # sbd -d /dev/disk/by-id/scsi-36001405772fe8401e6240c985857e116 -d /dev/disk/by-id/scsi-36001405034a84428af24ddd8c3a3e9e1 -d /dev/disk/by-id/scsi-36001405cdd5ac8d40e548449318510c3 message hn1-db-0 clear
    
    hn1-db-0:~ # systemctl start pacemaker
    
    # run as <hana sid>adm
    hn1adm@hn1-db-0:/usr/sap/HN1/HDB03> hdbnsutil -sr_register --remoteHost=hn1-db-1 --remoteInstance=<instance number> --replicationMode=sync --name=<site 1>
    
    # run as root
    hn1-db-0:~ # crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-0
    

    Test sonrasındaki kaynak durumu:

    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-1 ]
       Slaves: [ hn1-db-0 ]
    Resource Group: g_ip_HN1_HDB03
       rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-1
       rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-1
    
  6. Test 6: İkincil site düğümünü (düğüm 2) kilitleyin.

    Teste başlamadan önce kaynak durumu:

    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-1 ]
       Slaves: [ hn1-db-0 ]
    Resource Group: g_ip_HN1_HDB03
       rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-1
       rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-1
    

    Düğümde kök hn1-db-1 olarak aşağıdaki komutları çalıştırın:

    hn1-db-1:~ #  echo 'b' > /proc/sysrq-trigger
    

    Pacemaker, küme düğümünü algılar ve düğümün çitlerini açar. Düğüm çevrelendiğinde Pacemaker, HANA örneğinin devralınma işlemini tetikler. Çitle çevrili düğüm yeniden başlatıldığında Pacemaker otomatik olarak başlatılmaz.

    Pacemaker'ı başlatmak, düğümün SBD iletilerini temizlemek, düğümü ikincil olarak kaydetmek hn1-db-1 ve başarısız kaynağı temizlemek için hn1-db-1 aşağıdaki komutları çalıştırın:

    # run as root
    # list the SBD device(s)
    hn1-db-1:~ # cat /etc/sysconfig/sbd | grep SBD_DEVICE=
    # SBD_DEVICE="/dev/disk/by-id/scsi-36001405772fe8401e6240c985857e116;/dev/disk/by-id/scsi-36001405034a84428af24ddd8c3a3e9e1;/dev/disk/by-id/scsi-36001405cdd5ac8d40e548449318510c3"
    
    hn1-db-1:~ # sbd -d /dev/disk/by-id/scsi-36001405772fe8401e6240c985857e116 -d /dev/disk/by-id/scsi-36001405034a84428af24ddd8c3a3e9e1 -d /dev/disk/by-id/scsi-36001405cdd5ac8d40e548449318510c3 message hn1-db-1 clear
    
    hn1-db-1:~ # systemctl start pacemaker
    
    # run as <hana sid>adm
    hn1adm@hn1-db-1:/usr/sap/HN1/HDB03> hdbnsutil -sr_register --remoteHost=hn1-db-0 --remoteInstance=<instance number> --replicationMode=sync --name=<site 2>
    
    # run as root
    hn1-db-1:~ # crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-1
    

    Test sonrasındaki kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    </code></pre>
    
  7. Test 7: Düğüm 2'de ikincil veritabanını durdurun.

    Teste başlamadan önce kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    

    Aşağıdaki komutları düğümde hn1-db-1 hana sid>adm olarak <çalıştırın:

    hn1adm@hn1-db-1:/usr/sap/HN1/HDB03> HDB stop
    

    Pacemaker durdurulan HANA örneğini algılar ve kaynağı düğümde hn1-db-1 başarısız olarak işaretler. Pacemaker, HANA örneğini otomatik olarak yeniden başlatır.

    Başarısız durumu temizlemek için aşağıdaki komutu çalıştırın:

    # run as root
    hn1-db-1>:~ # crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-1
    

    Test sonrasındaki kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    
  8. Test 8: düğüm 2'de ikincil veritabanını kilitleyin.

    Teste başlamadan önce kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    

    Aşağıdaki komutları düğümde hn1-db-1 hana sid>adm olarak <çalıştırın:

    hn1adm@hn1-db-1:/usr/sap/HN1/HDB03> HDB kill-9
    

    Pacemaker, öldürülen HANA örneğini algılar ve kaynağı düğümde hn1-db-1 başarısız olarak işaretler. Başarısız durumu temizlemek için aşağıdaki komutu çalıştırın. Pacemaker daha sonra HANA örneğini otomatik olarak yeniden başlatır.

    # run as root
    hn1-db-1:~ # crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> HN1-db-1
    

    Test sonrasındaki kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    
  9. Test 9: İkincil HANA veritabanını çalıştıran ikincil site düğümünü (düğüm 2) kilitleyin.

    Teste başlamadan önce kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    

    Düğümde kök hn1-db-1 olarak aşağıdaki komutları çalıştırın:

    hn1-db-1:~ # echo b > /proc/sysrq-trigger
    

    Pacemaker, küme düğümünü algılar ve düğümü çevreler. Çitle çevrili düğüm yeniden başlatıldığında Pacemaker otomatik olarak başlatılmaz.

    Pacemaker'ı başlatmak, düğümün SBD iletilerini temizlemek ve başarısız kaynağı temizlemek için hn1-db-1 aşağıdaki komutları çalıştırın:

    # run as root
    # list the SBD device(s)
    hn1-db-1:~ # cat /etc/sysconfig/sbd | grep SBD_DEVICE=
    # SBD_DEVICE="/dev/disk/by-id/scsi-36001405772fe8401e6240c985857e116;/dev/disk/by-id/scsi-36001405034a84428af24ddd8c3a3e9e1;/dev/disk/by-id/scsi-36001405cdd5ac8d40e548449318510c3"
    
    hn1-db-1:~ # sbd -d /dev/disk/by-id/scsi-36001405772fe8401e6240c985857e116 -d /dev/disk/by-id/scsi-36001405034a84428af24ddd8c3a3e9e1 -d /dev/disk/by-id/scsi-36001405cdd5ac8d40e548449318510c3 message hn1-db-1 clear
    
    hn1-db-1:~ # systemctl start pacemaker  
    
    hn1-db-1:~ # crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-1
    

    Test sonrasındaki kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    
  10. Test 10: Birincil veritabanı dizin sunucusu kilitleniyor

    Bu test yalnızca SAPHanaSR ve susChkSrv HANA kancalarını uygulama bölümünde açıklandığı gibi susChkSrv kancasını ayarladığınızda geçerlidir.

    Teste başlamadan önce kaynak durumu:

    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:azure-lb):      Started hn1-db-0
    

    Düğümde kök hn1-db-0 olarak aşağıdaki komutları çalıştırın:

    hn1-db-0:~ # killall -9 hdbindexserver
    

    Dizin sunucusu sonlandırıldığında susChkSrv kancası olayı algılar ve 'hn1-db-0' düğümünü çite almak ve bir devralma işlemi başlatmak için bir eylem tetikler.

    Düğümü ikincil olarak kaydetmek hn1-db-0 ve başarısız olan kaynağı temizlemek için aşağıdaki komutları çalıştırın:

    # run as <hana sid>adm
    hn1adm@hn1-db-0:/usr/sap/HN1/HDB03> hdbnsutil -sr_register --remoteHost=hn1-db-1 --remoteInstance=<instance number> --replicationMode=sync --name=<site 1>
    
    # run as root
    hn1-db-0:~ # crm resource cleanup msl_SAPHana_<HANA SID>_HDB<instance number> hn1-db-0
    

    Test sonrasındaki kaynak durumu:

    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-1 ]
       Slaves: [ hn1-db-0 ]
    Resource Group: g_ip_HN1_HDB03
       rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-1
       rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-1
    

    İkincil düğümdeki dizin sunucusu kilitlenmesine neden olarak benzer bir test çalışması yürütebilirsiniz. Dizin sunucusu kilitlenmesi durumunda susChkSrv kancası oluşumu tanır ve ikincil düğümün çitini ayarlamak için bir eylem başlatır.

Sonraki adımlar