Запуск обратного прокси перед Splunk 4.x
Итак, я ранее установил Splunk 3.x за обратным прокси-сервером и загрузил последнюю версию (4.0.6 во время ввода), ожидая, что она будет такой же простой в использовании, как и раньше. К сожалению, это был не тот случай. Кажется, что есть некоторые элементы, которые не транслируются правильно через обратный прокси, что приводит к сбою Splunk.
Я использовал следующую конфигурацию в Apache2 безрезультатно:
<VirtualHost *>
ServerName monitoringbox.com
DocumentRoot /path/to/nowhere
ProxyRequests off
ProxyPass /splunk http://127.0.0.1:8000/splunk
ProxyPassReverse /splunk http://127.0.0.1:8000/splunk
<Proxy /splunk/*>
Order allow,deny
Allow from all
</Proxy>
Кому-нибудь еще повезло больше, чем мне в настройке Splunk 4.x за обратным прокси?
4 ответа
Ключевой элемент, который необходимо изменить в Splunk web.conf:
tools.proxy.on = True
Все хорошо сейчас.
Я вижу, что вы отображаете / разбиваете на /splunk бэкэнд-экземпляра, порт 8000. Я не знаю, какова ваша версия, но наша (4.2) отвечает напрямую на /.
Можете ли вы попробовать удалить /splunk часть внутреннего URL-адреса? Как это:
ProxyPass /splunk http://127.0.0.1:8000/
ProxyPassReverse /splunk http://127.0.0.1:8000/
Одна из моих установок Splunk находится за обратным прокси. Инструкции заканчиваются на сайте splunkninja.com: http://splunkninja.com/profiles/blogs/configuring-apache-as-a
Я пока не могу комментировать... отвечая на @sgerrand
Я решил проблему, создав два разных правила перезаписи. Один для статического, а другой для остального контента. Пожалуйста, имейте в виду, что моя конфигурация предназначена для двух поисковых головок Splunk в разных контекстах.
< VirtualHost blablabla:443>
........ Все вещи, связанные с именем сервера, каталогом, documentroot и настройкой SSL........
AllowEncodedSlashes On
SSLProxyEngine On
RequestHeader set Front-End-Https "On"
Отключите проверки сертификатов в SSLProxy, так как использование самозаверяющих сертификатов в поисковых заголовках Splunk
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
переписать правило для пересылки запроса для каждой из поисковых глав
ProxyPassReverse /one https://10.0.1.1:8000/one
ProxyPassReverse /two https://10.0.1.2:8000/two
RewriteEngine on
переписать правило для нестатического контекста
RewriteRule /one(.*) balancer://splunkbalancer_one$1 [P]
RewriteRule /two(.*) balancer://splunkbalancer_two$1 [P]
переписать для статических запросов
RewriteRule ^/(.+) balancer://splunkbalancer/$1 [P]
настройка для липкой сессии на балансирах
Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED
Balacer для статических запросов
<Proxy balancer://splunkbalancer>
BalancerMember https://10.0.1.1:8000/one route=1
BalancerMember https://10.0.3.2:8000/two route=2
ProxySet stickysession=ROUTEID
</Proxy>
Balacer для нестатического для каждого контекста Splunk это подготовить к будущему и иметь более одного заголовка поиска в каждом контексте
<Proxy balancer://splunkbalancer_one>
BalancerMember https://10.0.1.1:8000/one route=1
ProxySet stickysession=ROUTEID
</Proxy>
<Proxy balancer://splunkbalancer_two>
BalancerMember https://10.0.1.2:8000/two route=2
ProxySet stickysession=ROUTEID
</Proxy>
</VirtualHost>