Короткий огляд можливостей haproxy - tech notes

На момент написання статті вийшов стабільний реліз 1.5.3 з підтримкою балансування SSL з'єднань. В ті часи, коли мені доводилося працювати з Haproxy, доставка SSL трафіку до кінцевого сервера проводилася звичайним форвардного з'єднання на 443 порт.

Встановлюється воно за допомогою зазвичай менеджера пакетів. Далі буду працювати з CentOS:

yum install haproxy

Після установки файл настройок зберігається в / etc / haproxy

За замовчуванням в цьому файлі можна описати всі налаштування. Є загальні настройки haproxy і настройки так званих бек-ендів (back-ends).

Загальні настройки з секції "global", як правило не вимагають змін.

Конфігурацію бек-ендів я розгляну докладніше. Бек-ендом (BackEnd) називається сервер, який знаходиться за балансувальник навантаження, багато їх називають головами або веб головами (web heads). Є два підходи до опису кластерів серверів, що знаходяться за балансувальник навантаження:

1. Простий метод "listen-> servers" використовується в тому випадку, якщо у Вас є кілька веб серверів (припустимо 3), їх параметри однакові (CPU / RAM) і весь трафік рівномірно розподіляється між ними. У функціонал серверів немає різниці. Кожен з них в рівній мірі може обробляти всі вхідні запити. В такому випадку

2. Більш тонкий метод "frontend-> backend-> servers". В цьому випадку сервера групіруются в так звані backend, які по суті представляють собою подобу секції "listen", описаної в попередньому пункті. Backendи в свою чергу об'єднаються в гллобальний frontend.

Що ж стосується режимів балансіровакі навантаження (mode ), То їх всього два:

  • http - використовується виключно для балансування http трафіку (рівень 7 OSI). Дозволяє використовувати можливості маніпуляції з заголовками, куками і т.д.
  • tcp - універсальний режим. Можна використовувати для балансіровакі будь-якого трафіку (https, mysql, smtp, і т.д.)

option - за допомогою цієї директив можна включити додаткові плюшки для необхідної секції. Всі опції можна подивитися тут.

Практичні приклади з налаштування можна почитати тут.

(Visited 1 158 times, 1 visits today)