HAProxy Nasıl Kurulur ve Load Balancing Yapılır?

HAProxy ile yük dengeleme yapmayı ve trafiği doğru bir şekilde yönlendirmeyi öğrenmek isteyenler için kapsamlı bir rehber.

BFS

Web siteniz hızla büyüdü, kullanıcı trafiği arttı ve her şey yavaşlamaya başladı. Hızlı yüklenen sayfalar ve kesintisiz bir kullanıcı deneyimi sağlamak için bir çözüm arayışına girdiniz. İşte karşınızda HAProxy! Peki, HAProxy nedir, nasıl kurulur ve yük dengeleme (load balancing) nasıl yapılır? İşte adım adım her şeyi öğreneceğiniz bir yazı.

HAProxy Nedir?



HAProxy, yüksek trafikli web sitelerinde kullanılabilecek, açık kaynak kodlu ve yüksek performanslı bir yük dengeleme aracıdır. Trafiği birden fazla sunucuya dağıtarak, sitenizin kesintisiz ve hızlı çalışmasını sağlar. Kısacası, HAProxy’nin görevi gelen web trafiğini dengeleyerek, her bir sunucuya yükü eşit bir şekilde dağıtmak.

HAProxy Kurulumu: Adım Adım Kılavuz



HAProxy’yi kurmadan önce, sunucunuzun Linux tabanlı bir işletim sistemi kullandığından emin olun. Ubuntu veya CentOS gibi popüler dağıtımlar en uygun olanlardır. Şimdi başlayalım!

1. HAProxy’nin Kurulumu

Ubuntu üzerinde HAProxy kurulumu için terminal üzerinden aşağıdaki komutu kullanabilirsiniz:

sudo apt update


Daha sonra HAProxy’yi kurmak için şu komutu çalıştırın:

sudo apt install haproxy


Kurulum tamamlandıktan sonra, HAProxy servisinin otomatik olarak başlatıldığından emin olun:

sudo systemctl enable haproxy


2. HAProxy Konfigürasyonu

HAProxy’yi kurduktan sonra, yapılandırma dosyasını düzenlemeniz gerekir. HAProxy’nin yapılandırma dosyası, "/etc/haproxy/haproxy.cfg" yolunda yer almaktadır. Şimdi bu dosyayı düzenleyelim:

sudo nano /etc/haproxy/haproxy.cfg


Burada, konfigürasyon dosyasını açtıktan sonra yapmanız gereken şey, gelen trafiği doğru sunuculara yönlendirmektir. Basit bir yapılandırma örneği şöyle olabilir:

frontend http_front
    bind *:80
    default_backend http_back

backend http_back
    balance roundrobin
    server server1 192.168.1.1:80 check
    server server2 192.168.1.2:80 check


Bu yapılandırma, gelen HTTP isteklerini iki farklı sunucuya (192.168.1.1 ve 192.168.1.2) yönlendirecektir. "roundrobin" dengeleme algoritması, yükü her iki sunucuya eşit şekilde dağıtır.

3. HAProxy’yi Yeniden Başlatma

Yapılandırma dosyasını düzenledikten sonra, HAProxy servisini yeniden başlatmalısınız:

sudo systemctl restart haproxy


Artık HAProxy, gelen trafiği iki sunucuya dağıtmaya başladı!

Load Balancing (Yük Dengeleme) Yapmak



HAProxy’nin temel amacı, gelen web trafiğini birden fazla sunucuya yönlendirerek, yükü dengelemektir. Yük dengeleme, hem performans hem de güvenlik açısından son derece önemlidir. HAProxy’nin sağladığı birkaç farklı algoritma ile yük dengeleme yapabilirsiniz:

1. Round Robin
Bu, en basit ve yaygın algoritmadır. Her gelen isteği sırayla bir sonraki sunucuya yönlendirir. Yukarıdaki örnekte zaten roundrobin algoritmasını kullanıyorduk.

