КатегорииElasticsearch

Elasticsearch Настройка — 2.1 Установка

Установка Elasticsearch

В этом разделе мы будем устанавливать Elasticsearch на локальном компьютере в виде одноузлового кластера. Как только мы начнем работу с кластером, мы научимся использовать API-интерфейсы для проверки работоспособности узлов. Разберем как установить в Windows, Mac OS  и Debian / RPM.

Установка Java

Elasticsearch — это Java-приложение. Прежде чем мы сможем запустить Elasticsearch, мы должны убедиться, что у нас установлена ​​Java. Вам требуется Java Runtime Environment ( JRE ). Elasticsearch рекомендует Oracle Java Development Kit ( JDK ) 1.8.0_73или выше. Вы можете проверить версию Java, установленную на вашем компьютере, выполнив следующую команду в командной строке или терминале:

java -version

Если у вас нет установленной Java или у вас установлена ​​более старая версия, следуйте инструкциям по следующей ссылке:

http://docs.oracle.com/javase/8/docs/technotes/guides/install/install_overview.html

Загрузить можно тут http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html .

Пожалуйста, примите лицензионное соглашение и загрузите JDK в выборе формата вашего пакета. После того, как вы установили Java, проверьте версию Java с помощью этой java -versionкоманды. Так же убедитесь что JAVA_HOME переменная среды установлена:

echo %JAVA_HOME%

Windows

Давайте загрузим последнюю версию Elasticsearch в zipформате пакета с https://www.elastic.co/downloads/elasticsearch .

Elasticsearch 5.5.1 zip можно загрузить с тут:

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.zip

После того, как вы загрузили ZIP-архив, распакуйте ZIP-архив в выбранный вами каталог.

Запуск и остановка Elasticsearch

Вы можете запустить Elasticsearch, используя двоичные скрипты в папке bin . Чтобы запустить экземпляр Elasticsearch, выполните следующие команды:

cd c:\elasticsearch-5.5.1
bin\elasticsearch.bat

Если Elasticsearch запущен успешно, вы увидите startedсообщение, показанное ниже:

[2017-01-26T20:20:35,919][INFO ][o.e.h.HttpServer] [elasticsearch1] publish_address {127.0.0.1:9200}, bound_addresses {[fe80::1]:9200}, {[::1]:9200}, {127.0.0.1:9200}
[2017-01-26T20:20:35,919][INFO ][o.e.n.Node] [elasticsearch1] started

Как видно из предыдущего сообщения журнала, работает Elasticsearch http://127.0.0.1:9200. Мы только начали использовать Elasticsearch в качестве одноузлового кластера.

Так как вы запустили его из командной строки, вы можете просто прервать процесс, нажав Ctrl + C . Если все хорошо, вы увидите сообщение в консоли, аналогичное показанному ниже:

[2017-01-26T20:22:34,092][INFO ][o.e.n.Node] [elasticsearch1] stopping ...
[2017-01-26T20:22:34,104][INFO ][o.e.n.Node] [elasticsearch1] stopped
[2017-01-26T20:22:34,104][INFO ][o.e.n.Node] [elasticsearch1] closing ...
[2017-01-26T20:22:34,110][INFO ][o.e.n.Node] [elasticsearch1] closed

Mac OS X

Давайте загрузим последнюю версию Elasticsearch в tar.gzформате, выполнив следующую команду в вашем терминале:

curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.tar.gz
tar -xvf elasticsearch-5.5.1.tar.gz 

После загрузки распакуйте в каталок по вашему усмотрению.

Запуск и остановка Elasticsearch

Вы можете запустить Elasticsearch, используя двоичные скрипты в папке bin . Чтобы запустить экземпляр Elasticsearch, выполните следующие команды:

cd elasticearch-5.1.2
./bin/elasticsearch

Если Elasticsearch запущен успешно, вы увидите примерно тоже что в низу:

[2017-01-26T20:20:35,919][INFO ][o.e.h.HttpServer] [elasticsearch1] publish_address {127.0.0.1:9200}, bound_addresses {[fe80::1]:9200}, {[::1]:9200}, {127.0.0.1:9200}
[2017-01-26T20:20:35,919][INFO ][o.e.n.Node] [elasticsearch1] started

Как видно из сообщения Elasticsearch запущен по адресу http://127.0.0.1:9200. Мы только начали использовать Elasticsearch в качестве одноузлового кластера.

Остановить можно нажав Ctrl + C. Если все хорошо вы увидите примерно следующее:

