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

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.

Al_Yapay_Zeka

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

Linux ve Windows Arasında Dosya Paylaşımında Karşılaşılan En Yaygın 7 Sorun ve Çözümleri

Linux ve Windows, iki farklı dünyayı temsil ederler. Bir yanda özgürlük, açık kaynak ve özelleştirme; diğer yanda ise kullanıcı dostu bir arayüz ve yaygın yazılımlar bulunur. Ancak, bu iki sistem arasındaki etkileşim, dosya paylaşımı söz konusu olduğunda...

Mikroservislerde Veritabanı Yönetimi: Veri Tutarlılığı ve Performans Dengesini Sağlamak İçin 5 Strateji

Mikroservis mimarisi, son yıllarda yazılım dünyasında en popüler yapı taşlarından biri haline geldi. Her şeyin mikro hale gelmesi, sistemlerin daha ölçeklenebilir, esnek ve yönetilebilir olmasını sağladı. Ancak, mikroservislerin getirdiği faydaların yanı...

Linux'ta Apache ModSecurity Kurulumu ve Yapılandırması: Web Sunucunuzun Güvenliğini Artırın

Web sitenizin güvenliği her geçen gün daha da önemli hale geliyor. Kötü niyetli saldırılar, siber tehditler ve güvenlik açıkları, işletmeniz için büyük bir risk oluşturabilir. Neyse ki, bu tehditlere karşı alabileceğiniz önlemler var. Apache web sunucusunda...

Linux ile Prometheus Kullanarak Sunucu İzleme: Kolay Adımlarla Başlangıç

Bir gün ofisteki bilgisayarımda çalışırken, aniden sistemin yavaşladığını fark ettim. Her şey biraz garipti, sunucu yanıt vermekte zorlanıyordu ve işlemler yavaş ilerliyordu. "Acaba bu problemi çözmek için ne yapmalıyım?" diye düşünürken, aklıma bir şey...

GitLab Nasıl Kurulur? (Linux) – Adım Adım Kılavuz

GitLab, yazılım geliştiricilerinin projelerini kolayca yönetebileceği, kodlarını saklayabileceği ve ekipleriyle işbirliği yapabileceği mükemmel bir araçtır. Bugün sizlere GitLab’ı Linux sisteminde nasıl kuracağınızı adım adım anlatacağım. Hazır olun,...

Node.js Nasıl Kurulur? Linux Üzerinde Adım Adım Rehber

Merhaba! Bugün, web geliştirme dünyasında önemli bir yere sahip olan Node.js'i Linux sisteminizde nasıl kuracağınızı anlatacağım. Adım adım rehberimle Node.js'i kolayca kurabilecek, JavaScript ile arka uç uygulamaları geliştirmeye başlayabileceksiniz....