Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Yerinde SAP HANA dağıtımında yüksek kullanılabilirlik sağlamak için, ya SAP HANA sistem replikasyonunu ya da paylaşımlı depolamayı kullanabilirsiniz.
Azure sanal makinelerinde (VM'lerde) şu anda yalnızca Azure'da SAP HANA sistemi replikasyonu desteklenen yüksek erişilebilirlik işlevi olarak bulunmaktadır.
SAP HANA sistem replikasyonu, birincil düğüm ve en az bir ikincil düğümden oluşur. Birincil düğümdeki verilerde yapılan değişiklikler, ikincil düğüme eşzamanlı veya eşzamansız 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 Notu 1928533. Not şunları içerir:
- SAP yazılımının dağıtımı için desteklenen Azure VM boyutlarının listesi.
- Azure sanal makine boyutları için önemli kapasite bilgileri.
- Desteklenen SAP yazılımı, işletim sistemi (OS) ve veritabanı kombinasyonları.
- İstenen SAP çekirdek sürümleri Microsoft Azure üzerindeki Windows ve Linux için.
- SAP Notu 2015553, Azure'de SAP destekli SAP yazılım dağıtımlarının ön koşullarını listeler.
- SAP Notu 2205917, SAP Uygulamaları için SUSE Linux Enterprise Server 12 (SLES 12) üzerinde tavsiye edilen işletim sistemi ayarlarını içermektedir.
- SAP Not 2684254 , SAP Uygulamaları için SUSE Linux Enterprise Server 15 (SLES 15) için işletim sistemi ayarlarını önermiştir.
- SAP Notu 2235581, SAP HANA tarafından desteklenen işletim sistemlerini içerir.
- SAP Notu 2178632, Azure'daki SAP için raporlanan tüm izleme ölçümleri hakkında detaylı bilgi içerir.
- SAP Note 2191498 , Azure'da Linux için gerekli SAP konak aracısı sürümüne sahiptir.
- SAP Note 2243692, Azure üzerindeki Linux için SAP lisanslaması hakkında bilgi içerir.
- SAP Notu 1984787, SUSE Linux Enterprise Server 12 hakkında genel bilgiler içerir.
- SAP Notu 1999351, SAP için Azure Gelişmiş İzleme Uzantısı hakkında 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.
- Azure Sanal Makineler ile SAP için Linux Üzerinde 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 uygulama kılavuzları ve SAP Uygulamaları için SUSE Linux Enterprise Server 12 en iyi uygulama kılavuzları:
- SAP HANA SR Performans Optimizasyonlu Altyapı Kurulumu (SAP Uygulamaları için SLES). Kılavuz, kurum içi geliştirme için SAP HANA sistem replikasyonunu kurmak amacıyla gereken tüm bilgileri içerir. Bu kılavuzu bir temel olarak kullanın.
- SAP HANA SR Maliyet Optimizasyonu Altyapısının Kurulumu (SAP Uygulamaları için SLES).
SAP HANA için yüksek erişilebilirlik planı yapın
Yüksek erişilebilirlik sağlamak için, SAP HANA'yı iki sanal makinede kurun. Veri, HANA sistem çoğaltmasını kullanarak çoğaltılır.
SAP HANA sistem çoğaltma yapılandırması, özel bir sanal ana bilgisayar adı ve sanal IP adresleri kullanır. Azure'da sanal bir IP adresi dağıtmak için bir yük dengeleyiciye ihtiyacınız var.
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ırlayın
SAP HANA için kaynak ajanı, SAP Uygulamaları için SUSE Linux Enterprise Server’a dahildir. SAP Uygulamaları için SUSE Linux Enterprise Server 12 veya 15'e ait bir imaj, Azure Marketplace'te mevcuttur. Yeni sanal makineler dağıtmak için imajı kullanabilirsiniz.
Azure Portal aracılığıyla Linux VM’leri elle dağıtın
Bu belge, bir kaynak grubu, Azure Sanal Ağ ve alt ağı zaten dağıttığınızı varsayar.
SAP HANA için sanal makineler dağıtın. HANA sistemi için desteklenen uygun bir SLES imajı seçin. Sanal Makine, sanal makine ölçek kümesi, erişilebilirlik bölgesi veya erişilebilirlik kümesi olmak üzere herhangi bir erişilebilirlik seçeneğinde dağıtılabilir.
Önemli
Dağıtımınızda kullanmayı planladığınız belirli VM türlerinde kullanmak üzere seçtiğiniz işletim sisteminin 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. Belirli bir VM türü için SAP HANA destekli işletim sistemi sürümlerinin tam listesini almak amacıyla VM türünün detaylarına bakmayı ihmal etmeyin.
Azure yük dengeleyici yapılandırma
VM yapılandırması sırasında, ağ bölümünde yeni bir yük dengeleyici oluşturma veya mevcut olanı seçme seçeneğiniz vardır. HANA veritabanının yüksek erişilebilirlik kurulumu için standart yük dengeleyici ayarlamak amacıyla aşağıdaki adımları takip edin.
Azure portalunu kullanarak yüksek kullanılabilirlikli bir SAP sistemi için standart bir yük dengeleyici kurmak amacıyla Yük Dengeleyicisini Oluştur adımlarını izleyin. Yük dengeleyici ayarlanırken aşağıdaki noktaları göz önünde bulundurun:
- Ön Uç IP Konfigürasyonu: Bir ön uç IP oluşturun. Veritabanı sanal makinelerinizle aynı sanal ağı ve alt ağ adını seçin.
- Arka Uç Havuzu: Arka uç havuzu oluşturun ve veritabanı VM'leri ekleyin.
-
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.
- Backend pool: Bir arka uç havuzu seçin.
- Yüksek kullanılabilirlik bağlantı noktaları: Bu seçeneği seçin.
- Protokol: TCP'yi seçin.
-
Sağlık Probu: Aşağıdaki ayrıntılarla bir sağlık probu oluşturun:
- Protokol: TCP'yi seçin.
- Port: Örneğin, 625<örnek-no.>.
- Aralık: 5'i girin.
- Yoklama Eşiği: 2 girin.
- Boşta kalma zaman aşımı (dakika): 30 girin.
- Enable Floating IP: Bu seçeneği seçin.
Uyarı
Sağlık sonda yapılandırma özelliği numberOfProbes
, portalda Sağlıksız eşik olarak bilinen, dikkate alınmamaktadır. Ardışık başarılı veya başarısız sondaların sayısını kontrol etmek için özelliği probeThreshold
olarak 2
ayarlayın. Şu anda Azure portalı kullanılarak bu özelliği ayarlamak mümkün değil, bu yüzden Azure CLI veya PowerShell komutunu kullanın.
SAP HANA için gereken portlar hakkında daha fazla bilgi için SAP HANA Tenant Databases kılavuzundaki Tenant Databases Bağlantıları bölümünü veya SAP Notu 2388694'ü okuyun.
Uyarı
Genel IP adreslerine sahip olmayan sanal makineler (VM'ler) Azure Load Balancer'ın dahili (genel IP adresi olmayan) standart bir örneğinin arka uç havuzuna yerleştirildiğinde, varsayılan yapılandırma dışa dönük internet bağlantısı sağlamaz. Genel uç noktalara yönlendirmeye izin vermek için ek adımlar uygulayabilirsiniz. Dışa doğru bağlantıyı nasıl sağlayabileceğiniz hakkında detaylar için, SAP yüksek erişilebilirlik senaryolarında Azure Standard Load Balancer kullanarak VM'ler için Public endpoint bağlantısı başlıklı bölüme bakınız.
Önemli
- Azure Yük Dengeleyici'nin 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
olarak0
ayarlayın. Ayrıntılar için bkz . Load Balancer sistem durumu yoklamaları veya SAP notu 2382421. - Saptune'un
net.ipv4.tcp_timestamps
değerini0
'den manuel olarak ayarlanmış olan halinden1
'ye geri değiştirmesini önlemek için, saptune sürümünü 3.1.1 veya üstüne güncelleyin. 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]: Bu adım yalnızca Pacemaker kümesinin 2. düğümüne uygulanır.
"SAP HANA kurulumu için 'değerleri <placeholders>
ile değiştirin."
[A] Disk düzenini Mantıksal Birim Yöneticisi (LVM) kullanarak ayarlayın.
Verileri ve günlük dosyalarını depolayan birimler için LVM kullanmanızı öneririz. Aşağıdaki örnek, sanal makinelerin iki birim oluşturmak için kullanılan dört ekli veri diskine sahip olduğunu varsayar.
Mevcut tüm diskleri listelemek için bu komutu çalıştırın.
ls /dev/disk/azure/scsi1/lun*
Örnek çıktı:
/dev/disk/azure/scsi1/lun0 /dev/disk/azure/scsi1/lun1 /dev/disk/azure/scsi1/lun2 /dev/disk/azure/scsi1/lun3
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
Veri dosyaları için bir hacim grubu oluşturun. Günlük dosyaları için bir birim grubu ve SAP HANA'nın paylaşılan dizini için 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
Mantıksal birimleri oluşturun.
lvcreate
anahtarı olmadan-i
kullandığınızda bir lineer hacim oluşturulur. Daha iyi I/O performansı için şeritli birim oluşturmanızı öneririz. Şerit boyutlarını SAP HANA VM depolama yapılandırmaları'nda açıklanan değerlere hizalayın.-i
argümanı, altta yatan fiziksel birimlerin sayısı olmalı ve-I
argümanı ise stripe boyutudur.Örneğin, veri bölümü için iki fiziksel bölüm kullanılacaksa,
-i
anahtar argümanı 2 olarak ayarlanır ve veri bölümünün şerit boyutu 256KiB olarak belirlenir. Günlük hacmi için bir fiziksel hacim kullanılır, bu nedenle günlük hacmi komutları için-i
veya-I
anahtarları açıkça kullanılmaz.Önemli
Her bir veri birimi, günlük birimi veya paylaşılan birim için birden fazla fiziksel birim kullandığınızda,
-i
anahtarını kullanın ve bu anahtarı, altında bulunan fiziksel birimlerin sayısına ayarlayın. Çizgili bir birim oluşturduğunuzda, şerit boyutunu belirtmek için-I
anahtarını kullanın.Önerilen depolama yapılandırmaları, şerit boyutları ve disk sayısı da dahil olmak üzere, SAP HANA VM depolama yapılandırmaları'na bakın.
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
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
Üç mantıksal birim için girişleri oluşturmak üzere
fstab
dosyasını düzenleyin.sudo vi /etc/fstab
/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
Yeni birimleri bağlayın:
sudo mount -a
[A] Düz diskler kullanarak disk düzenini ayarlayın.
Demo sistemler için, HANA veri ve log dosyalarınızı tek bir diske yerleştirebilirsiniz.
/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
Bu satırı /etc/fstab dosyasına ekleyin:
/dev/disk/by-uuid/<UUID> /hana xfs defaults,nofail 0 2
Hedef dizini oluşturun ve diski bağlayın:
sudo mkdir /hana sudo mount -a
[A] Tüm ana bilgisayarlar için ana bilgisayar adı çözümlemesini kurun.
Tüm düğümlerde bir DNS sunucusu kullanabilir veya /etc/hosts dosyasını değiştirebilirsiniz. Bu örnek, /etc/hosts dosyasını nasıl kullanacağınızı gösterir. Aşağıdaki komutlarda IP adreslerini ve ana bilgisayar adlarını değiştirin.
/etc/hosts dosyasını düzenleyin:
sudo vi /etc/hosts
/etc/hosts dosyasına aşağıdaki satırları ekleyin. IP adreslerini ve ana bilgisayar adlarını ortamınıza uygun olacak şekilde değiştirin.
10.0.0.5 hn1-db-0 10.0.0.6 hn1-db-1
[A] SAP HANA'yı SAP dokümantasyonunu takip ederek kurun.
SAP HANA 2.0 sistem replikasyonunu yapılandırın
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]: Bu adım yalnızca Pacemaker kümesinin 2. düğümüne uygulanır.
"SAP HANA kurulumu için 'değerleri <placeholders>
ile değiştirin."
[1] Kiracı veritabanı 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>"'
[1] İlk düğümde sistem replikasyonunu yapılandır.
Öncelikle, <HANA SID>adm olarak veritabanlarını 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>')"
Sonra, sistemin genel 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>
[2] Sistem replikasyonunu ikinci düğümde yapılandırın:
Sistem replikasyonunu 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>
HANA kaynak ajanlarını uygula
SUSE, SAP HANA'yı yönetmek için Pacemaker kaynak ajanı için iki farklı yazılım paketi sağlar. Yazılım paketleri SAPHanaSR ve SAPHanaSR-angi, biraz farklı sözdizimi ve parametreler kullanıyor ve birbirleriyle uyumlu değiller. SUSE sürüm notları ve belgelendirme SAPHanaSR ve SAPHanaSR-angi arasındaki farklar ve detaylar için bakınız. Bu belge, her iki paketi de ilgili bölümlerde ayrı sekmelerde kapsar.
Uyarı
Daha önceden yapılandırılmış bir kümede SAPHanaSR paketini SAPHanaSR-angi ile değiştirmeyin. SAP HanaSR'den SAP HanaSR-angi'ye yükseltme, özel bir prosedür gerektirir. Daha fazla ayrıntı için SUSE'nin blog gönderisine bakın: SAPHanaSR-angi'ye yükseltme.
- [A] SAP HANA yüksek kullanılabilirlik paketlerini yükleyin:
Önemli
SAPHanaSR-angi'nin minimum sürüm gereksinimi SAP HANA 2.0 SPS 05 ve SUSE SLES for SAP Applications 15 SP4 veya üstüdür.
Yüksek kullanılabilirlik paketlerini yüklemek için aşağıdaki komutu çalıştırın:
sudo zypper install SAPHanaSR-angi
SAP HANA HA/DR sağlayıcılarını kurmayı ayarlayın
SAP HANA HA/DR sağlayıcıları, küme ile entegrasyonu optimize eder ve küme arıza geçişi gerektiğinde tespiti iyileştirir. Ana kanca betiği SAPHanaSR (SAPHanaSR paketi için) / susHanaSR (SAPHanaSR-angi için) şeklindedir. SAPHanaSR/susHanaSR Python kancasını yapılandırmanızı şiddetle tavsiye ederiz. HANA 2.0 SPS 05 ve sonrasında, hem SAPHanaSR/susHanaSR hem de susChkSrv kancalarını uygulamanızı öneririz.
susChkSrv kancası, ana SAPHanaSR/susHanaSR Yüksek Erişilebilirlik (HA) sağlayıcısının işlevselliğini genişletir. HANA süreci hdbindexserver çöktüğünde devreye girer. Bir işlem çökerse, HANA genellikle onu yeniden başlatmaya çalışır. Indexserver işlemini yeniden başlatmak uzun sürebilir ve bu süre zarfında HANA veritabanı yanıt vermez.
susChkSrv uygulandığında, anında ve yapılandırılabilir bir eylem gerçekleştirilir. Yapılan işlem, hdbindexserver sürecinin aynı düğümde yeniden başlamasını beklemek yerine, yapılandırılmış zaman aşımı süresi içinde bir geçişi tetikler.
- [A] Her iki düğümde de HANA'yı durdurun.
Aşağıdaki kodu <sap-sid>adm olarak çalıştırın:
sapcontrol -nr <instance number> -function StopSystem
[A] HANA sistemi çoğaltma kancalarını yükleyin. Kancalar her iki HANA veritabanı düğümüne de kurulmalıdır.
İpucu
SAPHanaSR Python hook yalnızca HANA 2.0 için uygulanabilir. SAPHanaSR paketinin sürümünün en az 0.153 olması gerekmektedir.
SAPHanaSR-angi Python kancası yalnızca HANA 2.0 SPS 05 ve daha sonrası için uygulanabilir.
susChkSrv Python kancası SAP HANA 2.0 SPS 05 gerektirir ve SAPHanaSR sürümü 0.161.1_BF veya üzeri yüklenmelidir.[A] Her küme düğümünde global.ini dosyasını ayarlayın.
Önerilen susChkSrv kancasını kullanmamayı seçerseniz, aşağıdaki parametrelerden tüm
[ha_dr_provider_suschksrv]
bloğunu kaldırın.susChkSrv
davranışınıaction_on_lost
parametresini kullanarak ayarlayabilirsiniz. Geçerli değerler şunlardır: [ignore
|stop
|kill
|fence
].[ha_dr_provider_sushanasr] provider = susHanaSR path = /usr/share/SAPHanaSR-angi execution_order = 1 [ha_dr_provider_suschksrv] provider = susChkSrv path = /usr/share/SAPHanaSR-angi execution_order = 3 action_on_lost = fence [trace] ha_dr_sushanasr = info ha_dr_suschksrv = info
Varsayılan
/usr/share/SAPHanaSR-angi
konumuna giden parametre yolunu ayarlarsanız, Python kanca kodu işletim sistemi güncellemeleri veya paket güncellemeleri aracılığıyla otomatik olarak güncellenir. HANA, bir sonraki yeniden başlatmada kanca kodu güncellemelerini kullanır. Seçmeli bir kendi yolu, örneğin/hana/shared/myHooks
gibi, kullanarak OS güncellemelerini kullandığınız hook sürümünden ayırabilirsiniz.[A] Küme, her küme düğümünde sudoers yapılandırmasına ihtiyaç duyar, bu <sap-sid>adm için geçerlidir. Bu örnekte, yeni bir dosya oluşturarak bu sağlanır.
Aşağıdaki komutu root olarak çalıştırın. "<sid>'yi küçük harflerle SAP sistem kimliği, <SID>'yi büyük harflerle SAP sistem kimliği ve <siteA/B>'yi seçilen HANA site adlarıyla değiştirebilirsiniz."
cat << EOF > /etc/sudoers.d/20-saphana # Needed for susHanaSR and susChkSrv Python hooks Cmnd_Alias SOK_SITEA = /usr/sbin/crm_attribute -n hana_<sid>_site_srHook_<siteA> -v SOK -t crm_config -s SAPHanaSR Cmnd_Alias SFAIL_SITEA = /usr/sbin/crm_attribute -n hana_<sid>_site_srHook_<siteA> -v SFAIL -t crm_config -s SAPHanaSR Cmnd_Alias SOK_SITEB = /usr/sbin/crm_attribute -n hana_<sid>_site_srHook_<siteB> -v SOK -t crm_config -s SAPHanaSR Cmnd_Alias SFAIL_SITEB = /usr/sbin/crm_attribute -n hana_<sid>_site_srHook_<siteB> -v SFAIL -t crm_config -s SAPHanaSR Cmnd_Alias HELPER_TAKEOVER = /usr/bin/SAPHanaSR-hookHelper --sid=<SID> --case=checkTakeover Cmnd_Alias HELPER_FENCE = /usr/bin/SAPHanaSR-hookHelper --sid=<SID> --case=fenceMe <sid>adm ALL=(ALL) NOPASSWD: SOK_SITEA, SFAIL_SITEA, SOK_SITEB, SFAIL_SITEB, HELPER_TAKEOVER, HELPER_FENCE 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.
[A] SAP HANA'yı her iki düğümde başlatın. Aşağıdaki komutu <sap-sid>adm olarak çalıştırın:
sapcontrol -nr <instance number> -function StartSystem
[1] Kanca montajını doğrulayın. Aktif HANA sistem replikasyon sitesinde <sap-sid>adm olarak aşağıdaki komutu çalıştırın:
cdtrace grep HADR.*load.*susHanaSR nameserver_*.trc grep susHanaSR.init nameserver_*.trc # Example output # ha_dr_provider HADRProviderManager.cpp(00083) : loading HA/DR Provider 'susHanaSR' from /usr/share/SAPHanaSR-angi
-
[1] susChkSrv hook kurulumunu doğrula.
Aşağıdaki komutu HANA VM'lerde <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
- [1] Öncelikle, HANA topoloji kaynağını oluşturun.
Aşağıdaki komutları Pacemaker küme düğümlerinden birinde ç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 \
op monitor interval="50" 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" interleave="true"
- [1] Sonra, HANA kaynaklarını oluşturun.
# Replace <placeholders> with your instance number and HANA system ID.
sudo crm configure primitive rsc_SAPHanaController_<HANA SID>_HDB<instance number> ocf:suse:SAPHanaController \
op start interval="0" timeout="3600" \
op stop interval="0" timeout="3600" \
op promote interval="0" timeout="3600" \
op demote interval="0" timeout="320" \
op monitor interval="60" role="Promoted" timeout="700" \
op monitor interval="61" role="Unpromoted" timeout="700" \
params SID="<HANA SID>" InstanceNumber="<instance number>" PREFER_SITE_TAKEOVER="true" \
DUPLICATE_PRIMARY_TIMEOUT="7200" AUTOMATED_REGISTER="false" \
meta priority=100
sudo crm configure clone msl_SAPHanaController_<HANA SID>_HDB<instance number> rsc_SAPHanaController_<HANA SID>_HDB<instance number> \
meta clone-node-max="1" interleave="true" promotable="true"
SAPHanaSR-angi, /hana/shared/SID üzerinde okuma/yazma erişimini izlemek için yeni bir kaynak aracısı olan SAPHanaFilesystem'i ekler. OS, her bir ana bilgisayarda /etc/fstab dosyasına girişler yaparak /hana/shared/SID dosya sistemini statik olarak bağlar. SAPHanaFilesystem ve Pacemaker, HANA için dosya sistemini bağlamıyor.
/hana/shared/SID konumu için NFS kullanıyorsanız SAPHanaFilesystem uygulamasını öneririz. /hana/shared/SID, Azure yönetilen diski gibi bir blok cihazında bulunduğunda SAPHanaFilesystem kullanımı isteğe bağlıdır.
# Replace <placeholders> with your instance number and HANA system ID.
sudo crm configure primitive rsc_SAPHanaFilesystem_<HANA SID>_HDB<instance number> ocf:suse:SAPHanaFilesystem \
op start interval="0" timeout="10" \
op stop interval="0" timeout="20" \
op monitor interval="120" timeout="120" \
params SID="<HANA SID>" InstanceNumber="<instance number>" ON_FAIL_ACTION="fence"
sudo crm configure clone cln_SAPHanaFilesystem_<HANA SID>_HDB<instance number> rsc_SAPHanaFilesystem_<HANA SID>_HDB<instance number> \
meta clone-node-max="1" interleave="true"
- [1] Sanal IP'ler, varsayılanlar ve kısıtlamalar için küme kaynakları ile devam edin.
# 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_ip_<HANA SID>_HDB<instance number> ocf:heartbeat:IPaddr2 \
meta target-role="Started" \
op start timeout=60s on-fail=fence \
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_SAPHanaController_<HANA SID>_HDB<instance number>:Promoted
sudo crm configure order ord_SAPHana_<HANA SID>_HDB<instance number> Optional: cln_SAPHanaTopology_<HANA SID>_HDB<instance number> \
msl_SAPHanaController_<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_SAPHanaController_<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
Birincil örneğin başarısız olması durumunda ikincil olarak otomatik kaydedilmesini önlemek için kapsamlı failover testlerini tamamlarken AUTOMATED_REGISTER
öğesini yalnızca false
olarak ayarlamanızı öneririz. Failover testleri başarıyla tamamlandığında, sistem devralındıktan sonra AUTOMATED_REGISTER
'ü true
olarak ayarlayın, böylece sistem replikasyonu otomatik olarak devam etsin.
Küme durumunun OK
olduğundan ve tüm kaynakların başladığından emin olun. Kaynakların hangi düğümde çalıştığı önemli değil.
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 aktif/okuma-aktif sistem çoğaltmasını yapılandırın.
SAP HANA 2.0 SPS 01 ve sonraki sürümlerde, SAP, SAP HANA sistem çoğaltması için aktif/okuma etkin bir kurulum yapılmasına izin veriyor. Bu senaryoda, SAP HANA sistem replikasyonunun ikincil sistemleri, okuma ağırlıklı iş yükleri için etkin bir şekilde kullanılabilir.
Bu kurulumu bir kümede desteklemek için, müşterilerin ikincil okuma etkin SAP HANA veritabanına erişebilmesi amacıyla ikinci bir sanal IP adresine ihtiyaç vardır. SAPHana kaynağının ikinciliği ile birlikte sanal IP adresini taşıması gerektiğinden emin olmak için, bir el koyma işleminden sonra ikincil çoğaltma sitesine hala erişilebilmelidir.
Bu bölüm, ikinci bir sanal IP adresi kullanan bir SUSE yüksek kullanılabilirlik kümesinde bir HANA etkin/okuma etkin sistem replikasyonunu yönetmek için gerekli olan ek adımları açıklar.
Devam etmeden önce, SAP HANA veritabanını yöneten SUSE yüksek erişilebilirlik kümesini önceki bölümlerde belirtildiği şekilde tamamen yapılandırdığınızdan emin olun.
Yük dengeleyiciyi etkin/okumaya izin veren sistem replikasyonu için kurun
İ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.
Daha önce oluşturduğunuz aynı yük dengeleyici üzerinde, standart yük dengeleyici için bu ek adımları tamamlayın.
- İkinci bir ön uç IP havuzu oluşturun:
- Yük dengeleyiciyi açın, ön uç IP havuzunu seçin ve Ekle'yi seçin.
- İkinci ön uç IP havuzunun adını girin (örneğin, hana-secondaryIP).
- Atama'yıStatik olarak ayarlayın ve IP adresini girin (örneğin, 10.0.0.14).
- Tamam'ı seçin.
- Yeni ön uç IP havuzu oluşturulduktan sonra, ön uç IP adresini not edin.
- Bir sağlık ölçüm çubuğu oluştur.
- Yük dengeleyicide, sağlık testlerini seçin ve ardından Ekle'yi seçin.
- Yeni sağlık probunun adını girin (örneğin, hana-secondaryhp).
- Seçin TCP protokol ve port olarak 626<örnek numarası>. Interval değerini 5 olarak ayarlayın ve Sağlıksız eşik değerini 2 olarak ayarlayın.
- Tamam'ı seçin.
- Yük dengeleme kurallarını oluşturun:
- Yük dengeleyicisi içinde, yük dengeleme kurallarını seçin ve Ekleyi seçin.
- Yeni yük dengeleyici kuralının adını girin (örneğin, hana-secondarylb).
- Daha önce oluşturduğunuz ön uç IP adresini, arka uç havuzunu ve sağlık probunu seçin (örneğin, hana-secondaryIP, hana-backend ve hana-secondaryhp).
- HA Bağlantı Noktaları'nı seçin.
- Boşta kalma zaman aşımını 30 dakikaya çıkarın.
- Emin olun ki floating IP'yi etkinleştirin.
- Tamam'ı seçin.
HANA aktif/okuma-etkin sistem replikasyonunu kurun
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. Okunaklı bir ikincil senaryo uyguluyorsanız, sistem replikasyonunu ikinci düğümde kurarken, <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ğı ekle
İkinci sanal IP'yi ve uygun yerleşim kısıtını aşağıdaki komutları kullanarak kurabilirsiniz:
crm configure property maintenance-mode=true
crm configure primitive rsc_secip_<HANA SID>_HDB<instance number> ocf:heartbeat:IPaddr2 \
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_SAPHanaController_<HANA SID>_HDB<instance number>:Unpromoted
crm configure property maintenance-mode=false
Küme durumunun OK
olduğundan ve tüm kaynakların başladığı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
Bir sonraki bölümde, gerçekleştirilecek tipik hata toleransı testleri seti açıklanmaktadır.
Okumaya izin veren ikincil bir yapılandırmayla ayarlanmış bir HANA kümesini test ederken göz önünde bulundurulması gerekenler:
SAPHana_<HANA SID>_HDB<instance number>
küme kaynağınıhn1-db-1
'e taşıdığınızda, ikinci sanal IP adresihn1-db-0
'e geçer. EğerAUTOMATED_REGISTER="false"
yapılandırıldıysa ve HANA sistem çoğaltması otomatik olarak kaydedilmediyse, ikinci sanal IP, sunucu kullanılabilir olduğu ve küme hizmetleri çevrimiçi olduğu içinhn1-db-0
üzerinde ç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. Bu davranış beklenilen bir durumdur çünkü okuma özelliği etkinleştirilmiş bir HANA veritabanına bağlı uygulamaların, ikincil sunucu kullanılamadığında, erişilemez olmasını istemezsiniz.İkincil sunucu kullanılabilir olduğunda ve küme hizmetleri çevrimiçi olduğunda, ikinci sanal IP ve port kaynakları, HANA sistem replikasyonu henüz ikincil olarak kayıtlı olmasa bile kendiliğinden ikincil sunucuya taşınır. İkincil HANA veritabanını okuma izinli olarak kaydettiğinizden emin olun, ardından bu sunucuda küme hizmetlerini başlatın. HANA örnek küme kaynağını,
AUTOMATED_REGISTER="true"
parametresini ayarlayarak ikincilini otomatik olarak kaydedecek şekilde yapılandırabilirsiniz.Failover ve geri dönüş sırasında, ikinci sanal IP'yi kullanarak HANA veritabanına bağlanan uygulamalara ait mevcut bağlantılar kesintiye uğrayabilir.
Kümeyi kurulumunu test et
Bu bölümde, kurulumunuzu nasıl test edebilirsiniz açıklanmaktadır. Her test, root olarak oturum açtığınızı ve SAP HANA master sunucusunun hn1-db-0
VM üzerinde çalıştığını varsayar.
Geçişi test et
Teste başlamadan önce, Pacemaker'ın başarısız bir işlemi olmadığından (crm_mon -r
'yi çalıştırarak), beklenmeyen yer kısıtlamalarının bulunmadığından (örneğin, bir göç testi artıkları) ve HANA'nın senkronize durumda olduğundan emin olun, örneğin, SAPHanaSR-showAttr
'yi çalıştırarak.
hn1-db-0:~ # SAPHanaSR-showAttr
Global cib-update dcid prim sec sid topology
--------------------------------------------------
global 0.130728.2 1 SITE1 - HN1 ScaleUp
Resource promotable
-----------------------------------------
msl_SAPHanaController_HN1_HDB03 true
cln_SAPHanaTopology_HN1_HDB03
Site lpt lss mns opMode srHook srMode srPoll srr
-----------------------------------------------------------------------
SITE1 1722604101 4 hn1-db-0 logreplay PRIM sync PRIM P
SITE2 30 4 hn1-db-1 logreplay SWAIT sync SOK S
Host clone_state roles score site sra srah version vhost
---------------------------------------------------------------------------------------------
hn1-db-0 PROMOTED master1:master:worker:master 150 SITE1 - - 2.00.074.00 hn1-db-0
hn1-db-1 DEMOTED master1:master:worker:master 100 SITE2 - 2.00.074.00 hn1-db-1
Host clone_state roles score site sra srah version vhost
------------------------------------------------------------------------------------------------
hn1-db-0 PROMOTED master1:master:worker:master 150 SITE1 - - 2.00.074.00 hn1-db-0
hn1-db-1 SITE2 hn1-db-1
SAP HANA ana düğümünü taşımak için aşağıdaki komutu çalıştırabilirsiniz:
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 adresi içeren grubu hn1-db-1
adresine taşıyacaktır.
Göç tamamlandığında, crm_mon -r
çıktısı şu örnekteki gibi görünür:
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
AUTOMATED_REGISTER="false"
ile, küme başarısız HANA veritabanını yeniden başlatmayacak veya hn1-db-0
üzerindeki yeni ana makineye karşı kaydettirmeyecektir. Türkçe: Bu durumda, HANA örneğini ikincil olarak yapılandırmak için bu komutu çalıştı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>
Göç, tekrar 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
HANA kaynağının durumunu crm_mon -r
kullanarak izleyin. HANA hn1-db-0
üzerinde başlatıldığında, çı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 önceki 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
Güvenlik duvarı kuralını çalıştırarak düğümlerden birindeki iletişimi engelleyin.
# 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 birbirleriyle iletişim kuramadığında, bölünmüş beyin senaryosu riski vardır. Böyle durumlarda küme düğümleri birbirlerini aynı anda çitlemeye çalışarak çitleme yarışına neden olur.
Bir çit cihazı yapılandırılırken, pcmk_delay_max
özelliğinin yapılandırılması önerilir. Bu nedenle, bölünmüş beyin senaryosunda, küme her bir node'daki koruma eylemine pcmk_delay_max
değerine kadar rastgele bir gecikme ekler. Eskrim için en kısa gecikme süresine sahip düğüm seçilir.
Ek olarak, HANA ana sunucusunu çalıştıran düğümün öncelik almasını ve bölünmüş beyin senaryosunda çit yarışını kazanmasını sağlamak için, kümelenme yapılandırmasında priority-fencing-delay
özelliğinin ayarlanması önerilir. Öncelik çitleme gecikmesi özelliğini etkinleştirerek, küme HANA ana kaynak barındıran düğümde çitleme işlemine özel olarak ek bir gecikme ekleyebilir ve böylece düğümün çit yarışını kazanmasına olanak tanıyabilir.
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
SBD kurulumunu, inquisitor sürecini sonlandırarak 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
<HANA SID>-db-<database 1>
küme düğümü yeniden başlatılıyor. Pacemaker servisi yeniden başlamayabilir. Tekrar başlattığınızdan emin olun.
Manuel failover'ı test et
Pacemaker hizmetini hn1-db-0
düğümünde durdurarak manuel bir geçişi test edebilirsiniz.
service pacemaker stop
Yedeklemeye geçiş işleminden sonra hizmeti yeniden başlatabilirsiniz.
AUTOMATED_REGISTER="false"
ayarlarsanız, hn1-db-0
düğümündeki SAP HANA kaynağı ikincil olarak başlatılamaz.
Türkçe: Bu durumda, HANA örneğini ikincil olarak yapılandırmak için bu komutu çalıştı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. Kullanmayı planladığınız VM türünün detaylarını inceleyerek, o VM türü için SAP HANA tarafından desteklenen işletim sistemi sürümlerinin tam listesini alın.
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 versiyon için kılavuzun kendisini de okuyun. Testi başlatmadan önce HANA'nın senkronize olduğundan ve Pacemaker yapılandırmasının doğru olduğundan emin olun.
Aşağıdaki test açıklamalarında, PREFER_SITE_TAKEOVER="true"
ve AUTOMATED_REGISTER="false"
varsayıyoruz.
Uyarı
Aşağıdaki testler sırayla çalıştırılacak şekilde tasarlanmıştır. Her test, önceki testin çıkış durumuna bağlıdır.
Test 1: Düğüm 1 üzerindeki birincil veritabanını durdurun.
Testin başlamasından önceki 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ı <hana sid>adm olarak
hn1-db-0
düğümü üzerinde çalıştırın:hn1adm@hn1-db-0:/usr/sap/HN1/HDB03> HDB stop
Pacemaker, durmuş olan HANA instance'ını tespit eder ve diğer node'a geçiş yapar. Failover tamamlandığında, Pacemaker düğümü otomatik olarak HANA ikincil olarak kaydetmediği için
hn1-db-0
düğümündeki HANA örneği durduruluyor.Aşağıdaki komutları çalıştırarak
hn1-db-0
düğümünü ikincil olarak kaydedin ve başarısız olan kaynağı temizleyin: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
Testten sonraki 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
Test 2: Düğüm 2 üzerindeki birincil veritabanını durdurun.
Testin başlamasından önceki 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ı <hana sid>adm olarak
hn1-db-1
düğümü üzerinde çalıştırın:hn1adm@hn1-db-1:/usr/sap/HN1/HDB01> HDB stop
Pacemaker, durmuş olan HANA instance'ını tespit eder ve diğer node'a geçiş yapar. Failover tamamlandığında, Pacemaker düğümü otomatik olarak HANA ikincil olarak kaydetmediği için
hn1-db-1
düğümündeki HANA örneği durduruluyor.Aşağıdaki komutları çalıştırarak
hn1-db-1
düğümünü ikincil olarak kaydedin ve başarısız olan kaynağı temizleyin: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
Testten sonraki 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
Test 3: Birinci düğümdeki birincil veritabanını çökertin.
Testin başlamasından önceki 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ı <hana sid>adm olarak
hn1-db-0
düğümü üzerinde çalıştırın:hn1adm@hn1-db-0:/usr/sap/HN1/HDB03> HDB kill-9
Pacemaker, durdurulan HANA örneğini algılar ve diğer düğüme aktarır. Failover tamamlandığında, Pacemaker düğümü otomatik olarak HANA ikincil olarak kaydetmediği için
hn1-db-0
düğümündeki HANA örneği durduruluyor.Aşağıdaki komutları çalıştırarak
hn1-db-0
düğümünü ikincil olarak kaydedin ve başarısız olan kaynağı temizleyin: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
Testten sonraki 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
Test 4: Düğüm 2'de birincil veritabanını çökertin.
Testin başlamasından önceki 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ı <hana sid>adm olarak
hn1-db-1
düğümü üzerinde çalıştırın:hn1adm@hn1-db-1:/usr/sap/HN1/HDB03> HDB kill-9
Pacemaker, durdurulan HANA örneğini algılar ve diğer düğüme aktarır. Failover tamamlandığında, Pacemaker düğümü otomatik olarak HANA ikincil olarak kaydetmediği için
hn1-db-1
düğümündeki HANA örneği durduruluyor.Aşağıdaki komutları çalıştırarak
hn1-db-1
düğümünü ikincil olarak kaydedin ve hatalı kaynağı temizleyin.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
Testten sonraki 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
Test 5: Birincil site düğümünü (düğüm 1) çökertin.
Testin başlamasından önceki 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ı kök kullanıcı olarak
hn1-db-0
düğümünde çalıştırın.hn1-db-0:~ # echo 'b' > /proc/sysrq-trigger
Pacemaker, ölü cümle algılarını tespit eder ve o cümleyi izole eder. Düğüm sınırlı olduğunda, Pacemaker, HANA örneğinin devralınmasını tetikler. Çitlenmiş düğüm yeniden başlatıldığında, Pacemaker otomatik olarak başlamıyor.
Aşağıdaki komutları çalıştırarak Pacemaker'ı başlatın,
hn1-db-0
düğümü için SBD mesajlarını temizleyin,hn1-db-0
düğümünü ikincil olarak kaydedin ve başarısız olan kaynağı temizleyin.# 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
Testten sonraki 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
Test 6: İkincil site düğümünü (düğüm 2) düşür.
Testin başlamasından önceki 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ı kök kullanıcı olarak
hn1-db-1
düğümünde çalıştırın.hn1-db-1:~ # echo 'b' > /proc/sysrq-trigger
Pacemaker, ölü cümle algılarını tespit eder ve o cümleyi izole eder. Düğüm sınırlı olduğunda, Pacemaker, HANA örneğinin devralınmasını tetikler. Çitlenmiş düğüm yeniden başlatıldığında, Pacemaker otomatik olarak başlamıyor.
Aşağıdaki komutları çalıştırarak Pacemaker'ı başlatın,
hn1-db-1
düğümü için SBD mesajlarını temizleyin,hn1-db-1
düğümünü ikincil olarak kaydedin ve başarısız olan kaynağı temizleyin.# 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
Testten sonraki 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>
Test 7: Düğüm 2'deki ikincil veritabanını durdurun.
Testin başlamasından önceki 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ı <hana sid>adm olarak
hn1-db-1
düğümü üzerinde çalıştırın:hn1adm@hn1-db-1:/usr/sap/HN1/HDB03> HDB stop
Pacemaker, durdurulmuş HANA örneğini algılar ve kaynağı
hn1-db-1
düğümünde 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
Testten sonraki 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
Test 8: Düğümler 2'deki ikincil veritabanını çökertin.
Testin başlamasından önceki 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ı <hana sid>adm olarak
hn1-db-1
düğümü üzerinde çalıştırın:hn1adm@hn1-db-1:/usr/sap/HN1/HDB03> HDB kill-9
Pacemaker, HANA örneğinin öldürüldüğünü algılar ve kaynağı
hn1-db-1
düğümünde başarısız olarak işaretler. Şu komutu çalıştırarak başarısız durumu temizleyin. Daha sonra Pacemaker, 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
Testten sonraki 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
Test 9: İkincil HANA veritabanını çalıştıran ikincil site düğümünü (düğüm 2) çökertin.
Testin başlamasından önceki 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ı kök kullanıcı olarak
hn1-db-1
düğümünde çalıştırın.hn1-db-1:~ # echo b > /proc/sysrq-trigger
Pacemaker, öldürülen küme düğümünü algılar ve düğümü karantinaya alır. Çitlenmiş düğüm yeniden başlatıldığında, Pacemaker otomatik olarak başlamıyor.
Pacemaker'ı başlatmak,
hn1-db-1
düğümünün SBD iletilerini temizlemek ve başarısız kaynağı temizlemek için 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
Testten sonraki 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
Test 10: Birincil veritabanı dizin sunucusunu çökertme
Bu test, HANA kaynak ajanlarını uygulama bölümünde açıklandığı gibi susChkSrv kancasını kurduğunuzda geçerlidir.
Testin başlamasından önceki 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ı kök kullanıcı olarak
hn1-db-0
düğümünde ç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ü izole etmek ve bir devralma süreci başlatmak için bir eylem tetikler.
Düğümü ikincil olarak kaydetmek ve başarısız olan kaynağı temizlemek için aşağıdaki komutları çalıştırın:
hn1-db-0
# 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
Testten sonraki 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 indexserver'ı çökertmek suretiyle benzer bir test vakası yürütebilirsiniz. Dizin sunucusu çökmesi durumunda, susChkSrv bağlantı noktası çöküşü algılar ve ikincil düğümün çevresini güvene almak için bir eylem başlatır.