PostgreSQL patroni install
Patroni Nedir
Patroni, PostgreSQL kümesinin otomatik yönetimini sağlayan bir araçtır. Otomatik failover, yük dengeleme, yapılandırma yönetimi gibi görevleri üstlenir.
Ne İşe Yarar? :
PostgreSQL kümesinin durumunu izler, otomatik failover gerçekleştirir ve küme yönetimi için kullanılır.
İletişim ve Çalışma:
PostgreSQL sunucuları, etcd gibi depolama sistemlerinden küme durumu ve yapılandırma bilgilerini alır. Patroni, PostgreSQL sunucuları arasında gerekli durum güncellemelerini sağlar.
Etcd Nedir:
Etcd, dağıtık bir anahtar-değer depolama sistemidir. Kubernetes, CoreOS ve birçok dağıtık sistem tarafından yapılandırma bilgileri, durum bilgileri gibi verileri depolamak için kullanılır.
Ne İşe Yarar?:
PostgreSQL kümesinin durum bilgileri, yapılandırma ve küme koordinasyonu için kullanılır. Kümenin durumunu tutar ve değişiklikleri izler.
İletişim ve Çalışma:
PostgreSQL kümesi, etcd üzerinde belirli bir dizinde durum bilgilerini saklar ve bu dizideki değişiklikleri izleyerek birbirleriyle senkronize olurlar. PostgreSQL sunucuları etcd ile HTTP veya gRPC protokollerini kullanarak iletişim kurar.
HAProxy Nedir:
Haproxy, TCP/HTTP tabanlı uygulamalar için yük dengeleyici ve ters proxy’dir. Talepleri belirli bir grup sunucuya yönlendirerek yükü dengeler.
Ne İşe Yarar?:
PostgreSQL sunucularına gelen istekleri dağıtarak performansı artırır ve yük dengeleme sağlar.
İletişim ve Çalışma:
Haproxy, PostgreSQL sunucularına gelen talepleri belirli bir kural setine göre yönlendirir. PostgreSQL sunucuları ile TCP veya HTTP üzerinden iletişim kurar.
Watchdog Nedir :
Watchdog, PostgreSQL kümesindeki sunucuların sağlığını kontrol eden bir araçtır. Küme içindeki sunucuların durumunu izler ve gerektiğinde müdahale eder.
Ne İşe Yarar?:
PostgreSQL kümesindeki sunucuların sağlığını kontrol eder, ölçer ve müdahale eder. Küme içindeki sunucuların çalışma durumunu takip eder.
İletişim ve Çalışma:
Watchdog, PostgreSQL sunucularının durumunu etcd veya benzeri depolama sistemlerinde saklar ve sürekli olarak kontrol eder. Eğer bir sunucu sağlık durumunu kaybederse, Watchdog diğer sunuculara bilgi göndererek müdahale eder.
Keepalived Nedir:
Keepalived, yüksek erişilebilirlik sağlamak için kullanılan bir araçtır. Sanal IP (VIP) oluşturarak ve bu VIP’yi belirli bir sunucuya yönlendirerek yükü dengeler.
Ne İşe Yarar?:
PostgreSQL kümesine gelen talepleri belirli bir sunucuya yönlendirerek, yük dengelemeyi ve yüksek erişilebilirliği sağlar.
İletişim ve Çalışma:
Keepalived, PostgreSQL sunucularının durumunu izleyerek, PostgreSQL kümesindeki lider sunucuyu belirler ve VIP’yi bu sunucuya yönlendirir.
Kurulum ve Hostlarım
HOSTNAME IP ADDRESS
node1 192.168.2.10 Patroni ve PostgreSQL
node2 192.168.2.11 Patroni ve PostgreSQL
etcd haproxy 192.168.2.12 ETCD Server ve HA Proxy
Kurulumları Github Sayfamda Adım Adım Kopyala Yapıştır Şeklinde Kurabilirsiniz:
https://github.com/ibrahimyldz11q/patroni_install.git
Bu araçlar bir araya getirilerek, bir PostgreSQL kümesinin yüksek erişilebilirlik, hata toleransı ve otomatik failover yetenekleriyle çalışmasını sağlayan karmaşık bir altyapı oluşturulabilir. Etcd, kümenin durumunu saklar; Patroni, PostgreSQL kümesini yönetir; HAProxy, trafiği dengeleyerek yüksek erişilebilirlik sağlar; Watchdog, sunucu durumunu izler ve failover süreçlerini yönetir; Keepalived ise sanal IP adresini yöneterek hızlı bir şekilde failover sağlar.