Настройте Nginx, Kibana, Elasticsearch

Моя установка

Nginx + Kibana - то же поле другой домен, субдомен (nginx - example.com, kibana - kibana.example.com)

Elasticsearch - 192.168.100.31

Я использовал конфигурацию, определенную ниже. Замененный 127.0.0.1 с Elasticsearch IP 192.168.100.31

https://github.com/elasticsearch/kibana/blob/master/sample/nginx.conf

Эта установка работает в локальной сети. Но сбои при соединении внешне с сообщением об ошибке на браузере "Error Could not contact Elasticsearch at http://192.168.100.31:9200. Please ensure that Elasticsearch is reachable from your system.".

Kibana config.js точки к IP и порту 9200 -

  elasticsearch: "http://192.168.100.31:9200",

Примечание: Изменение этого порта для соответствия порту, определенному в nginx конфигурация 8433 делает его stop функционирование.

nginx config

server {
    listen          8443 ssl;
    server_name     kibana.example.com;

    access_log  /var/logs/nginx/kibana.access.log main;
    error_log   /var/logs/nginx/kibana.error.log;

    auth_basic "Authorized users";
    auth_basic_user_file /file/location/kibana.htpasswd;

    location / {
        root  /usr/local/kibana-3.1.0;
        index  index.html  index.htm;            
    }       

    location ~ ^/_aliases$ {
        proxy_pass http://192.168.100.31:9200;
        proxy_read_timeout 90;
    }
    location ~ ^/.*/_aliases$ {
        proxy_pass http://192.168.100.31:9200;
        proxy_read_timeout 90;
    }
    location ~ ^/_nodes$ {
        proxy_pass http://192.168.100.31:9200;
        proxy_read_timeout 90;
    }
    location ~ ^/.*/_search$ {
        proxy_pass http://192.168.100.31:9200;
        proxy_read_timeout 90;
    }
    location ~ ^/.*/_mapping {
        proxy_pass http://192.168.100.31:9200;
        proxy_read_timeout 90;
    }

    # Password protected end points
    location ~ ^/kibana-int/dashboard/.*$ {
        proxy_pass http://192.168.100.31:9200;
        proxy_read_timeout 90;
        limit_except GET {
          proxy_pass http://192.168.100.31:9200;
          # auth_basic "Restricted";
          # auth_basic_user_file /file/location/kibana.htpasswd;
        }
    }
    location ~ ^/kibana-int/temp.*$ {
        proxy_pass http://192.168.100.31:9200;
        proxy_read_timeout 90;
        limit_except GET {
            proxy_pass http://192.168.100.31:9200;
            # auth_basic "Restricted";
            # auth_basic_user_file /file/location/kibana.htpasswd;
        }
    }
}

Чувства там должны быть некоторой установкой прокси между nginx и elasticsearch предотвратить локальный IP отобразилось на браузере. Может кто-то показывать, как настроить это.

0
задан 5 October 2014 в 19:45
1 ответ

Решение найдено, пришлось установить PROXY в nginx и, конечно, установить соответствие FQDN в configs.js Kibana

0
ответ дан 24 November 2019 в 09:01

Теги

Похожие вопросы