GNU/Linux >> Znalost Linux >  >> Linux

HAProxy serverový kontejner Podman rychle 100% snadno

Úvod

HAProxy vyrovnávač zátěže . Nástroj pro vyrovnávání zatížení zvládá větší provoz na webu, aby se zabránilo prostojům. Přijímá provoz z internetu nebo vaší interní sítě, vyrovnává zatížení interní služby a poté provoz přesměruje na web.

Výhody použití nástroje pro vyrovnávání zatížení po nasazení na více serverů. Nástroj pro vyrovnávání zátěže může přenášet provoz za účelem zvýšení vaší kapacity pro obsluhu mnoha klientů bez přímého připojení ke každému serveru. HAProxy přijímá a předává provoz a poté vyrovnává zatížení přes vaše servery. Tato technika se zajišťuje proti selhání kteréhokoli z vašich serverů, protože nástroj pro vyrovnávání zátěže dokáže zjistit, zda server přestane reagovat, a automaticky zastaví odesílání provozu. HAProxy se používá k vyvážení provozu libovolného počtu webových aplikací pomocí jediné konfigurace.

HAProxy je nejrychlejší a nejrozšířenější nástroj pro vyrovnávání zatížení a řadič doručování aplikací. Napsáno v C, efektivní využití procesoru a paměti. Může běžet na vrstvě 4 (TCP) nebo vrstvě 7 (HTTP) a další funkce pro kontrolu, směrování a úpravu zpráv.

Je dodáván s webovým uživatelským rozhraním nazvaným stránka HAProxy Stats, kterou můžete použít ke sledování chybovosti, objemu provozu a latence. Kromě toho aktualizuje jeden konfigurační soubor, který poskytuje syntaxi pro definování pravidel směrování, omezení rychlosti, řízení přístupu atd.

Chcete-li zaručit skutečně spolehlivou službu, spusťte alespoň dvě instance HAProxy s nastavením aktivní-aktivní nebo aktivní-pohotovostní režim. Přečtěte si oficiální dokumenty, jak pracovat s HAProxy Enterprise. Podívejte se na výukový program kontejneru Apache.

Při konfiguraci HAProxy obvykle začněte s následujícím:

  • Konkrétní IP adresy a porty HAProxy pro příjem provozu;
  • Servery, na které bude HAProxy přenášet provoz;
  • Když klient požaduje přejít do fondu serverů.

Mezi další funkce patří:

  • Ukončení SSL/TLS
  • Komprese Gzip
  • Kontrola stavu
  • HTTP/2
  • Podpora gRPC
  • Lua skriptování
  • Zjištění služby DNS
  • Automatické opakování neúspěšných připojení
  • Podrobné protokolování

Tyto kontejnery naslouchají na portu 8080, ale tyto porty jsme nenamapovali na hostitele, takže je nelze směrovat. Místo toho přeneseme provoz do těchto kontejnerů prostřednictvím nástroje pro vyrovnávání zatížení HAProxy. Dále před ně přidáme HAProxy. Vytvořte soubor s názvem haproxy.cfg v aktuálním adresáři a přidejte do něj následující:

Získat obrázek HAProxy

# podman pull haproxytech/haproxy-alpine:2.4

Vytvořte vlastní obrázek pro svůj požadavek HAProxy

# mkdir -p /haproxy/etc/haproxy/
# cd /haproxy/etc/haproxy/
# ls
Dockerfile haproxy.cfg

Vytvořte si obrázek Dockeru podle svých požadavků

# cat /haproxy/etc/haproxy/Dockerfile
FROM haproxytech/haproxy-alpine:2.4
COPY haproxy.cfg /usr/local/etc/haproxy/haproxy.cfg

Vytvořte konfiguraci haproxy dle vlastního výběru

# cat /haproxy/etc/haproxy/haproxy.cfg
global
  stats socket /var/run/api.sock user haproxy group haproxy mode 660 level admin expose-fd listeners
  log stdout format raw local0 info

defaults
  mode http
  timeout client 10s
  timeout connect 5s
  timeout server 10s
  timeout http-request 10s
  log global

frontend stats
  bind *:8404
  stats enable
  stats uri /
  stats refresh 10s

frontend myfrontend
  bind :80
  default_backend webservers

backend webservers
  server s1 http-server1:8081 check
  server s2 http-server2:8082 check
  server s3 http-server3:8083 check

Vytvořte haproxový obrázek

# cd /haproxy/etc/haproxy/
# podman build -t my-haproxy .

Vytvoření serveru HAproxy

# podman run --name haproxy-server -p 80:80 -p 8404:8404 -d localhost/my-haproxy

Vytvořit pod pro každý webový server

Servery Apache

# podman pull centos/httpd-24-centos7

# podman pod create --name httpapp1 -p 8081:8080 --network bridge
# podman run --pod httpapp1 --name http-server1 -v /wwwdata1:/var/www:Z -d centos/httpd-24-centos7

# podman pod create --name httpapp2 -p 8082:8080 --network bridge
# podman run --pod httpapp2 --name http-server2 -v /wwwdata2:/var/www:Z -d centos/httpd-24-centos7


# podman pod create --name httpapp3 -p 8083:8080 --network bridge
# podman run --pod httpapp3 --name http-server3 -v /wwwdata3:/var/www:Z -d centos/httpd-24-centos7

Závěr

HAProxy uvnitř kontejneru může zjednodušit jeho nasazení a správu životního cyklu. Poskytuje standard pro nasazování aplikací, díky čemuž je proces opakovatelný a testovatelný. Režie CPU při běhu je zanedbatelná, může zatížit další síť a bude mít dopad v závislosti na vašem případu použití a potřebách propustnosti.

Jednoduše vytvořte konfigurační soubor HAProxy a poté zavolejte příkaz podman run se jménem obrazu HAProxy. HAProxy Technologies dodává aktuální obrázky.

HAProxy Enterprise pohání moderní aplikace v jakémkoli měřítku a v jakémkoli prostředí a poskytuje maximální výkon, pozorovatelnost a zabezpečení pro vaši kritickou pomoc. Můžete využít jeho špičkové funkce a podnikovou sadu doplňků, které jsou podporovány autoritativní, odbornou podporou a profesionálními službami.


Linux
  1. Spuštění rootless Podman jako uživatel bez root

  2. Náhled technologie:Spuštění kontejneru uvnitř kontejneru

  3. Jak používat Podman uvnitř kontejneru

  1. Jak nakonfigurovat HAProxy load balancer

  2. Jak rychle nastavit server KVM

  3. Nainstalujte Kodi na Ubuntu 18.04:Rychle a snadno!

  1. ScanSSH – rychlý server SSH a otevřený proxy skener

  2. 5 Step Nginx obsahuje podman easy

  3. Vzdálený VS kód rychle a snadno 100%