HAProxy е софтуер с отворен код, използван за балансиране уеб трафик, който позволява висока наличност и скалируемост на уеб приложения. Той може да разпределя трафика между множество сървъри и да наблюдава техните състояния, за да гарантира, че заявките винаги се изпращат към налични сървъри. HAProxy се използва широко от компании от всички размери, за да подобрят производителността и надеждността на уеб приложенията им.
HAProxy (AlmaLinux 8)
- Операционна система: almalinux 8
Описание
Включен софтуер
Пакет | Версия |
---|---|
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, заедно с останалия софтуер, може да бъде извършено по два начина:
- Чрез рестартиране на цялата виртуална машина
- Рестартиране на 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
, то трябва да се провери какво не е наред с приложението. В такъв случай, можете да направите проверка, като проследите логовете на приложението по следния начин:
- Вземете името на приложението, което можете да видите в колоната
NAMES
от изходния код на командатаdocker ps -a
. Вижте логовете с командатаdocker logs <NAME>
, Къдетое името на контейнера.
Промяна на настройки
Описаните настройки в секцията Работа с Docker могат да бъдат нагласяни в docker-compose.yml файла. Пътят до него е описан отново в тази секция. За да промените настройка, отворете конфигурационния файл и обърнете внимание на секцията environment
, намираща се под haproxy
. Всяка една конфигурационна опция трябва да бъде описана на нов ред с тире отпред по следния примерен начин:
environment:
- ALLOW_EMPTY_PASSWORD=yes
Моля, обърнете внимание, че трябва да се спазва и правилната индентация (брой празно място), тъй като това е важно за конфигурационни файлове от тип yaml.