Сервис elasticsearch поднят на удаленном сервере, доступ к которому возможен только через ssh. Необходимо получить возможность просмотра состояния elasticsearch локально.
- Создаем линковку по порту
ssh -i ~/.ssh/id_rsa user@servername -L 9200:elastic.service:9200 -N -v
здесь можно использовать прокинутые заранее через конфиг настройки серверов и в качестве servername указывать уже настроенные заранее названия серверов. (Подробнее тут)
-i - идентификационный файл
имяпользователя@имясервера
-L <local_port>:local_from_remote_server_name:<remote_port>
local_port
— локальный порт текущей машины,local_from_remote_server_name
— имя сервера к которому осуществляется подключение с удаленного сервера (как если бы были авторизованы на удаленном сервере)remote_port
— порт по которому идет подключение к целевому серверу-N
— без выполнения команд, полезно при использовании только перенаправления портов-v
— запуск дебага. В этом случае будем видеть какие команды выполняются
- с другого окна запускаем запрос
curl -XGET "http://localhost:9200"
ответ
{ "name" : "elasticsearch-node1", "cluster_name" : "search", "cluster_uuid" : "uoDiV4Kpy86Xugai", "version" : { "number" : "5.6.8", "build_hash" : "799bace", "build_date" : "2018-02-16T16:46:30.010Z", "build_snapshot" : false, "lucene_version" : "6.6.1" }, "tagline" : "You Know, for Search" }
Теперь к проброшенному порту можно подключиться в том числи и через любой gui. Например:
- плагин для Chrome — ElasticSearch Head
- плагин для Chrome — ElasticVue
- https://www.elastic-kaizen.com/
- Возможные проблемы
- занят порт:
решение:fuser 9200/tcp
в ответе должны получить id процесса, который можно убить и порт должен освободиться.
- занят порт:
Источник
- Remotely access an Elasticsearch server using SSH tunnel — DEV Community
- Browsing Elasticsearch With Kaizen
2 Replies to “Elasticsearch через ssh на удаленном сервере”
Уже отвечал автору Browsing Elasticsearch With Kaizen что поднимать туннель не нужно. Kaizen умеет сам создавать туннель.
Да, Kaizen умеет поднимать туннель, но есть многое что он не умеет, поэтому туннель в данном случае не только для него.