ЛОР, привет. Чё как сам? Я к тебе с проблемой :(
Вобщем есть три ноды кластера цеф:
- 10.50.8.170
- 10.50.8.171
- 10.50.8.172
дашборд в данный момент активен на 10.50.8.171.
HAProxy находится на адресе
- 10.50.8.185
В ней вот такой конфиг
frontend ceph_dashboard
bind *:80
bind *:443 ssl crt /etc/ssl/private/ceph.prod.test.pem
http-request redirect scheme https unless { ssl_fc }
use_backend ceph_dashboard
backend ceph_dashboard
balance roundrobin
mode http
server ceph1 10.50.8.170:8080 check
server ceph2 10.50.8.171:8080 check
server ceph3 10.50.8.172:8080 check
Пробема заключается в двух вещах, причём первая выглядит гораздо огорчительней второй.
Проблема номер один: одномоментно активным может быть только один дашборд, а остальные менеджеры нод ссылаются на активную версию
while true; do curl --insecure https://10.50.8.185/; sleep 1; done
root@haproxy2:/home/g10# while true; do curl --insecure https://10.50.8.185/; sleep 1; done
This resource can be found at <a href="http://10.50.8.171:8080/">http://10.50.8.171:8080/</a>.
This resource can be found at <a href="http://10.50.8.171:8080/">http://10.50.8.171:8080/</a>.
но раз в 3-5 попыток попадает на нода 10.50.8.171 и выдает хтмл код страницы.
Соответственно, если с прокси залетаю на 171, то всё хттпс и всё секурно, если на 170 или 172, то редирект прямиком на хттп порт ноды 171, мимо прокси. Да, можно там фильтрацию настроить какую нибудь и вообще запретить ходить на ноды ниоткуда кроме прокси 185, но тогда вообще 404 будет - ничего ж не найдено. Как это фиксят любители луковых оладий цефа? Как спрятать за проксей много нод и дашборд?
Проблема номер джва: Если вдруг мне везёт и я попадаю прямиком на ноду 171 прямиком с прокси 185, то почему то в адресной строке я вижу адрес ноды, а не адрес прокси. Я ожидал, что в адресной строке окажется адресок прокси, а не ноды самой. Это же в конфиге haproxy какой то параметр за это отвечает? Подскажите, плес, какой.
Спасибо, что выслушал ЛОР. Целую крепко, ваша репка.