Neatek logo logotype
AdminVPS hosting

Нужно разработать сайт, или сделать разовую поддержку сервера? Или перенести сайт?

Технический специалист всегда поможет, расскажет, исправит неисправляемое.

Написать также можно в Telegram @neatekbot

Сделай заказ прямо сейчас

Установка ElasticSearch на Debian 8.10

Проверка версии Debian

Прежде чем устанавливать ElasticSearch нам нужно установить некоторые «пакеты» (packages) для его работы, и это openjdk (Java). Определить версию Debian через терминал можно командной:

cat /etc/debian_version

Если у вас `jessie` версия 8.х, то этот гайд для вас.

Готовка вашей системы

Для того чтобы установить нужные пакеты (OpenJDK 8), вам нужно добавить репозиторий backports. Для этого открываем файл : /etc/apt/sources.list

# jessie backports
deb http://http.debian.net/debian jessie-backports main

Добавляем в конец файла, после чего обновляем в системе репозитории.

apt-get update

Установка пакетов

Далее после добавления репозитория, мы можем установить OpenJDK8 на Debian Jessie.

apt-get install -t jessie-backports openjdk-8-jdk

проверить установку можно командой:

update-java-alternatives --list

Обычно вывод такой:

java-1.8.0-openjdk-amd64 1069 /usr/lib/jvm/java-1.8.0-openjdk-amd64

Однако если у вас несколько версий:

java-1.7.0-openjdk-amd64 1071 /usr/lib/jvm/java-1.7.0-openjdk-amd64
java-1.8.0-openjdk-amd64 1069 /usr/lib/jvm/java-1.8.0-openjdk-amd64

то лучше всего прописать по умолчанию версию 1.8.х

update-java-alternatives --set java-1.8.0-openjdk-amd64

Установка ElasticSearch

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
apt-get install apt-transport-https
echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-6.x.list
apt-get update && apt-get install elasticsearch

Проверка установки

После установки команды для управления сервисом одни и те же как и везде:

service elasticsearch status
service elasticsearch start
service elasticsearch stop

Набираем status, и видим: Active: active (running)

Значит наш ElasticSearch установлен и работает.

Попробуем отослать ему запрос:

curl -X GET localhost:9200

Если выдаст: -bash: curl: command not found

Смело прописываем:

apt-get install curl

Далее, снова пробуем послать cURL запрос на localhost:9200

После ответа:

curl -X GET localhost:9200
{
  "name" : "GpKQ1C",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "pO90wXMrR_S5o7GoPER_R",
  "version" : {
    "number" : "6.4.1",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "e36acdb",
    "build_date" : "2018-09-13T22:18:07.696808Z",
    "build_snapshot" : false,
    "lucene_version" : "7.4.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

Мы полностью удостоверились что всё установлено и работает.

Минимальное использование

Теперь можно заполнять Эластик:

Посылая различные PUT запросы вида:

curl -XPUT "localhost:9200/ИНДЕКС(БАЗА)/ТИП(ТАБЛИЦА)/НОМЕР(ID)?pretty" -d{JSON_CONTENT}

И также искать в нём записи:

curl -XGET "localhost:9200/ИНДЕКС(БАЗА)/ТИП(ТАБЛИЦА)/_search?pretty" -d'
{
  "size": 1,
  "_source": ["ПОЛЕ ИЗ JSON1", "ПОЛЕ ИЗ JSON2"],
  "sort": [{"ПОЛЕ ИЗ JSON1": "desc"}]
}

XGET Запрос на поиск записей в ElasticSearch.

В принципе ничего сложного нет.

Оцените данную статью

КолДваТриЧетыреОтлично! (2 оценок, средне: 5,00 из 5)