Kendi Sunucunuz Ubuntu’da HAProxy Yük Dengeleyici Kurulumu ve SSL Desteği

Yük dengeleyiciler, birden fazla sunucu arasında gelen trafiği dağıtarak web sitelerinin ve uygulamaların performansını ve kullanılabilirliğini iyileştirmeye yardımcı olan araçlardır. Ubuntu’da popüler bir yük dengeleyici çözümü olan HAProxy’yi kullanarak kendi yük dengeleyicinizi kurabilirsiniz.

Bu makalede, Ubuntu’da HAProxy’nin temel kurulumunu ve yapılandırmasını öğreneceksiniz. Ayrıca, HAProxy’ye SSL desteği eklemeyi de öğreneceksiniz.

HAProxy Kurulumu

Ubuntu paket yöneticisi aracılığıyla HAProxy’yi kurmak için aşağıdaki komutu kullanın:

sudo apt update
sudo apt install haproxy

Yapılandırma Dosyasını Düzenleme

HAProxy’nin yapılandırma dosyasını düzenlemek için aşağıdaki komutu kullanın:

sudo nano /etc/haproxy/haproxy.cfg

Bu dosya, HAProxy’nin nasıl çalışacağını belirler.

Örnek Yapılandırma

İki web sunucusuna sahip bir yük dengeleyici için örnek bir yapılandırma aşağıdaki gibidir:

global
    log /dev/log local0
    log /dev/log local1 notice
    chroot /var/lib/haproxy
    stats socket /run/haproxy/admin.sock mode 660 level admin
    stats timeout 30s
    user haproxy
    group haproxy
    daemon

defaults
    log global
    mode http
    option httplog
    option dontlognull
    timeout connect 5000
    timeout client 50000
    timeout server 50000

frontend web
    bind *:80
    mode http
    default_backend servers

backend servers
    mode http
    balance roundrobin
    server server1 192.168.1.101:80 check
    server server2 192.168.1.102:80 check

Bu yapılandırmada, HAProxy gelen tüm HTTP trafiğini servers arka plan sunucularına dağıtacaktır.

SSL Desteği Ekleme

HAProxy’ye SSL desteği eklemek için, frontend bölümünde mode değerini https olarak değiştirin ve backend bölümünde balance değerini roundrobin olarak bırakın. Ayrıca, server bölümlerinde ssl_certificate ve ssl_certificate_key değerlerini eklemeniz gerekir. Bu değerler, sunucunuzun SSL sertifikası ve anahtarını belirtir.

Örnek bir yapılandırma aşağıdaki gibidir:

global
    log /dev/log local0
    log /dev/log local1 notice
    chroot /var/lib/haproxy
    stats socket /run/haproxy/admin.sock mode 660 level admin
    stats timeout 30s
    user haproxy
    group haproxy
    daemon

defaults
    log global
    mode http
    option httplog
    option dontlognull
    timeout connect 5000
    timeout client 50000
    timeout server 50000

frontend web
    bind *:443 ssl crt /etc/haproxy/ssl/cert.pem key /etc/haproxy/ssl/key.pem
    mode https
    default_backend servers

backend servers
    mode http
    balance roundrobin
    server server1 192.168.1.101:80 check
    server server2 192.168.1.102:80 check

Bu yapılandırma, web sunucularına gelen tüm trafiği SSL üzerinden yönlendirecektir.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir