Как установить HAProxy в Ubuntu 20.04 LTS
В этом руководстве мы покажем вам, как установить HAProxy в Ubuntu 20.04 LTS. Для тех из вас, кто не знал, HAProxy — это бесплатный балансировщик нагрузки HTTP / TCP и прокси-сервер с высокой доступностью. Он распределяет запросы между несколькими серверами для устранения проблем, возникающих в результате сбоя одного сервера. HA Proxy используется рядом известных веб-сайтов, включая GitHub, Bitbucket, Stack Overflow, Reddit, Tumblr, Twitter и Tuenti, а также в продукте OpsWorks от Amazon Web Services.
В этой статье предполагается, что у вас есть хотя бы базовые знания Linux, вы знаете, как использовать оболочку, и, что наиболее важно, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить ‘ sudo
‘ к командам для получения привилегий root. Я покажу вам пошаговую установку HAProxy на Ubuntu 20.04 (Focal Fossa). Вы можете следовать тем же инструкциям для Ubuntu 18.04, 16.04 и любого другого дистрибутива на основе Debian, например Linux Mint.
Установите HAProxy на Ubuntu 20.04 LTS Focal Fossa
Шаг 1. Во-первых, убедитесь, что все ваши системные пакеты обновлены, выполнив следующие apt
команды в терминале.
sudo apt update sudo apt upgrade sudo apt install software-properties-common
Шаг 2. Сведения о сети.
Чтобы установить и настроить балансировщик нагрузки HAProxy в системе Ubuntu 20.04, мы рассмотрим следующие три системы:
Web Server Details: Server 1: web1.infoit.com.ua 192.168.77.20 Server 2: web2.infoit.com.ua 192.168.77.21HAProxy Server: HAProxy: haproxy 192.168.77.46
Шаг 3. Установка HAProxy в Ubuntu 20.04.
Теперь мы добавляем репозиторий HAProxy PPA для Ubuntu:
sudo curl https://haproxy.debian.net/bernat.debian.org.gpg | apt-key add - sudo echo "deb http://haproxy.debian.net $(lsb_release -cs)-backports-2.0 main" | tee /etc/apt/sources.list.d/haproxy.list sudo add-apt-repository ppa:vbernat/haproxy-2.1
После этого вы можете установить HAProxy, используя следующую команду:
sudo apt update sudo apt install haproxy
Шаг 4. Настройте HAProxy.
Основной файл конфигурации для HAProxy: Теперь редактируем и запускаем конфигурацию:/etc/haproxy/haproxy.cfg
sudo nano /etc/haproxy/haproxy.cfg
Добавьте следующий файл:
# add to the end# define frontend ( any name is OK for [http-in] ) frontend http-in # listen 80 port bind *:80 # set default backend default_backend backend_servers # send X-Forwarded-For header option forwardfor# define backend backend backend_servers # balance with roundrobin balance roundrobin # define backend servers server node01 192.168.77.21:80 check server node02 192.168.77.46:80 check
После этого вы можете перезапустить его, выполнив следующую команду:
sudo systemctl restart haproxy
Затем измените настройки на внутреннем веб-сервере, чтобы регистрировать заголовок X-Forwarded-For. Следующее относится к случаю настроек Apache2:
a2enmod remoteip sudo nano /etc/apache2/apache2.conf
Добавьте следующий файл:
# line 212-215 : change like follows # for RemoteIPInternalProxym, specify HAProxy IP addressRemoteIPHeader X-Forwarded-For RemoteIPInternalProxy192.168.77.20 LogFormat "%v:%p %a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined LogFormat "%a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
Сохраните и закройте файл, также перезапустите службу Apache:
sudo systemctl restart apache2
Шаг 5. Доступ к HAProxy.
Когда HAProxy настроен и запущен, откройте общедоступный IP-адрес вашего сервера балансировки нагрузки в веб-браузере и убедитесь, что вы правильно подключились к своему бэкэнду. Параметр stats URI в конфигурации включает страницу статистики по указанному адресу:
http://192.168.77.46
Поздравляю! Вы успешно установили HAProxy . Благодарим вас за использование этого руководства для установки HAProxy в вашей системе Ubuntu 20.04 LTS Focal Fossa. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт HAProxy .