Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Как таковой балансировки PAM Core не требуется по причине низкой нагрузки в процессе работы (за исключением случаев просмотра видеопотока сессии). Поэтому для балансировки PAM Core рекомендуется к использованию именно схема Active-Passive.
К размещению 2 добавляются дополнительные сервера с установленными Indeed PAM Core.
Пусть их имена будут pam2, pam3 и т.д., настройка каждого PAM Core выполняется в точности как и первого, файлы конфигурации c:\inetpub\wwwroot\api\Web.config должны быть одинаковыми.
В качестве api будет выступать сам балансировщик, на него будут завязаны все PAM Core. Адрес балансировщика необходимо прописать в соответствующих секциях файлов конфигурации User Console, Management Console и Gateway:
Для файла C:\inetpub\wwwroot\uc\assets\config\config.prod.json
| Code Block | ||
|---|---|---|
| ||
"apiServer": {
"url": "https://haproxy.indeed-id.local/api"
}, |
Настиройки HAProxy в случае с
...
двумя серверами (первый - активный, второй - резервный) будут такими:
| Code Block | ||
|---|---|---|
| ||
global log /dev/haproxy/log local0 # см https://en.wikipedia.org/wiki/Syslog#Facility log /dev/haproxy/log local1 notice # notice - уровень ошибки. весь список: emerg, alert, crit, err, warning, notice, info, debug chroot /var/lib/haproxy # изменяем директорию выполнения для защиты от атак. папка пуста и нет прав. maxconn 256 # максимальное количество одновременных подключений. stats socket /run/haproxy/admin.sock mode 660 level admin # связывает сокет с admin.sock stats timeout 30s # Неизменяемые настройки HAPROXY user haproxy group haproxy |
...
daemon # Запустить процесс в фоновом режиме |
...
defaults
log global
mode http
option httplog
option dontlognull
# |
...
Таймауты timeout connect 5000ms timeout client 50000ms timeout server 50000ms retries 3 # кол-во попыток до того, как понизить статус сервера # Статистика stats enable stats hide-version stats realm Haproxy\ Statistics stats uri /haproxy #здесь указываем ссылку на страницу статистики stats auth stat:stat option httpchk HEAD / HTTP/1.0 # Настройки доступа option redispatch # Позволит пользователям пройти к другому серверу если сервер, на который ссылаются их куки, не работает |
...
|
...
|
...
|
...
|
...
balance roundrobin # алгоритм выбора сервера (наименее загруженный по порядку) frontend frontend_http bind *:443 ssl crt /etc/ssl/certs/ubuntu.test.com.pem option forwardfor # передать оригинальный ip адрес клиента серверу default_backend backend_http # указываем какой backend обрабатывает запросы backend backend_http option prefer-last-server # попытка повторно использовать тоже соединение к серверу option httpchk GET /api/isHealthy # проверка доступности приложения PAM Core stick-table type string len 35 size 1m expire 1d # Настройка, необходимая для связи gateway и core, иначе просмотр видеопотока работать не будет stick on path,word(2,/) if { path_beg /screencast/ } ## server pam2 192.168.10.122:443 backup ssl verify none check inter 5000ms # названия серверов для HAProxy мониторинга, проверка доступности включена, сертификат не проверяется server pam1 192.618.10.121:443 backup ssl verify none check inter 5000ms # |
...
backup-сервер неактивен пока основной сервер доступен для подключений |