Linux Sistemler (OpenSource)

RedHat 7.3 üzerinde Pacemaker , Corosync , PCS ile HA Cluster nasıl oluşturulur ?

Merhaba,

Bu makalemde sizlere RedHat 7.3 üzerinde Pacemaker , Corosync , PCS ile HA Cluster oluşturmayı anlatacağım. Öncelikle Linux Üzerinde HA Cluster nedir ? Birkaç cümle ile açıklayalım. Linux HA Cluster bir çok servisin HA olarak çalışmasını sağlar. Windows’tan farklı olarak daha stabil bir çalışma mimarisine sahiptir. Windows cluster ile yapamadığımız MySQL Cluster’i Linux üzerinde yapabiliriz. Database mimarilerinde Genel anlamda (Oracle , MySQL , Portgre SQL gibi) Linux üzerinde çalıştırıyoruz. Çünkü daha stabil ve performanslı çalışıyor. Fakat bu durumda da HA Mimarisini oluşturmak istediğimizde çok iyi derece Linux bilgisi gerekiyor. Bu Makalemde size Cluster Mimarisinin oluşturulmasını anlatmak istedim.

Şimdi yapılandırmamıza başlayabiliriz.


Selinux servislerini disabled yapıyoruz.


:wq komutu ile kaydedip çıkıyoruz.



Firewall servisimizi kapatıyoruz ve disable mode’a alıyoruz.



Default kurulumda gelen mariadb-libs paketini görüntüleyelim.


Mariadb-libs paketini kaldırmak için bu paketle ilişkili olan postfix paketini ilk olarak kaldırmalıyız ve sonrasında mariadb-libs paketini kaldırabiliriz.


Bu şekilde default kurulumda gelen mariadb-libs paketini kaldırdık.


Host dosyamıza sunucu isimlerimizi (Cluster’da kullanacağımız) ve ip adreslerimizi tanımlayalım.


Corosync için log dizinimizi oluşturalım.


Corosync.log dosyamızı oluşturalım.



Corosync.conf dosyamızı oluşturalım.





Oluşturduğumuz corosync.conf dosyamızı diğer host’umuza scp ile aktaralım.


Corosync authentication için authkey oluşturmalıyız ve bu işlem için corosync-keygen komutunu kullanırız.


Key’imiz oluştu.


Oluşan key dosyamızı diğer hostumuza scp ile aktaralım.


İşlem başarılı.


Corosync.conf dosyamıza çalıştırılabilir izni olan 755 iznini verelim.


Corosync.conf dosyamızın içeriğini düzenleyelim.


Ekrandaki gibi sunucu ip adreslerine göre düzenleyelim. Ben 2 host kullanacağım için conf dosyama 2 host’un bilgilerini girdim.


Chmod 400 izni ile dosyamızı kısıtlayalım.


Hazırladığımız conf dosyasını diğer host’a scp ile aktaralım.



İkinci host’umuza geçelim ve corosync.conf dosyamızı görüntüleyelim.


İkinci hostumuzda corosync log dizinini oluşturalım.


Corosync.log dosyamızı oluşturalım.


Birinci host’umuza dönelim ve coroync için service.d dizinimizi oluşturalım.


İkinci hostumuza dönelim ve corosync için service.d dizinimizi oluşturalım.


Corosync için pcmk servis dosyamızı oluşturalım.


Pcmk servis dosyamızın içeriğini ayarlayalım.



Ayarlarını yaptığımız pcmk servis dosyamızı ikinci hostumuza scp ile aktaralım.


Birinci hostumuzda Cluster manager için QUORUM timeout değerimizi girelim.


İkinci hostumuzda QUORUM timeout için değerimizi girelim.


Birinci hostumuzda QUORUM timeout dizinimizi girelim.


İkinci hostumuzda QUORUM timeout dizinimizi girelim.


Her iki hostumuzda da hacluster user’unun parolasını ayarlayalım (her ikisinde de aynı parolayı kullanalım. Hacluster user’unu pacemaker kendisi oluşturmuştur. Biz manual oluşturmayız.)


Birinci hostumuzda corosync servisimizi start edelim.


Yine birinci hostumuzda corosync servisimizin durumuna bakalım aktif olmuş mu ?


İkinci hostumuzda corosync servisimizi start edelim.


İkinci hostumuzda corosync servisimizin durumunu kontrol edelim start olmuş mu ?


Birinci hostumuzda corosync servisimizin açılışta otomatik başlamasını kapalım.


İkinci hostumuzda corosync servisimizin otomatik başlamasını kapatalım.


Birinci hostumuzda pacemaker servisimizi start edelim.


İkinci hostumuzda pacemaker servisimizi start edelim.


Birinci hostumuzda pacemaker servisimizi stop edelim.


İkinci hostumuzda da pacemaker servisimizi stop edelim.


Pacemaker servisimizin server restart sonrası otomatik start olmasını ayarlayalım.