[2017-01-26T20:22:34,092][INFO ][o.e.n.Node] [elasticsearch1] stopping ...
[2017-01-26T20:22:34,104][INFO ][o.e.n.Node] [elasticsearch1] stopped
[2017-01-26T20:22:34,104][INFO ][o.e.n.Node] [elasticsearch1] closing ...
[2017-01-26T20:22:34,110][INFO ][o.e.n.Node] [elasticsearch1] closed

Пакеты DEB и RPM

Вы также можете установить Elasticsearch с помощью пакета Debian или RPM ( Red Hat Package Manager ). При установке с использованием пакетов DEB или RPM Elasticsearch будет установлен в /usr/share/elasticsearch. Обратите внимание, что структура каталогов отличается при установке с использованием пакета Debian или RPM по сравнению с файлом zip / tar.

Пакет Debian

Для операционной системы на базе Debian, такой как Ubuntu, вы можете загрузить пакет Debian непосредственно с веб-сайта Elasticsearch, используя следующую ссылку:

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.deb

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.deb
sudo dpkg -i elasticsearch-5.5.1.deb

При использовании пакета Debian Elasticsearch будет установлен как служба. Про запуск и остановку будет чуть ниже.

Пакет RPM

Для операционных систем на базе RPM, таких как Centos и Red Hat, вы можете загрузить пакет RPM непосредственно с веб-сайта Elasticsearch, используя следующую ссылку:

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.rpm

После загрузки пакета вы можете установить Elasticsearch, используя следующую команду:

sudo rpm --install elasticsearch-5.1.2.rpm

При использовании пакета RPM Elasticsearch будет установлен как служба.

Запуск и остановка Elasticsearch

Если вы устанавливаете Elasticsearch с помощью пакета Debian или RPM, вы можете запустить / остановить Elasticsearch с помощью команд управления сервисами.

Запуск:

sudo -i service elasticsearch start

Остановка:

sudo -i service elasticsearch stop

Вы можете проверить log файл, чтобы убедиться, что Elasticsearch запущен / остановлен успешно.

tail -100 /var/log/elasticsearch/elasticsearch.log

Примеры файлов конфигурации

Если вы устанавливаете Elasticsearch, используя zipили .tar.gzelasticsearch.ymlфайл находится в каталоге  в основной папке elasticsearch-5.5.1. Если вы устанавливаете Elasticsearch с использованием DEB / RPM, он по умолчанию находится в папке /etc/elasticsearch.

Если у вас пока только один узел, вам нужно установить имя кластера, имя узла и IP-адрес, к которому должен привязываться Elasticsearch. Если IP-адрес не указан, он будет привязан к localhost:

cluster.name: es-dev
node.name: elasticsearch1
network.host: 0.0.0.0

Если вы хотите настроить несколько узлов, наряду с вышеупомянутыми свойствами, вы также должны указать IP-адрес других узлов в кластере, чтобы они могли обнаружить друг друга.

Ниже приведена конфигурация для node1:

cluster.name: es-dev
node.name: elasticsearch1
network.host: 0.0.0.0
discovery.zen.ping.unicast.hosts: ["node1_ip_address:9300", "node2_ip_address:9300"]

Ниже приведена конфигурация для node2:

cluster.name: es-dev
node.name: elasticsearch2
network.host: 0.0.0.0
discovery.zen.ping.unicast.hosts: ["node1_ip_address:9300", "node2_ip_address:9300"]

Заметка

Обратите внимание, что имя кластера должно быть одинаковым для всех узлов в кластере. Внутренне узлы обмениваются данными друг с другом с использованием транспортного протокола, а номер порта для транспортного протокола — 9300.

Проверка Elasticsearch

По умолчанию Elasticsearch работает на 9200 HTTP-порту. После запуска Elasticsearch вы можете проверить его, забив в свой любимый браузер http://127.0.0.1:9200. Вы должны увидеть ответ JSON, подобный следующему:

{
   "name": "A_TmR2p",
   "cluster_name": "elasticsearch",
   "cluster_uuid": "Mp7tziykSjymFwBYozM4RA",
   "version": {
     "number": "5.5.2",
     "build_hash": "c8c4c16",
     "build_date": "2017-01-11T20:18:39.146Z",
     "build_snapshot": false,
     "lucene_version": "6.3.0"
   },
   "tagline": "You Know, for Search"
 }

Из ответа JSON вы можете видеть, что имя узлаA_TmR2p кластера elasticsearch, наряду с несколькими другими деталями. По умолчанию Elasticsearch назначает случайное имя ( A_TmR2p) узлу при запуске.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *