Как использовать dejavu для эластичного поиска на локальном запуске из opensource.appbase.io - PullRequest
0 голосов
/ 08 мая 2018

Я хотел использовать замечательное программное обеспечение dejavu для аудита локального экземпляра эластичного поиска.

Прекрасная идея, но в настоящее время кажется, что это не так просто, как должно быть. Но я нашел способ сделать это, и я хочу поделиться с сообществом.

По сути, вы можете запустить dejavu из opensource.appbase.io, но сначала вам нужно установить SSL для доступа к вашей локальной ES. Вот как я это сделал менее чем за 1 час (сэкономив остальные 4 часа поиска в Google / reasearch / try & fail).

Это немного похоже на проблему https://github.com/appbaseio/dejavu/issues/106, но запускается с веб-сайта dejavu вместо локального расширения.

На всякий случай, я успешно протестировал это на Chrome и Firefox. Я сделал все это в Windows, но я полагаю, что Linux должен работать, потому что здесь ничего не описано для Windows.

Плохая новость: расширение Google не работает (понятия не имею, поскольку сообщения об ошибках не существует)

Подробнее: я не хочу иметь дело с Docker, это другой «легкий» способ, который предоставляется.

Так вот что я сделал:

1.- вот ссылка на основной сайт: https://opensource.appbase.io/dejavu/

2.- нажмите, чтобы запустить его вживую. Вот ссылка: https://opensource.appbase.io/dejavu/live?default=true

Он начнется немедленно, но не сможет получить никаких данных. Не волнуйся.

3.- укажите его на локальный, в моем случае это было http://localhost:9200 плюс мой индексный документ ES. Не удалось, но не волнуйтесь.

Если вы посмотрите на консоль и сетевые инструменты вашего браузера, dejavu пытается подключиться через SSL к вашему ES. Вот где требуется установка SSL на ES (или перед ним).

Есть несколько способов сделать это. В моем случае (потому что это было не для производства) я использовал Apache httpd, в частности, уже упакованную (переносную) версию xampp, поэтому его загрузка и запуск занимает всего несколько минут. Я скачал отсюда: https://portableapps.com/apps/development/xampp

4.- после установки Apache откройте новую вкладку в своем браузере и попробуйте SSL, например https://localhost, и он выдаст правильное предупреждение о сертификате. Просто положитесь на него, чтобы проверить, работает ли SSL. Не беспокойтесь о предупреждении.

5.- чтобы установить SSL для правильного перенаправления ES-запросов, у вас есть эти простые настройки, которые нужно добавить в файл конфигурации apache, а затем перезапустить apache. Я взял эту идею отсюда: Elasticsearch с прокси-сервером apache2

<Proxy http://127.0.0.1:9200>
    ProxySet connectiontimeout=5 timeout=90
</Proxy>
<LocationMatch "^(/_aliases|.*/_search|.*/_mapping|/_nodes|/_settings)$">
    ProxyPassMatch http://127.0.0.1:9200
    ProxyPassReverse http://127.0.0.1:9200
</LocationMatch>

6.- теперь необходимо установить авторизацию кросс-происхождения на вашем ES. Добавьте эти строки в файлasticsearch.yml и перезапустите ES. Инструкции взяты с сайта dejavu github: https://github.com/appbaseio/dejavu

http.cors.allow-origin: "https://opensource.appbase.io"
http.cors.enabled: true
http.cors.allow-headers : X-Requested-With,X-Auth-Token,Content-Type,Content-Length,Authorization,Access-Control-Allow-Origin
http.cors.allow-credentials: true

7.- проверьте, как идут дела: получите отображение индекса примерно так: https://localhost/your_es_doc_index/_mapping

Вы получите отображение JSON вашего индекса. Все работает (Apache и ES)

8.- теперь, в вашем dejavu, укажите его на https://localhost:443 (да, порт должен быть установлен, потому что если нет, то он будет https://localhost:9200, верить этому или нет). Не забудьте установить индексный документ ES в поле «заголовок» ni dejavu. Теперь нажмите «Подключиться».

Через пару секунд у вас будет готов список доступных типов в dejavu

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...