Elasticsearch – это гибкая и мощная система поиска и аналитики с открытым исходным кодом, распределенная в реальном времени. Используя простой набор API, он обеспечивает возможность полнотекстового поиска. Elasticsearch свободно доступен под лицензией Apache 2, что обеспечивает максимальную гибкость.
Эта статья расскажет Вам, как быстро установить Elasticsearch на Ubuntu 18.04 или 16.04 LTS.
Шаг 1 – Подготовка
Подключитесь к своему серверу посредством SSH. Убедитесь, что у Вас привилегии суперпользователя (root).
Elasticsearch требует Java для запуска в любой системе. Убедитесь, что в Вашей ОС установлена Java. Можно проверить версию Java, выполнив команду:
$ java -version java version "11.0.2" 2019-01-15 LTS Java(TM) SE Runtime Environment 18.9 (build 11.0.2+9-LTS) Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.2+9-LTS, mixed mode)
Видим, что Java есть и ее версия 11.0.2. Так же убедитесь, что задана переменная JAVA_HOME:
$ echo $JAVA_HOME /usr/lib/jvm/java-11-oracle
Шаг 2 – Установка Elasticsearch на Ubuntu
Elasticsearch предоставляет репозитории для установки на Linux. Установим его и ключи GPG.
$ sudo apt-get install apt-transport-https $ wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - $ add-apt-repository "deb https://artifacts.elastic.co/packages/7.x/apt stable main"
После добавления репозитория, обновим список доступных пакетов и установим Elasticsearch на наш сервер
$ sudo apt-get update $ sudo apt-get install elasticsearch
Шаг 3 – Настройка Elasticsearch
Теперь Elasticsearch установлен на сервер. Мы можем изменить настройки в конфигурационном файле, с помощью любимого текстового редактора:
$ sudo vim /etc/elasticsearch/elasticsearch.yml
Установим следующие значения:
network.host: 0.0.0.0 cluster.name: CL01 node.name: "H01"
- network.host – IP адрес указывает на интерфейс, на котором будет слушать Elasticsearch (значение 0.0.0.0 означает, что будут использоваться все доступные интерфейсы)
- cluster.name – Имя кластера. Используйте одно имя кластера на разных хостах, чтобы их объединить.
- node.name – Уникальное имя ноды в кластере.
Шаг 4 – Запуск Elasticsearch
Сделаем так, чтобы Elasticsearch запускался вместе со стартом системы:
$ sudo /bin/systemctl enable elasticsearch.service
Запуск и остановка службы Elasticsearch делается с помощью команд:
$ sudo systemctl start elasticsearch.service $ sudo systemctl stop elasticsearch.service
Шаг 5 – Тестирование
Elasticsearch готов к работе. Мы можем в этом убедиться с помощью curl, отправив GET запрос. В ответ получим версию и другие параметры “эластика”.
$ curl -X GET "http://127.0.0.1:9200/?pretty"
{ "name" : "H01", "cluster_name" : "CL01", "cluster_uuid" : "OdfIfjjKKdw_gokfJDeyw", "version" : { "number" : "7.3.0", "build_flavor" : "default", "build_type" : "deb", "build_hash" : "de777fa", "build_date" : "2019-11-19T09:11:00.345654Z", "build_snapshot" : false, "lucene_version" : "8.1.0", "minimum_wire_compatibility_version" : "6.8.0", "minimum_index_compatibility_version" : "6.0.0-beta1" }, "tagline" : "You Know, for Search" }
Более подробно с конфигурированием можно ознакомиться в документации на этом сайте.