Назад | Перейти на главную страницу

Запуск обратного прокси перед 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 за обратным прокси?

Ключевым элементом, который необходимо изменить в 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"

Отключить проверку сертификатов на 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>