HAProxy

Установите HAProxy для настройки сервера балансировки нагрузки в Debian 10

Установите HAProxy для настройки сервера балансировки нагрузки в Debian 10

Балансировка нагрузки - наиболее распространенная практика распределения входящего веб-трафика между несколькими внутренними серверами. Это делает приложение высокодоступным, даже если некоторые серверы по какой-то причине выходят из строя.  Балансировка нагрузки повышает эффективность и надежность веб-приложения. Балансировщик нагрузки HAProxy используется с той же целью. Это наиболее широко используемый балансировщик нагрузки в промышленности. Согласно официальному сайту, HAProxy используется ведущими компаниями, такими как AWS, Fedora, Github и многими другими.

HAProxy или High Availability Proxy обеспечивает высокую доступность и решение для проксирования. Он написан на C и работает на сетевом и прикладном уровнях модели TCP / IP. Лучше всего то, что у него есть бесплатная версия сообщества, и это приложение с открытым исходным кодом. Работает в операционных системах Linux, FreeBSD и Solaris. Корпоративная версия тоже есть, но у нее есть ценник.

В этом руководстве мы увидим Как установить HAProxy и настроить сервер балансировки нагрузки в Debian 10.

Предпосылки:

  1. Доступ «sudo» ко всем машинам и базовые знания о запуске команд в терминале Linux.
  2. Частные IP-адреса добавлены к балансировщику нагрузки и внутренним серверам.
  3. Операционная система Debian 10 установлена ​​на всех машинах.

Установка HAProxy на Debian 10

В нашем руководстве мы предположим следующую конфигурацию IP-адреса:

  1. Балансировщик нагрузки HAProxy 10.0.12.10
  2. Веб-сервер1: IP-адрес: 10.0.12.15
  3. Веб-сервер2: IP-адрес: 10.0.12.16

Шаг 1. Обновить системный репозиторий Debian и пакеты

Сначала запустите следующие команды во всех системах, чтобы обновить пакеты программного обеспечения до последней версии.

$ sudo подходящее обновление
$ sudo подходящее обновление -y

Шаг: 2 Установите Nginx на внутренние серверы

Подготовьте свои внутренние серверы, установив веб-сервер Nginx на каждом. Вы также можете установить другие веб-серверы, такие как apache.

Чтобы установить Nginx, выполните следующие команды на каждом внутреннем сервере в вашей среде:

$ sudo apt установить nginx

Шаг: 3 После того, как Nginx будет установлен на ваших внутренних серверах, запустите службу, как показано ниже:

$ Sudo systemctl start nginx

КОНЧИК: Мы также можем управлять веб-сервером nginx, используя следующую команду:

$ sudo / etc / init.d / nginx «опция»
опция: начать перезагрузку перезапуск статус стоп

Шаг: 4 Создайте настраиваемые страницы индекса в веб-папке каждого веб-сервера Nginx. Это поможет нам определить, какой внутренний сервер обслуживает входящие запросы.

На каждом веб-сервере выполните следующие задачи:

Сделайте резервную копию исходного индексного файла с помощью следующей команды:

$ sudo cp / usr / share / nginx / html / индекс.HTML / USR / доля / Nginx / HTML / индекс.html.происхождение

Добавить произвольный текст в индекс.html файл. Мы добавляем IP-адрес каждого веб-сервера.

Для веб-сервера 1:

$ sudo echo "Веб-сервер 1:10.0.12.15 дюймов | sudo tee / usr / share / nginx / html / index.html

Для веб-сервера 2:

$ sudo echo "Веб-сервер 2:10.0.12.16 дюймов | sudo tee / usr / share / nginx / html / index.html

Вы также можете использовать редактор vi, если вам это удобнее. Это показано ниже:

$ sudo vi / usr / share / nginx / html / индекс.html

Когда файл откроется, введите текст и сохраните файл.

Откройте файл виртуального хоста по умолчанию в каталоге «/ etc / nginx / sites-available /».

$ sudo nano / etc / nginx / сайты-доступные / по умолчанию

Теперь внутри блока сервера измените корневую директиву с «/ var / www / html» на «/ usr / share / nginx / html».

Чтобы проверить конфигурацию Nginx, выполните следующую команду:

$ sudo nginx -t

Шаг 5: Теперь перезапустите службу с помощью команды:

$ sudo systemctl перезапустить nginx

Вы можете проверить статус nginx, используя следующую команду:

$ sudo systemctl статус nginx

Шаг: 6 Чтобы установить HAProxy в Debian 10 (Buster), выполните следующую команду на балансировщике нагрузки.

$ sudo apt install haproxy -y

Кончик: После установки HAProxy вы можете управлять HAProxy с помощью сценария инициализации. Для этого установите для параметра «enabled» значение 1 в «/ etc / default / haproxy», как показано ниже:

$ sudo vi / и т. д. / по умолчанию / haproxy
ВКЛЮЧЕНО = 1

Теперь со сценарием инициализации можно использовать следующую опцию:

Параметр $ sudo service haproxy ".”
опция: начать перезагрузку перезапуск статус стоп

Шаг: 7 Теперь настройте балансировщик нагрузки HAProxy, отредактировав файл конфигурации по умолчанию haproxy, i.е. «/ Etc / haproxy / haproxy.cfg ». Чтобы отредактировать этот файл, выполните следующую команду

$ sudo vi / и т. д. / haproxy / haproxy.cfg

Кончик: Пожалуйста, сделайте резервную копию исходного файла, чтобы в случае, если что-то пойдет не так, мы все будем в безопасности. Чтобы выполнить резервное копирование, используйте следующую команду:

$ sudo cp / и т. д. / haproxy / haproxy.cfg / и т. д. / haproxy / haproxy.cfg.происхождение

Теперь перейдите в конец файла и отредактируйте следующую информацию:

внешний интерфейс Local_Server
привязать 10.0.12.10:80
режим http
default_backend веб-сервер
внутренний веб-сервер
режим http
баланс раундробин
вариант вперед
http-request set-header X-Forwarded-Port% [dst_port]
http-request add-header X-Forwarded-Proto https, если ssl_fc
опция httpchk HEAD / HTTP / 1.1rnHost: localhost
сервер web1 10.0.12.15:80
сервер web2 10.0.12.16:80

Примечание: Не забудьте изменить IP-адреса в указанном выше файле на тот, который вы добавили на свои веб-серверы.

Шаг: 8 Проверьте синтаксис конфигурации указанного выше файла с помощью следующей команды:

$ sudo haproxy -c -f / и т.д. / haproxy / haproxy.cfg

Если все пойдет правильно, появится такой вывод: «Файл конфигурации действителен.”Если вы получите какую-либо ошибку в выводе, перепроверьте свой файл конфигурации и проверьте его еще раз.

Шаг: 9 Теперь перезапустите службу HAProxy, чтобы применить изменения

$ sudo service haproxy перезапуск

Тестирование конфигурации

Теперь пора проверить, правильно ли работает наша установка. Введите IP-адрес системы балансировки нагрузки в веб-браузере (в нашем случае это 10.0.12.10) и постоянно обновляйте страницу 2-4 раза, чтобы проверить, правильно ли работает балансировщик нагрузки HAProxy. Вы должны увидеть разные IP-адреса или любой текст, который вы ввели в индекс.html, когда вы продолжаете обновлять страницу несколько раз.

Другой способ проверить - отключить один веб-сервер и проверить, обслуживает ли другой веб-сервер запросы.

Это все пока! Попробуйте поэкспериментировать с HAProxy, чтобы узнать больше о том, как он работает. Для е.грамм., можешь попробовать:

HAProxy имеет обширную документацию, доступную как для версии сообщества HAProxy, так и для версии HAProxy для предприятий. Изучите эту документацию, чтобы получить больше информации о повышении производительности и надежности вашей серверной среды.

Это руководство было успешно выполнено на Debian 10 (Buster). Попробуйте установить HAProxy на другие дистрибутивы на основе Debian, такие как Ubuntu, Linux Mint и т. Д. Пожалуйста, не забудьте поделиться этим руководством с другими.

Как использовать чит-движок GameConqueror в Linux
В статье содержится руководство по использованию чит-движка GameConqueror в Linux. Многие пользователи, играющие в игры на Windows, часто используют п...
Лучшие эмуляторы игровой консоли для Linux
В этой статье будет перечислено популярное программное обеспечение для эмуляции игровых консолей, доступное для Linux. Эмуляция - это уровень совмести...
Лучшие дистрибутивы Linux для игр в 2021 году
Операционная система Linux прошла долгий путь от своего первоначального простого серверного вида. Эта ОС значительно улучшилась за последние годы и те...