Итак, я ранее установил 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 за обратным прокси?
Ключевым элементом, который необходимо изменить в Splunk web.conf, является:
tools.proxy.on = True
Теперь все хорошо.
Я вижу, что вы отображаете / splunk в / 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>
.... .... Все, что касается имени сервера, каталога, корневого каталога документов и конфигурации SSL .... ....
AllowEncodedSlashes On
SSLProxyEngine On
RequestHeader set Front-End-Https "On"
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
<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>
<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>