İkinci hostumuzda server restart sonrası pacemaker servisimizin otomatik start olmasını ayarlayalım.


Birinci hostumuzda pcsd servisimizi start edelim.


İkinci hostumuzda pcsd servisimizi start edelim.


Birinci hostumuzda NetworkManager servisinin server restart sonrası otomatik başlamasını kapatalım.


İkinci hostumuzda server restart sonrası NetworkManager servisimizin otomatik başlamasını kapatalım.



Sistemlerin ikisinide init 6 komutu ile restart edelim.


Her iki hostumuzda da pcsd servisini start edelim.


Her iki hostumuzda da pcsd servisimizin açılışta otomatik başlamasını aktif edelim.


Her iki hostumuzuda init 6 ile tekrar restart edelim.




Her iki hostumuzda da servislerin (pacemaker,pcsd,corosync) start olup olmadıklarını kontrol edelim.


Her iki hostumuzdaki corosync.conf dosyasının ismini değiştirelim.



Birinci hostumuzda yeni bir corosync.conf dosyası oluşturalım.



İkinci hostumuzda yeni bir corosync.conf dosyası oluşturalım.




Cluster için her iki node’un authentication olması lazım. Bunun için ilk olarak pcs cluster auth komutu ile node’ları authentication yapalım.



Cluster’ımızı oluşturalım. Ben DbCluster ismini kullandım.



Her iki node’da iscsi ve iscsid servisini start edelim.


Her iki node’a iscsi diskimizi ekleyelim.









İscsi ile gelen diskimizi fdisk komutu ile bölümleyelim ve hazırlayalım. (eğer iscsi diskinizi

göremezseniz sistemleri restart edin.)


İşlemler sonrası her iki hostumuzuda restart edelim.


Restart sonrası her iki hostumuzda da sdb1 isimli partition’ı göreceğiz.




Pcsd servisinin web arayüzüne girelim.




Oluşturduğumuz cluster’ı web gui’ye ekleyelim.


Node’larda olması gereken servisleri görüyoruz. Bazıları stop durumda.




Her iki hostumuzda da Stop durumda olan pacemaker ve corosync servisimizi start edelim ve tekrar chkconfig üzerinde on yaparak açılışta otomatik başlamasını sağlayalım.


Şu anda webgui’de görüyoruz ki her yer yeşil J


Cluster mimarisinde kullanacağımız ClusterIP’yi oluşturalım.


Yine cluster mimarisinde kullanacağımız data disk’imizi oluşturalım.


Her iki hostumuzuda restart edelim.


Sistemler açıldığında webgui üzerinden Cluster Properties’lerini ekrandaki gibi ayarlayalım.


Cluster Properties ayarları yapıldığından sonra resources bölümünde resource’ların aktif ve yeşil olduğunu göreceksiniz.


Bir resource group oluşturalım.


Ben Cluster Üzerinde MySQL koşturacağım için resource group’a mysql ismini verdim.


Resource group oluştu ve cluster için kurulumumuzu tamamladık. Buradan sonra hangi servisi cluster üzerinde koşturacaksak o servisin resource’ini ekliyoruz. Birden fazla resource ve resource group aynı anda çalışabilir. Birden fazla cluster ip’si ayarlanabilir.

Bu makalemin sonuna geldim. Bir sonraki makalemde görüşmek üzere.

About author

1987 Gaziantep doğumluyum. 2004 yılından bu yana aktif olarak IT sektöründe yer alıyorum. Dünyada 33 ülkede ve Türkiye de 43 ilde projeler yaptım. Şu anda bilişim sektöründe Kıdemli Danışman olarak çalışıyorum. Microsoft tarafında 5 yıldır MCT ünvanına sahibim. Ayrıca Microsoft tarafında MCSE,MCSA ünvanlarının sahibiyim. Microsoft, Linux ve Oracle tarafında içerik üretiyorum.
Related posts
Bulut BilişimLinux Sistemler (OpenSource)

Ubuntu 18.04 LTS Üzerine NextCloud Kurulumu nasıl yapılır? – (Bölüm 5 AD-Ldap ile Kullanıcı Ekleme)

Bulut BilişimLinux Sistemler (OpenSource)

Ubuntu 18.04 LTS Üzerine NextCloud Kurulumu nasıl yapılır? – (Bölüm 4 Domain ve SSL Konfigürasyonu)

Bulut BilişimLinux Sistemler (OpenSource)

Ubuntu 18.04 LTS Üzerine NextCloud Kurulumu nasıl yapılır? – (Bölüm 3 Nextcloud Kurulum)

Bulut BilişimLinux Sistemler (OpenSource)

Ubuntu 18.04 LTS Üzerine NextCloud Kurulumu nasıl yapılır? – Bölüm 2 (Azure Üzerinde Ubuntu Server Kurulumu)

Portal güncellemelerinden haberdar olun!

 

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir