Привет, ЛОР. Снова пришёл к тебе за помощью, помоги плес.
Кароч есть одна тян прокся перед кластером из 3 нод. Идея состоит в том, чтобы по доменному имени прокси получать доступ к бакетам S3.
То есть, ceph.prod.test/test-bucket и погнали туда лить данные.
Проблема состоит в том, что не получается настроить проксю. Вот, что есть на данный момент
frontend ceph_dashboard_http
bind *:80
mode http
option httplog
http-request redirect scheme https code 301 if !{ ssl_fc }
frontend ceph_dashboard_ssl
mode tcp
bind *:443 ssl crt /etc/ssl/private/ceph.prod.test.pem
option tcplog
# use_backend %[req.hdr(Host),lower]
# acl sub1 hdr_sub(host) -i ceph.prod.test/test-bucket
use_backend test-bucket if { path /test-bucket } || { path_beg /test-bucket/ }
default_backend ceph_dashboard_ssl
backend test-bucket
balance roundrobin
# mode http
http-request replace-path /test-bucket(/)?(.*) /\2
server ceph1 10.50.8.170:80 check
server ceph2 10.50.8.171:80 check
server ceph3 10.50.8.172:80 check
backend ceph_dashboard_ssl
mode tcp
option httpchk GET /
http-check expect status 200
server ceph1 10.50.8.170:8080 check
server ceph2 10.50.8.171:8080 check
server ceph3 10.50.8.172:8080 check
Я вот уже явно указывают созданный баке test-bucket в path но, судя по логам прокси, оно не переключается на бекенд test-bucket, а продолжает использовать ceph_dashboard_ssl, что вызывает глубочаюшую озабоченность.
КОгда курлыкаю
curl -v --insecure https://ceph.prod.test/test-bucket
то получаю это пренеприятнейшее известие
{"status": "404 Not Found", "detail": "The path '/test-bucket' was not found.", "request_id": "d81d9e71-bc02-460b-864f-80d2e77a5483"}
из чего я делаю вывод, что он чот не хочет моё мощное выражение { path /test-bucket } || { path_beg /test-bucket/ }
воспринимать всерьёз.
ЛОР, что не так? кроме моего набора хромосом, разумеется