Как установить HAProxy на Debian 11
На этой странице
- Предпосылки
- Настройка внутренних веб-серверов
- Установите HAProxy
- Настройка HAProxy
- Подтвердить HAProxy
- Заключение
HAProxy — это бесплатное и надежное решение с открытым исходным кодом для обеспечения высокой доступности и балансировки нагрузки. Он распределяет нагрузку между несколькими серверами приложений и упрощает задачи обработки запросов. Его можно установить на все основные операционные системы Linux. Он популярен из-за своей эффективности, надежности и небольшого объема памяти и процессора.
В этом посте мы объясним, как установить HAProxy в системе Debian 11.
Предпосылки
- Сервер под управлением Debian 11 для HAProxy.
- Два сервера под управлением Debian 11 для внутреннего сервера Apache.
- Пароль root настроен на всех серверах.
Настройка внутренних веб-серверов
Для целей этого руководства вам потребуется настроить два внутренних сервера Apache.
На первом внутреннем сервере установите пакет Apache с помощью следующей команды:
apt-get install apache2 -y
После установки Apache создайте пример страницы индекса Apache с помощью следующей команды:
echo "<H1>Welcome to the first Apache Server</H1>" | tee /var/www/html/index.html
На втором внутреннем сервере установите пакет Apache с помощью следующей команды:
apt-get install apache2 -y
Затем создайте образец страницы индекса Apache с помощью следующей команды:
echo "<H1>Welcome to the second Apache Server</H1>" | tee /var/www/html/index.html
Как только вы закончите, вы можете перейти к следующему шагу.
Установить HAProxy
По умолчанию HAProxy включен в стандартный репозиторий Debian 11. Вы можете установить его, выполнив следующую команду:
apt-get install haproxy -y
После установки HAProxy запустите службу HAProxy и включите ее запуск при перезагрузке системы:
systemctl start haproxy
systemctl enable haproxy
Как только вы закончите, вы можете перейти к следующему шагу.
Настроить HAProxy
Далее вам нужно будет отредактировать файл конфигурации HAProxy по умолчанию и определить внутренние веб-серверы.
nano /etc/haproxy/haproxy.cfg
Добавьте следующие строки:
frontend apache_front # Frontend listen port - 80 bind *:80 # Set the default backend default_backend apache_backend_servers # Enable send X-Forwarded-For header option forwardfor # Define backend backend apache_backend_servers # Use roundrobin to balance traffic balance roundrobin # Define the backend servers server backend01 192.168.1.10:80 check server backend02 192.168.1.11:80 check
Сохраните и закройте файл, когда закончите.
Где: 192.168.1.10 — это IP-адрес первого внутреннего сервера Apache, а 192.168.1.11 — IP-адрес второго внутреннего сервера Apache.
Затем перезапустите службу HAProxy, чтобы применить изменения:
systemctl restart haproxy
Теперь вы можете проверить статус HAProxy с помощью следующей команды:
systemctl status haproxy
Вы получите следующий вывод:
? haproxy.service - HAProxy Load Balancer Loaded: loaded (/lib/systemd/system/haproxy.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2021-11-07 03:47:14 UTC; 9s ago Docs: man:haproxy(1) file:/usr/share/doc/haproxy/configuration.txt.gz Process: 86678 ExecStartPre=/usr/sbin/haproxy -f $CONFIG -c -q $EXTRAOPTS (code=exited, status=0/SUCCESS) Main PID: 86680 (haproxy) Tasks: 3 (limit: 4679) Memory: 34.2M CPU: 61ms CGroup: /system.slice/haproxy.service ??86680 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -S /run/haproxy-master.sock ??86682 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -S /run/haproxy-master.sock Nov 07 03:47:14 debian11 systemd[1]: Starting HAProxy Load Balancer... Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_front started. Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_front started. Nov 07 03:47:14 debian11 systemd[1]: Started HAProxy Load Balancer. Nov 07 03:47:14 debian11 haproxy[86680]: [NOTICE] 310/034714 (86680) : New worker #1 (86682) forked Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_backend_servers started. Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_backend_servers started.
Проверить HAProxy
На данный момент HAProxy настроен и запущен. Теперь пришло время протестировать HAProxy.
Откройте веб-браузер и введите URL-адрес http://your-haproxy-ip. Вы увидите, что HAProxy отправляет запросы на внутренние серверы один за другим после каждого обновления.
Заключение
Поздравляем! вы успешно установили HAProxy в Debian 11. Теперь вы можете внедрить HAProxy в производственной среде, чтобы повысить производительность и доступность вашего веб-приложения.