2. Least Connections
Bu algoritma, en az bağlantıya sahip sunucuya yönlendirme yapar. Yüksek trafikli sitelerde, bu algoritma oldukça faydalıdır çünkü sunucularda yoğunluk olmadığından her zaman en hızlı şekilde işlem yapılır.

Yapılandırma örneği:

backend http_back
    balance leastconn
    server server1 192.168.1.1:80 check
    server server2 192.168.1.2:80 check


3. Source IP Hash
Bu algoritma, kullanıcıların IP adreslerine göre yükü yönlendirir. Her kullanıcı aynı sunucuya yönlendirilir, bu sayede oturumlar kesilmeden devam eder. E-ticaret siteleri gibi uygulamalarda bu algoritma oldukça kullanışlıdır.

Yapılandırma örneği:

backend http_back
    balance source
    server server1 192.168.1.1:80 check
    server server2 192.168.1.2:80 check


HAProxy ile SSL Desteği



Web trafiğinizin güvenliğini sağlamak için HTTPS kullanmanız önemlidir. HAProxy, SSL şifrelemesi için de yapılandırılabilir. İşte basit bir SSL yapılandırması:

frontend https_front
    bind *:443 ssl crt /etc/ssl/certs/mycert.pem
    default_backend http_back


Yukarıdaki yapılandırma, gelen HTTPS isteklerini HAProxy üzerinden yönlendirir ve SSL sertifikasını kullanarak şifreler.

HAProxy İzleme ve Performans İzleme



HAProxy, gerçek zamanlı izleme için oldukça güçlü bir araca sahiptir. "Stats" sayfasını kullanarak HAProxy’nin durumunu izleyebilirsiniz. Konfigürasyon dosyasına şu satırı ekleyerek bu özelliği etkinleştirebilirsiniz:

listen stats
    bind *:9000
    stats enable
    stats uri /stats
    stats auth admin:admin


Bu ayar, HAProxy’nin 9000 numaralı portunda bir izleme sayfası oluşturur ve "admin" kullanıcı adıyla erişilebilir.

Sonuç



HAProxy ile yük dengeleme yapmak, web sitenizin hızını ve güvenliğini artırmak için mükemmel bir çözümdür. Birkaç basit adım ile kurulum yaparak, trafiği etkili bir şekilde yönetebilirsiniz. HAProxy, yüksek trafikli siteler için vazgeçilmez bir araç olup, daha verimli ve güvenli bir web deneyimi sağlar. Yapılandırmalarınızda daha fazla detay ve kişiselleştirme ile site performansınızı en üst düzeye çıkarabilirsiniz!

İlgili Yazılar

Benzer konularda diğer yazılarımız

DirectAdmin Nasıl Kurulur ve Yapılandırılır?

DirectAdmin Nedir ve Neden Kullanılır?Merhaba arkadaşlar! Bugün, birçok web yöneticisinin en çok tercih ettiği kontrol paneli olan DirectAdmin’i nasıl kuracağımızı ve yapılandıracağımızı keşfedeceğiz. İlk başta, DirectAdmin nedir, biraz ondan bahsedelim.DirectAdmin,...

Cronjob 'Not Running' Hatası ve Çözümü: Sorunları Çözmenin Adımları

Bir sabah işinize başlamadan önce, otomatik olarak çalışması gereken bir cronjob’ın neden çalışmadığını düşündünüz mü? Ne yazık ki, bu tür sorunlarla karşılaşmak oldukça yaygın, ancak çözümü de bir o kadar basit olabilir. Eğer siz de cronjob 'Not Running'...

Linux'ta Nagios ile İzleme: Sistem Performansınızı Nasıl Mükemmel Hale Getirirsiniz?

Merhaba Sistem Tutkunları! Sistemlerinizin nabzını tutmak, performansını artırmak ve sorunları daha ortaya çıkmadan yakalamak, günümüz dijital dünyasında olmazsa olmaz. Peki, bu zorlu görevde yanınızda kim var? Tabii ki Nagios! Linux ortamında güçlü,...