HAProxy (AlmaLinux 8)

HAProxy (AlmaLinux 8)

  • Операционна система: almalinux 8

Описание

HAProxy е софтуер с отворен код, използван за балансиране уеб трафик, който позволява висока наличност и скалируемост на уеб приложения. Той може да разпределя трафика между множество сървъри и да наблюдава техните състояния, за да гарантира, че заявките винаги се изпращат към налични сървъри. HAProxy се използва широко от компании от всички размери, за да подобрят производителността и надеждността на уеб приложенията им.

Включен софтуер

Пакет Версия
Haproxy latest
Docker 3.20.10
Docker compose 2.12.2
containerd.io 1.6.10

Първоначално стартиране на услугата

Това приложение използва Docker, за да осигури по-бързо стартиране на прилежащия софтуер (HAProxy) и директно започване на употребата му. По този начин се елиминира нуждата от запознаване със спецификите му по отношение на конфигурация и инсталация. За да започнете директна работа с приложението трябва да модифицирате HAProxy конфигурационния си фахл в /opt/haproxy/conf/haproxy.cfg и да рестартирате работещата docker услуга. След като извършите това, можете да посетите IP адреса, който е назначен за виртуалната Ви машина в бразура си, за да видите конфигурационните промени, които сте извършили.

Забележка: По подразбиране, HAProxy може да се достъпи директно по IP адрес. За да започнете да използвате HAProxy с реалния си домейн, първо трябва да насочите въпросния домейн към IP адреса си и да промените настройките за това от къде се отваря HAProxy през неговия административен панел.

Бързи настройкии и често задавани въпроси

  • Входът в клауд услугата се извършва посредством SSH ключ или парола, която сте посочили.
  • Docker е инсталиран според препоръките от официалната docker документация.
  • Стандартните команди docker и docker compose са вече достъпни в това приложение.
  • При първо стартиране на виртуалната машина, отнема няколко минути, преди да се стартира Docker контейнер, съдържащ Haproxy.
  • Конфигурационният файл на Haproxy се намира в /opt/haproxy/conf/haproxy.cfg. След модификация е нужно да рестартирате docker контейнера с командата docker restart docker-haproxy-haproxy-1, за да влезнат промените в сила. Този конфигурационен файл е примерен, ще е нужно да се конфигурира според нужите ви.

Работа с Docker

Организацията на това приложение е осъществена изцяло посредством Docker. По този начин можем да Ви предоставим готови приложения по-бързо. Освен това, конфигурацията им е по-гъвкава и е доста контролируема. За да можете да го контролирате това приложение обаче, е нужно да знаете някой базови Docker функционалности и особености.

Рестартиране на всички услуги

Рестартирането на базата данни и Docker контейнера, който съдържа самия HAProxy, заедно с останалия софтуер, може да бъде извършено по два начина:

  1. Чрез рестартиране на цялата виртуална машина
  2. Рестартиране на Docker контейнерите, което е по-бързия вариант. За целта, достъпете машината си чрез SSH, и изпълнете следните команди:
sudo su -
cd /opt/docker-haproxy
docker compose restart

Пресъздаване на Docker контейнери

Пресъздаването може да се наложи, в случай че сме променяли конфигурацията в docker-compose.yml. При тази ситуация, трябва да следвате следните стъпки:

cd /opt/docker-haproxy/
docker compose stop
docker compose up -d

Проверка на статуса на Docker приложението

За да направите проверка, трябва да изпълните следните команди:

sudo su -
docker ps -a

Моля, обърнете внимание на колоната STATUS. Тя трябва да показва от колко време работи услугата, например Up X minutes. Ако статуса е Restarting, то трябва да се провери какво не е наред с приложението. В такъв случай, можете да направите проверка, като проследите логовете на приложението по следния начин:

  1. Вземете името на приложението, което можете да видите в колоната NAMES от изходния код на командата docker ps -a. Вижте логовете с командата docker logs <NAME>, Където е името на контейнера.

Промяна на настройки

Описаните настройки в секцията Работа с Docker могат да бъдат нагласяни в docker-compose.yml файла. Пътят до него е описан отново в тази секция. За да промените настройка, отворете конфигурационния файл и обърнете внимание на секцията environment, намираща се под haproxy. Всяка една конфигурационна опция трябва да бъде описана на нов ред с тире отпред по следния примерен начин:

    environment:
      - ALLOW_EMPTY_PASSWORD=yes

Моля, обърнете внимание, че трябва да се спазва и правилната индентация (брой празно място), тъй като това е важно за конфигурационни файлове от тип yaml.