V tomto tutoriálu vám ukážeme, jak nainstalovat HAProxy na váš Debian 9. Pro ty z vás, kteří nevěděli, HAProxy je bezplatný nástroj pro vyrovnávání zatížení a proxy HTTP/TCP s vysokou dostupností server. Šíří požadavky mezi více serverů za účelem zmírnění problémů způsobených selháním jednoho serveru. HA Proxy používá řada vysoce profilovaných webů včetně GitHub, Bitbucket, Stack Overflow, Reddit, Tumblr, Twitter a Tuenti a používá se v produktu OpsWorks od Amazon Web Services.
Tento článek předpokládá, že máte alespoň základní znalosti Linuxu, víte, jak používat shell, a co je nejdůležitější, hostujete svůj web na vlastním VPS. Instalace je poměrně jednoduchá a předpokládá, že běží v účtu root, pokud ne, možná budete muset přidat 'sudo
‘ k příkazům pro získání oprávnění root. Ukážu vám krok za krokem instalaci HAProxy na serveru Debian 9 (Stretch).
Nainstalujte HAProxy na Debian 9 Stretch
Krok 1. Než nainstalujeme jakýkoli software, je důležité se ujistit, že váš systém je aktuální, spuštěním následujícího apt-get
příkazy v terminálu:
apt-get updateapt-get upgrade
Krok 2. Podrobnosti sítě.
Níže je náš síťový server. Existují 3 webové servery běžící s Apache2 a naslouchající na portu 80 a jeden HAProxy server:
Krok 3. Instalace HAProxy.
Debian 9 se již dodává s HAProxy 1.7 (nejnovější stabilní vydání v době psaní tohoto článku) a můžeme jej jednoduše nainstalovat pomocí apt-get:
apt-get -y install haproxy
Po instalaci můžete znovu zkontrolovat číslo nainstalované verze pomocí následujícího:
haproxy -v
Krok 4. Konfigurace HAProxy.
Musíme upravit konfigurační soubor HAProxy, tj. /etc/haproxy/haproxy.cfg
dle našeho požadavku. (Tuto konfiguraci změňte podle požadavků sítě). Další podrobnosti o konfiguraci naleznete na této adrese URL.
### nano /etc/haproxy/haproxy.cfgglobal log /dev/log local0 log /dev/log local1 oznámení chroot /var/lib/haproxy stats socket /run/haproxy/admin.sock úroveň admin 660 časový limit 30s haproxy uživatele skupina haproxy daemon # Výchozí umístění materiálů SSL ca-base /etc/ssl/certs crt-base /etc/ssl/private # Výchozí šifry pro použití na naslouchacích soketech s podporou SSL. # Další informace naleznete v tématu šifry (1SSL). Tento seznam pochází z: # https://hynek.me/articles/hardening-your-web-servers-ssl-ciphers/ ssl-default-bind-ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256::RSA+ AES:RSA+3DES :! AULL :! MD5 :! DSS SSL-Default-Bind-Options No-Slv3Defaults Log Global režim HTTP Možnost httplog dontlogll timeout timeout 5000 Timeout klient 50000 Timeout Server 50000 ERRORFILE 400/ETC/HAPROXY/ERRORS/ 400.http errorfile 403 /etc/haproxy/errors/403.http errorfile 408 /etc/haproxy/errors/408.http errorfile 500 /etc/haproxy/errors/500.http /errorfile 500 http errorfile 503 /etc/haproxy/errors/503.http errorfile 504 /etc/haproxy/errors/504.httpfrontend Local_Server bind 192.168.1.18:80 režim http režim režim režim vpřed zaokrouhlení webový server výchozí výchozí backend My_Web_Server -Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto https if { ssl_f c } možnost httpchk HEAD / HTTP/1.1rnHost:localhost server web1.idroot.us 192.168.1.101:80 server web2.idroot.us 192.168.1.102:80 1 server web3.idroot.listen stats 9:8338 stats.01 povolit statistiky skrýt verzi statistiky obnovit 30 s statistiky zobrazit uzel statistiky auth uživatelské jméno:heslo statistiky uri /stats
Protože jste provedli všechny potřebné konfigurace pro proxy server, ověřte konfigurační soubor před restartováním služby pomocí následujícího příkazu:
haproxy -c -f /etc/haproxy/haproxy.cfg
Pokud výše uvedený příkaz vrátí výstup jako „konfigurační soubor je platný“, restartujte službu HAProxy:
systemctl restart haproxy
Krok 5. Přístup k HAProxy.
Otevřete svůj oblíbený prohlížeč a přistupte k portu 80 na IP 192.168.0.18 (jak je nakonfigurováno výše) ve webovém prohlížeči a stiskněte tlačítko refresh. Uvidíte, že HAProxy odesílá požadavky na backendový server jeden po druhém (podle algoritmu round-robin).
Blahopřejeme! Úspěšně jste nainstalovali HAProxy. Děkujeme, že jste použili tento návod k instalaci nejnovější verze HAProxy na server Debian 9 Stretch. Pro další pomoc nebo užitečné informace vám doporučujeme zkontrolovat oficiální webové stránky HAProxy.