Konfiguracja równoważenia obciążenia haproxy na podstawie adresu URL

Konfiguracja równoważenia obciążenia haproxy na podstawie adresu URL

Do dziś korzystałem z podstawowych ustawień Haproxy, dziś znalazłem zadanie dotyczące wyboru podstaw serwera backendowego żądania URL. Podczas pracy nad tym zadaniem dowiedziałem się o Haproxy ACL.

Zadanie: Mam zainstalowany WordPress jako http: // nazwa domainname.com/blog . Ta domena działa z 2 serwera zaplecza i zrównoważona przez Haproxy, zadaniem jest przekierowanie wszystkich /żądania blogu tylko na pojedynczy serwer.

Scenariusz sieciowy dla tej konfiguracji

  • Serwer Haproxy: 192.168.1.90
  • Web1: 192.168.1.103
  • Web2: 192.168.1.105
  • Domena: Tecadmin.internet

Poniższy przykład zawiera ACL dla url_beg. URL_BEG pasuje do ciągu używanego w przesłanym adresie URL. Korzystanie z adresu URL wszystkich żądań zaczynających się od /blogu (tecadmin.Net/Blog) przekieruje się do Web2 (192.168.1.105) serwer. Wszystkie pozostałe żądania będą przekierowywać na jeden z dwóch serwerów (Web1, Web2), w zależności od użytego algorytmu równoważenia obciążenia.

Oto szybki przykład użycia URL_BEG ACL:

Global Log 127.0.0.1 Lokalizacja 0.168.1.90:80 ACL IS_BLOG URL_BEG /BLOG Use_backend Tecadmin_blog If is_blog default_backend Tecadmin_website Backend Tecadmin_blog Tryb http bilans rundrobin # algorytm balansowania ładowania httpchk Forward for Server Web2 192 192 192.168.1.105: 80 Waga 1 Maxconn 512 Sprawdź backend TECADMIN_WEBSITE Tryb HTTP Balance Roundrobin # Opcja algorytmu równoważenia obciążenia HTTPCHK Opcja Forward for Server Web1 192 192.168.1.103: 80 waga 1 Maxconn 512 Sprawdź serwer Web2 192.168.1.105: 80 waga 1 Maxconn 512 Sprawdź 

Mam nadzieję, że ten samouczek pomoże Ci skonfigurować podstawowy ACL z haproxy .Jeśli chodzi o pełne ustawienia konfiguracji dostępne dla ACL, są wymienione w dokumencie konfiguracji Haproxy,