Eskrim cihazını kullanarak SUSE'de yüksek kullanılabilirlik kurulumu
Bu makalede, eskrim cihazını kullanarak SUSE işletim sistemindeki HANA Büyük Örneklerinde yüksek kullanılabilirlik (HA) ayarlama adımlarını inceleyeceğiz.
Not
Bu kılavuz, Microsoft HANA Büyük Örnekleri ortamında kurulumun başarıyla test edilmesinden türetilmiştir. HANA Büyük Örnekleri için Microsoft Hizmet Yönetimi ekibi işletim sistemini desteklemez. İşletim sistemi katmanında sorun giderme veya açıklama için SUSE ile iletişime geçin.
Microsoft Hizmet Yönetimi ekibi, eskrim cihazını ayarlar ve tam olarak destekler. Eskrim cihazı sorunlarını gidermeye yardımcı olabilir.
Önkoşullar
SUSE kümeleme kullanarak yüksek kullanılabilirliği ayarlamak için şunları yapmanız gerekir:
- HANA Büyük Örnekleri sağlama.
- İşletim sistemini en son düzeltme ekleriyle yükleyin ve kaydedin.
- Yamalar ve paketler almak için HANA Büyük Örnek sunucularını SMT sunucusuna bağlayın.
- Ağ Zaman Protokolü 'nu (NTP zaman sunucusu) ayarlayın.
- HA kurulumuyla ilgili en son SUSE belgelerini okuyun ve anlayın.
Kurulum ayrıntıları
Bu kılavuzda aşağıdaki kurulum kullanılır:
- İşletim sistemi: SAP için SLES 12 SP1
- HANA Büyük Örnekleri: 2xS192 (dört yuva, 2 TB)
- HANA sürümü: HANA 2.0 SP1
- Sunucu adları: sapprdhdb95 (node1) ve sapprdhdb96 (node2)
- Eskrim cihazı: iSCSI tabanlı
- HANA Büyük Örnek düğümlerinden birinde NTP
HANA sistem çoğaltması ile HANA Büyük Örnekleri ayarladığınızda, Microsoft Hizmet Yönetimi ekibinin eskrim cihazını ayarlamasını isteyebilirsiniz. Bunu sağlama sırasında yapın.
HANA Büyük Örnekleri önceden sağlanmış bir müşteriyseniz, eskrim cihazını yine de ayarlayabilirsiniz. Hizmet isteği formunda (SRF) Microsoft Hizmet Yönetimi ekibine aşağıdaki bilgileri sağlayın. SRF'yi Teknik Hesap Yöneticisi veya HANA Büyük Örnek ekleme için Microsoft ilgili kişiniz aracılığıyla alabilirsiniz.
- Sunucu adı ve sunucu IP adresi (örneğin, myhanaserver1 ve 10.35.0.1)
- Konum (örneğin, ABD Doğu)
- Müşteri adı (örneğin, Microsoft)
- HANA sistem tanımlayıcısı (SID) (örneğin, H11)
Eskrim cihazı yapılandırıldıktan sonra, Microsoft Hizmet Yönetimi ekibi size iSCSI depolama alanının SBD adını ve IP adresini sağlayacaktır. Bu bilgileri, eskrim kurulumunu yapılandırmak için kullanabilirsiniz.
Eskrim cihazını kullanarak HA'yı ayarlamak için aşağıdaki bölümlerdeki adımları izleyin.
SBD cihazını tanımlama
Not
Bu bölüm yalnızca mevcut müşteriler için geçerlidir. Yeni bir müşteriyseniz Microsoft Hizmet Yönetimi ekibi size SBD cihaz adını verir, bu nedenle bu bölümü atlayın.
/etc/iscsi/initiatorname.isci dosyasını şu şekilde değiştirin:
iqn.1996-04.de.suse:01:<Tenant><Location><SID><NodeNumber>
Microsoft Hizmet Yönetimi bu dizeyi sağlar. Dosyayı her iki düğümde de değiştirin. Ancak düğüm numarası her düğümde farklıdır.
ve
node.startup = automatic
ayarlarını yaparaknode.session.timeo.replacement_timeout=5
/etc/iscsi/iscsid.conf dosyasını değiştirin. Dosyayı her iki düğümde de değiştirin.Her iki düğümde de aşağıdaki bulma komutunu çalıştırın.
iscsiadm -m discovery -t st -p <IP address provided by Service Management>:3260
Sonuçlar dört oturum gösterir.
iSCSI cihazında oturum açmak için her iki düğümde de aşağıdaki komutu çalıştırın.
iscsiadm -m node -l
Sonuçlar dört oturum gösterir.
rescan-scsi-bus.sh yeniden tarama betiğini çalıştırmak için aşağıdaki komutu kullanın. Bu betik, sizin için oluşturulan yeni diskleri gösterir. Her iki düğümde de çalıştırın.
rescan-scsi-bus.sh
Sonuçlar sıfırdan büyük bir LUN sayısı göstermelidir (örneğin: 1, 2 vb.).
Cihaz adını almak için her iki düğümde de aşağıdaki komutu çalıştırın.
fdisk –l
Sonuçlarda, boyutu 178 MiB olan cihazı seçin.
SBD cihazını başlatma
SBD cihazını her iki düğümde de başlatmak için aşağıdaki komutu kullanın.
sbd -d <SBD Device Name> create
Cihaza yazılanları denetlemek için her iki düğümde de aşağıdaki komutu kullanın.
sbd -d <SBD Device Name> dump
SUSE HA kümesini yapılandırma
ha_sles ve SAPHanaSR-doc desenlerinin her iki düğümde de yüklü olup olmadığını denetlemek için aşağıdaki komutu kullanın. Yüklü değilse yükleyin.
zypper in -t pattern ha_sles zypper in SAPHanaSR SAPHanaSR-doc
komutunu veya yast2 sihirbazını
ha-cluster-init
kullanarak kümeyi ayarlayın. Bu örnekte yast2 sihirbazını kullanıyoruz. Bu adımı yalnızca birincil düğümde gerçekleştirin.yast2>Yüksek Kullanılabilirlik>Kümesi'ne gidin.
Hawk paketi yüklemesi hakkında görüntülenen iletişim kutusunda halk2 paketi zaten yüklü olduğundan İptal'i seçin.
Devam etme hakkında görüntülenen iletişim kutusunda Devam'ı seçin.
Beklenen değer, dağıtılan düğüm sayısıdır (bu örnekte 2). İleri’yi seçin.
Düğüm adları ekleyin ve önerilen dosyaları ekle'yi seçin.
Csync2'yi AÇ'ı seçin.
Önceden Paylaşılan Anahtar Oluştur'a tıklayın.
Görüntülenen açılır iletide Tamam'ı seçin.
Kimlik doğrulaması, Csync2'de IP adresleri ve önceden paylaşılan anahtarlar kullanılarak gerçekleştirilir. Anahtar dosyası ile
csync2 -k /etc/csync2/key_hagroup
oluşturulur.Dosya key_hagroup oluşturulduktan sonra kümenin tüm üyelerine el ile kopyalayın. Dosyayı node1'den node2'ye kopyaladığınızdan emin olun. Sonra İleri’yi seçin.
Varsayılan seçenekte ÖnyüklemeKapalıydı. Pacemaker hizmetinin önyüklemede başlatılması için bunu Açık olarak değiştirin. Kurulum gereksinimlerinize göre seçim yapabilirsiniz.
İleri'yi seçtiğinizde küme yapılandırması tamamlanır.
Softdog watchdog'unu ayarlama
Her iki düğümde de /etc/init.d/boot.local adresine aşağıdaki satırı ekleyin.
modprobe softdog
Her iki düğümde de /etc/sysconfig/sbd dosyasını güncelleştirmek için aşağıdaki komutu kullanın.
SBD_DEVICE="<SBD Device Name>"
Aşağıdaki komutu çalıştırarak çekirdek modülünü her iki düğüme de yükleyin.
modprobe softdog
Softdog'un her iki düğümde de çalıştığından emin olmak için aşağıdaki komutu kullanın.
lsmod | grep dog
Her iki düğümde de SBD cihazını başlatmak için aşağıdaki komutu kullanın.
/usr/share/sbd/sbd.sh start
SBD daemon'ını her iki düğümde de test etmek için aşağıdaki komutu kullanın.
sbd -d <SBD Device Name> list
Sonuçlar, her iki düğümde de yapılandırmadan sonra iki girdi gösterir.
Aşağıdaki test iletisini düğümlerinizden birine gönderin.
sbd -d <SBD Device Name> message <node2> <message>
İkinci düğümde (düğüm2) ileti durumunu denetlemek için aşağıdaki komutu kullanın.
sbd -d <SBD Device Name> list
SBD yapılandırmasını benimsemek için /etc/sysconfig/sbd dosyasını her iki düğümde de aşağıdaki gibi güncelleştirin.
SBD_DEVICE=" <SBD Device Name>" SBD_WATCHDOG="yes" SBD_PACEMAKER="yes" SBD_STARTMODE="clean" SBD_OPTS=""
Birincil düğümde (node1) pacemaker hizmetini başlatmak için aşağıdaki komutu kullanın.
systemctl start pacemaker
Pacemaker hizmeti başarısız olursa, bu makalenin devamında Senaryo 5: Pacemaker hizmeti başarısız oluyor bölümüne bakın.
Düğümü kümeye ekleme
Düğümün kümeye katılmasına izin vermek için node2 üzerinde aşağıdaki komutu çalıştırın.
ha-cluster-join
Kümeye katılma sırasında hata alırsanız, bu makalenin devamında Senaryo 6: Node2 kümeye katılamıyor bölümüne bakın.
Kümeyi doğrulama
Her iki düğümde de kümeyi ilk kez denetlemek ve isteğe bağlı olarak başlatmak için aşağıdaki komutları kullanın.
systemctl status pacemaker systemctl start pacemaker
Her iki düğümün de çevrimiçi olduğundan emin olmak için aşağıdaki komutu çalıştırın. Kümenin düğümlerinden herhangi birinde çalıştırabilirsiniz.
crm_mon
Küme durumunu denetlemek için hawk'da da oturum açabilirsiniz:
https://\<node IP>:7630
. Varsayılan kullanıcı hacluster, parola ise linux şeklindedir. Gerekirse komutunu kullanarak parolayıpasswd
değiştirebilirsiniz.
Küme özelliklerini ve kaynaklarını yapılandırma
Bu bölümde küme kaynaklarını yapılandırma adımları açıklanmaktadır. Bu örnekte, aşağıdaki kaynakları ayarlarsınız. SUSE HA kılavuzuna başvurarak geri kalanını (gerekirse) yapılandırabilirsiniz.
- Küme önyüklemesi
- Eskrim cihazı
- Sanal IP adresi
Yapılandırmayı yalnızca birincil düğümde yapın.
Küme önyükleme dosyasını oluşturun ve aşağıdaki metni ekleyerek yapılandırın.
sapprdhdb95:~ # vi crm-bs.txt # enter the following to crm-bs.txt property $id="cib-bootstrap-options" \ no-quorum-policy="ignore" \ stonith-enabled="true" \ stonith-action="reboot" \ stonith-timeout="150s" rsc_defaults $id="rsc-options" \ resource-stickiness="1000" \ migration-threshold="5000" op_defaults $id="op-options" \ timeout="600"
Yapılandırmayı kümeye eklemek için aşağıdaki komutu kullanın.
crm configure load update crm-bs.txt
Kaynağı ekleyerek, dosyayı oluşturarak ve metni aşağıdaki gibi ekleyerek eskrim cihazını yapılandırın.
# vi crm-sbd.txt # enter the following to crm-sbd.txt primitive stonith-sbd stonith:external/sbd \ params pcmk_delay_max="15"
Yapılandırmayı kümeye eklemek için aşağıdaki komutu kullanın.
crm configure load update crm-sbd.txt
Dosyayı oluşturup aşağıdaki metni ekleyerek kaynağın sanal IP adresini ekleyin.
# vi crm-vip.txt primitive rsc_ip_HA1_HDB10 ocf:heartbeat:IPaddr2 \ operations $id="rsc_ip_HA1_HDB10-operations" \ op monitor interval="10s" timeout="20s" \ params ip="10.35.0.197"
Yapılandırmayı kümeye eklemek için aşağıdaki komutu kullanın.
crm configure load update crm-vip.txt
crm_mon
Kaynakları doğrulamak için komutunu kullanın.Sonuçlar iki kaynağı gösterir.
Ayrıca durumu https://< node IP adresi>:7630/cib/live/state adresinden de de kontrol edebilirsiniz.
Yük devretme işlemini test etme
Yük devretme işlemini test etmek için aşağıdaki komutu kullanarak node1 üzerinde pacemaker hizmetini durdurun.
Service pacemaker stop
Kaynaklar düğüm2'ye yük devreder.
Node2 üzerinde pacemaker hizmetini durdurun ve kaynaklar node1'e yük devrediyor.
Yük devretmeden önceki durum şöyledir:
Yük devretme sonrasındaki durum şöyledir:
Sorun giderme
Bu bölümde, kurulum sırasında karşılaşabileceğiniz hata senaryoları açıklanmaktadır.
Senaryo 1: Küme düğümü çevrimiçi değil
Küme Yöneticisi'nde düğümlerden herhangi biri çevrimiçi gösterilmiyorsa, çevrimiçi yapmak için bu yordamı deneyebilirsiniz.
iSCSI hizmetini başlatmak için aşağıdaki komutu kullanın.
service iscsid start
Bu iSCSI düğümünde oturum açmak için aşağıdaki komutu kullanın.
iscsiadm -m node -l
Beklenen çıkış şöyle görünür:
sapprdhdb45:~ # iscsiadm -m node -l Logging in to [iface: default, target: iqn.1992-08.com.netapp:hanadc11:1:t020, portal: 10.250.22.11,3260] (multiple) Logging in to [iface: default, target: iqn.1992-08.com.netapp:hanadc11:1:t020, portal: 10.250.22.12,3260] (multiple) Logging in to [iface: default, target: iqn.1992-08.com.netapp:hanadc11:1:t020, portal: 10.250.22.22,3260] (multiple) Logging in to [iface: default, target: iqn.1992-08.com.netapp:hanadc11:1:t020, portal: 10.250.22.21,3260] (multiple) Login to [iface: default, target: iqn.1992-08.com.netapp:hanadc11:1:t020, portal: 10.250.22.11,3260] successful. Login to [iface: default, target: iqn.1992-08.com.netapp:hanadc11:1:t020, portal: 10.250.22.12,3260] successful. Login to [iface: default, target: iqn.1992-08.com.netapp:hanadc11:1:t020, portal: 10.250.22.22,3260] successful. Login to [iface: default, target: iqn.1992-08.com.netapp:hanadc11:1:t020, portal: 10.250.22.21,3260] successful.
Senaryo 2: Yast2 grafik görünümünü göstermiyor
Bu makaledeki yüksek kullanılabilirlik kümesini ayarlamak için yast2 grafik ekranı kullanılır. Yast2, gösterildiği gibi grafik pencereyle açılmazsa ve bir Qt hatası oluşturursa, gerekli paketleri yüklemek için aşağıdaki adımları uygulayın. Grafik pencereyle açılırsa adımları atlayabilirsiniz.
Qt hatasının bir örneği aşağıda verilmişti:
Beklenen çıktının bir örneği aşağıda verilmişti:
Kullanıcı "kök" olarak oturum açtığınızdan ve paketleri indirip yüklemek için SMT'nin ayarlandığından emin olun.
Yazılım Yazılım>Yönetimi>Bağımlılıkları'na> gidin ve Önerilen paketleri yükle'yi seçin.
Not
Her iki düğümden de yast2 grafik görünümüne erişebilmek için her iki düğümde de adımları gerçekleştirin.
Aşağıdaki ekran görüntüsünde beklenen ekran gösterilmektedir.
Bağımlılıklar'ın altında Önerilen Paketleri Yükle'yi seçin.
Değişiklikleri gözden geçirin ve Tamam'ı seçin.
Paket yüklemesi devam eder.
İleri’yi seçin.
Yükleme Başarıyla Tamamlandı ekranı görüntülendiğinde Son'u seçin.
libqt4 ve libyui-qt paketlerini yüklemek için aşağıdaki komutları kullanın.
zypper -n install libqt4
zypper -n install libyui-qt
Yast2 artık grafik görünümü açabilir.
Senaryo 3: Yast2 yüksek kullanılabilirlik seçeneğini göstermiyor
Yüksek kullanılabilirlik seçeneğinin yast2 denetim merkezinde görünür olması için diğer paketleri yüklemeniz gerekir.
Yast2>Yazılım>Yazılım Yönetimi'ne gidin. Ardından Yazılım>Çevrimiçi Güncelleştirmesi'ne tıklayın.
Aşağıdaki öğeler için desenleri seçin. Ardından Kabul Et'i seçin.
- SAP HANA sunucu tabanı
- C/C++ derleyicisi ve araçları
- Yüksek kullanılabilirlik
- SAP uygulama sunucusu tabanı
Bağımlılıkları çözmek için değiştirilen paketler listesinde Devam'ı seçin.
Yükleme Gerçekleştiriliyor durumu sayfasında İleri'yi seçin.
Yükleme tamamlandığında bir yükleme raporu görüntülenir. Son'u seçin.
Senaryo 4: HANA yüklemesi gcc derlemeleri hatasıyla başarısız oluyor
HANA yüklemesi başarısız olursa aşağıdaki hatayı alabilirsiniz.
Sorunu çözmek için aşağıdaki ekran görüntüsünde gösterildiği gibi libgcc_sl ve libstdc++6 kitaplıklarını yükleyin.
Senaryo 5: Pacemaker hizmeti başarısız oluyor
Pacemaker hizmeti başlatılamıyorsa aşağıdaki bilgiler görüntülenir.
sapprdhdb95:/ # systemctl start pacemaker
A dependency job for pacemaker.service failed. See 'journalctl -xn' for details.
sapprdhdb95:/ # journalctl -xn
-- Logs begin at Thu 2017-09-28 09:28:14 EDT, end at Thu 2017-09-28 21:48:27 EDT. --
Sep 28 21:48:27 sapprdhdb95 corosync[68812]: [SERV ] Service engine unloaded: corosync configuration map
Sep 28 21:48:27 sapprdhdb95 corosync[68812]: [QB ] withdrawing server sockets
Sep 28 21:48:27 sapprdhdb95 corosync[68812]: [SERV ] Service engine unloaded: corosync configuration ser
Sep 28 21:48:27 sapprdhdb95 corosync[68812]: [QB ] withdrawing server sockets
Sep 28 21:48:27 sapprdhdb95 corosync[68812]: [SERV ] Service engine unloaded: corosync cluster closed pr
Sep 28 21:48:27 sapprdhdb95 corosync[68812]: [QB ] withdrawing server sockets
Sep 28 21:48:27 sapprdhdb95 corosync[68812]: [SERV ] Service engine unloaded: corosync cluster quorum se
Sep 28 21:48:27 sapprdhdb95 corosync[68812]: [SERV ] Service engine unloaded: corosync profile loading s
Sep 28 21:48:27 sapprdhdb95 corosync[68812]: [MAIN ] Corosync Cluster Engine exiting normally
Sep 28 21:48:27 sapprdhdb95 systemd[1]: Dependency failed for Pacemaker High Availability Cluster Manager
-- Subject: Unit pacemaker.service has failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit pacemaker.service has failed.
--
-- The result is dependency.
sapprdhdb95:/ # tail -f /var/log/messages
2017-09-28T18:44:29.675814-04:00 sapprdhdb95 corosync[57600]: [QB ] withdrawing server sockets
2017-09-28T18:44:29.676023-04:00 sapprdhdb95 corosync[57600]: [SERV ] Service engine unloaded: corosync cluster closed process group service v1.01
2017-09-28T18:44:29.725885-04:00 sapprdhdb95 corosync[57600]: [QB ] withdrawing server sockets
2017-09-28T18:44:29.726069-04:00 sapprdhdb95 corosync[57600]: [SERV ] Service engine unloaded: corosync cluster quorum service v0.1
2017-09-28T18:44:29.726164-04:00 sapprdhdb95 corosync[57600]: [SERV ] Service engine unloaded: corosync profile loading service
2017-09-28T18:44:29.776349-04:00 sapprdhdb95 corosync[57600]: [MAIN ] Corosync Cluster Engine exiting normally
2017-09-28T18:44:29.778177-04:00 sapprdhdb95 systemd[1]: Dependency failed for Pacemaker High Availability Cluster Manager.
2017-09-28T18:44:40.141030-04:00 sapprdhdb95 systemd[1]: [/usr/lib/systemd/system/fstrim.timer:8] Unknown lvalue 'Persistent' in section 'Timer'
2017-09-28T18:45:01.275038-04:00 sapprdhdb95 cron[57995]: pam_unix(crond:session): session opened for user root by (uid=0)
2017-09-28T18:45:01.308066-04:00 sapprdhdb95 CRON[57995]: pam_unix(crond:session): session closed for user root
Düzeltmek için /usr/lib/systemd/system/fstrim.timer dosyasından aşağıdaki satırı silin:
Persistent=true
Senaryo 6: Node2 kümeye katılamıyor
ha-cluster-join komutu aracılığıyla node2'yi mevcut kümeye birleştirmeyle ilgili bir sorun varsa aşağıdaki hata görüntülenir.
ERROR: Can’t retrieve SSH keys from <Primary Node>
Düzeltmek için:
Her iki düğümde de aşağıdaki komutları çalıştırın.
ssh-keygen -q -f /root/.ssh/id_rsa -C 'Cluster Internal' -N '' cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
Düğüm2'nin kümeye eklendiğini onaylayın.
Sonraki adımlar
SUSE HA kurulumu hakkında daha fazla bilgiyi aşağıdaki makalelerde bulabilirsiniz:
- SAP HANA SR Performans İçin İyileştirilmiş Senaryo (SUSE web sitesi)
- Eskrim ve eskrim cihazları (SUSE web sitesi)
- SAP HANA için Pacemaker Kümesini Kullanmaya Hazır Olun – 1. Bölüm: Temel Bilgiler (SAP blogu)
- SAP HANA için Pacemaker Kümesini Kullanmaya Hazır Olun – 2. Bölüm: Her İki Düğümün Hatası (SAP blogu)
- İşletim sistemi yedekleme ve geri yükleme