HAProxy

Встановіть HAProxy для налаштування сервера балансування навантаження на Debian 10

Встановіть HAProxy для налаштування сервера балансування навантаження на Debian 10

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

Проксі-сервер HAProxy або High Availability надає рішення про високу доступність та проксі-сервер. Він написаний на 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 apt оновлення
$ sudo apt upgrade -y

Крок: 2 Встановіть Nginx на внутрішніх серверах

Підготуйте свої внутрішні сервери, встановивши веб-сервер Nginx на кожному. Ви також можете встановити інші веб-сервери, такі як apache.

Щоб встановити Nginx, виконайте такі команди на кожному серверному сервері у своєму середовищі:

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

Крок: 3 Після того, як Nginx буде встановлений на ваших серверах, запустіть службу, як показано нижче:

$ Sudo systemctl запустити nginx

ПОРАДА: Ми також можемо керувати веб-сервером nginx, використовуючи команду нижче:

$ sudo / etc / init.d / nginx “параметр”
варіант: почати перезавантажувати статус перезапуску зупинка

Крок: 4 Створіть власні сторінки індексу у веб-папці кожного веб-сервера Nginx. Це допоможе нам розрізнити, який внутрішній сервер обслуговує вхідні запити.

На кожному веб-сервері виконайте такі завдання:

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

$ sudo cp / usr / share / nginx / html / index.html / usr / share / nginx / html / index.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 / index.html

Коли файл відкрито, введіть текст і збережіть файл.

Відкрийте файл віртуального хосту за замовчуванням у каталозі “/ etc / nginx / sites-available /”.

$ sudo nano / etc / nginx / sites-available / default

Тепер всередині блоку сервера змініть кореневу директиву з “/ 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 / etc / default / haproxy
УВІМКНЕНО = 1

Тепер наступний параметр можна використовувати зі скриптом ініціювання:

опція $ sudo service haproxy."
варіант: почати перезавантажувати статус перезавантаження зупинка

Крок: 7 Тепер налаштуйте балансування навантаження HAProxy, відредагувавши файл конфігурації за замовчуванням haproxy, тобто.e. “/ Etc / haproxy / haproxy.cfg ". Щоб відредагувати цей файл, виконайте таку команду

$ sudo vi / etc / haproxy / haproxy.cfg

Порада: Будь ласка, зробіть резервну копію оригінального файлу, щоб у випадку, якщо щось піде не так, ми були в безпеці. Щоб виконати резервне копіювання, використовуйте таку команду:

$ sudo cp / etc / haproxy / haproxy.cfg / etc / haproxy / haproxy.cfg.ориг

Тепер перейдіть до кінця файлу та відредагуйте таку інформацію:

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

Примітка: Не забудьте змінити IP-адреси у наведеному вище файлі на ту, яку ви додали до своїх веб-серверів.

Крок: 8 Перевірте синтаксис конфігурації вищезазначеного файлу за допомогою такої команди:

$ sudo haproxy -c -f / etc / haproxy / haproxy.cfg

Якщо все піде правильно, на екрані з’явиться такий вивід: «Файл конфігурації дійсний.”Якщо у вихідних даних з’являється помилка, перевірте файл конфігурації та перевірте його ще раз.

Крок: 9 Тепер перезапустіть службу HAProxy, щоб застосувати зміни

Перезапуск служби haproxy служби $ sudo

Тестування конфігурації

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

Інший спосіб перевірки - вимкнути один веб-сервер у автономному режимі та перевірити, чи не обслуговує запити інший веб-сервер.

Це все, що на даний момент! Спробуйте поекспериментувати з HAProxy, щоб дізнатися більше про те, як це працює. Для e.g., Ви можете спробувати:

HAProxy має велику документацію, доступну як для версії спільноти HAProxy, так і для корпоративної версії HAProxy. Ознайомтеся з цією документацією, щоб отримати більше інформації про підвищення продуктивності та надійності серверного середовища.

Цей посібник успішно виконано на Debian 10 (Buster). Спробуйте встановити HAProxy на інші дистрибутиви на основі Debian, такі як Ubuntu, Linux Mint тощо. Будь ласка, не забудьте поділитися цим посібником з іншими.

OpenTTD vs Simutrans
Creating your own transport simulation can be fun, relaxing and extremely enticing. That's why you need to make sure that you try out as many games as...
OpenTTD Tutorial
OpenTTD is one of the most popular business simulation games out there. In this game, you need to create a wonderful transportation business. However,...
SuperTuxKart for Linux
SuperTuxKart is a great title designed to bring you the Mario Kart experience free of charge on your Linux system. It is pretty challenging and fun to...