HAProxy, yüksek performanslı, açık kaynaklı bir yük dengeleyici ve proxy sunucusudur. Web sitenize gelen trafiği birden fazla sunucuya yönlendirerek, sisteminizin daha verimli çalışmasını sağlar. Bu sayede web siteniz daha hızlı, daha güvenilir ve ölçeklenebilir hale gelir. Eğer tüm bu özellikler size cazip geliyorsa, gelin birlikte HAProxy'yi nasıl kurup kullanabileceğimize göz atalım.
HAProxy Nedir?
HAProxy'nin sağladığı başlıca faydalar:
- Yük dengeleme: Trafiği birden fazla sunucuya paylaştırır.
- Yüksek erişilebilirlik: Eğer bir sunucu çalışmazsa, diğer sunucular devreye girer.
- SSL sonlandırma: Güvenli bağlantıları merkezi bir noktada sonlandırabilir.
- Yüksek performans: Hızlı ve verimli çalışır.
HAProxy Kurulumu
# 1. HAProxy Paketini Yükleme
kopyalasudo apt update sudo apt install haproxy
Komut başarılı bir şekilde çalıştıysa, HAProxy sisteminize kurulmuş olacak.
# 2. HAProxy’nin Çalıştığını Kontrol Etme
kopyalasudo systemctl status haproxy
Eğer "active (running)" yazıyorsa, HAProxy başarıyla çalışıyor demektir.
HAProxy Konfigürasyonu
# 1. Konfigürasyon Dosyasını Düzenleme
kopyalasudo nano /etc/haproxy/haproxy.cfg
HAProxy yapılandırma dosyasında en önemli kısımlar `frontend`, `backend` ve `listen` bölümleridir.
- Frontend: Gelen trafik burada karşılanır.
- Backend: Trafik burada yönlendirilir.
- Listen: Hem frontend hem de backend ayarlarını içerir.
Aşağıdaki örnek, 80 numaralı port üzerinden gelen istekleri 3 farklı web sunucusuna yönlendiren basit bir yapılandırmadır:
kopyalafrontend http_front bind *:80 default_backend http_back backend http_back balance roundrobin server web1 192.168.1.2:80 check server web2 192.168.1.3:80 check server web3 192.168.1.4:80 check
Yukarıdaki konfigürasyonda:
- `frontend http_front`: 80 portu üzerinden gelen trafiği alır.
- `backend http_back`: Trafiği `web1`, `web2`, ve `web3` sunucularına yönlendirir.
- `balance roundrobin`: Trafik, sunucular arasında round-robin yöntemiyle paylaştırılır.
# 2. Konfigürasyonu Kaydetme ve Uygulama
kopyalasudo systemctl restart haproxy
Bu adım, yeni yapılandırmanın uygulanmasını sağlar.
Yük Dengeleme Çeşitleri
1. Round-robin: Trafik, sunucular arasında sırayla dağıtılır. Bu, en yaygın kullanılan dengeleme yöntemidir.
2. Least Connections: Trafik, en az bağlantıya sahip sunucuya yönlendirilir.
3. Source IP Hashing: Trafik, istemcinin IP adresine göre belirli sunuculara yönlendirilir.
Yukarıda verdiğimiz örnekte roundrobin yöntemi kullanılıyor. Ancak, ihtiyacınıza göre farklı yöntemleri de seçebilirsiniz.
Sonuç
Hadi şimdi, yük dengelemenin keyfini çıkarın! Web sunucularınızın yükünü hafifletin ve daha hızlı, daha verimli bir deneyim sağlayın.