Скидка 50% на все тарифы, ограниченное время. От $2.48/mo
8 мин чтения
Базы данных и аналитика

Установка Elasticsearch на Ubuntu — запустите Elastic для поиска без ограничений!

Пиус Боденманн By Пиус Боденманн 8 мин чтения Обновлено 2 апр. 2024 г.
установить elasticsearch ubuntu

В современном цифровом мире многие поисковые инструменты не справляются с запросами опытных пользователей. В этом руководстве мы расскажем о Elasticsearch, мощном движке для поиска и аналитики. На примере Ubuntu мы покажем, как установить Elasticsearch на Ubuntu 22.04, чтобы сделать работу с данными быстрее и удобнее - для разработчиков, аналитиков данных и начинающих дата-сайентистов.

Если вы готовы начать работу с Elasticsearch и раскрыть потенциал ваших данных - давайте начнём с краткого введения, а затем перейдём к установке. К концу этого руководства у вас будет полностью настроенный Elasticsearch на вашей системе Ubuntu, готовый к работе.

Что такое Elasticsearch?

Прежде чем перейти к туториалу по Elasticsearch, разберём его определение и подробнее рассмотрим его REST API . Elasticsearch - это движок для поиска и аналитики, построенный на базе Apache Lucene. Он хорошо справляется с большими объёмами данных и обеспечивает высокую скорость поиска. Elasticsearch широко применяется для анализа логов, полнотекстового поиска и аналитики в реальном времени. Данные хранятся в распределённом виде: они разбиваются на шарды, которые распределяются между узлами кластера. Такой подход обеспечивает высокую доступность и отказоустойчивость.

Elasticsearch известен своим полнофункциональным REST API. Через этот API пользователи взаимодействуют с Elasticsearch с помощью стандартных HTTP-запросов. Как правило, запросы оформляются в виде JSON-данных и позволяют выполнять такие операции, как индексирование, поиск, обновление и удаление документов.

REST API следует принципам Representational State Transfer (REST) - архитектурного стиля для проектирования сетевых приложений. В его основе лежат стандартные HTTP-методы например GET, POST, PUT, DELETE и другие — для работы с ресурсами Elasticsearch.

Чтобы проиндексировать новый документ, отправьте POST-запрос с документом в формате JSON на /index_name/_doc конечной точке. Если же вам нужно найти документы, отправьте GET-запрос с параметрами поиска на /index_name/_search конечную точку для получения результатов.

Кроме того, RESTful API предоставляет широкие возможности для запросов: сложные поиски с фильтрами, агрегациями, различными типами запросов и параметрами сортировки. Можно настраивать релевантность, выполнять полнотекстовый или геопространственный поиск и многое другое. Для интеграции с приложениями Elasticsearch предоставляет клиентские библиотеки для нескольких языков программирования. В итоге распределённая архитектура Elasticsearch в сочетании с удобным RESTful API делает его мощным инструментом для построения поисковых и аналитических решений.

Руководство по Elasticsearch: как установить Elasticsearch на Ubuntu

Итак, разберёмся, как установить Elasticsearch на Ubuntu. Сначала я покажу процесс установки Elasticsearch на Ubuntu 22.04 — шаг за шагом, без лишних сложностей. Затем рассмотрим основные функции, чтобы вы быстро освоились, даже если видите это впервые. Начнём.

Шаг 1: Обновите свой Ubuntu

Перед установкой Elasticsearch Ubuntu убедитесь, что системные пакеты обновлены. Выполните в терминале две команды:

sudo apt update
sudo apt upgrade

Шаг 2: Установка Java

Elasticsearch работает на Java, поэтому нам нужно установить его на наш Ubuntu — это обеспечит корректную установку Elasticsearch на Ubuntu. OpenJDK — это версия Java с открытым исходным кодом: она проще устанавливается и нередко работает быстрее. Используйте следующую команду для установки Java через OpenJDK:

sudo apt install openjdk-11-jdk

Шаг 3: Скачайте Elasticsearch

С обновлённой системой и установленным Java можно переходить к установке Elasticsearch на Ubuntu. Зайдите на официальный сайт Elasticsearch, чтобы получить актуальную ссылку для скачивания. Скопировав ссылку, выполните команду "wget команда для быстрого скачивания Elasticsearch. Пример пошагового выполнения:

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.14.0-amd64.deb

Шаг 4: Установка и настройка Elasticsearch Ubuntu

После завершения загрузки Ubuntu Elasticsearch можно переходить к установке. Запустите её следующей командой:

sudo dpkg -i elasticsearch-7.14.0-amd64.deb

Эта команда найдёт загруженный файл Elasticsearch и запустит его распаковку для установки Elasticsearch на Ubuntu. После завершения установки нужно будет решить, должен ли Elasticsearch принимать подключения только с локальной машины. По умолчанию ограничений нет, но многие предпочитают более закрытую конфигурацию. Чтобы изменить этот параметр, откройте указанный файл в текстовом редакторе:

sudo nano /etc/elasticsearch/elasticsearch.yml

Затем в файле найдите строку, которая начинается с фразы "# network.hostи удалить # в начале строки. Это установит значение localhost и ограничит Elasticsearch прослушиванием только локального интерфейса. Если вы не хотите вносить это изменение, пропустите вторую часть шага 4.

Шаг 5: Запуск и тестирование Elasticsearch

После успешной установки Elasticsearch на Ubuntu 22.04 можно запустить сервис. Используйте следующую команду:

sudo systemctl start elasticsearch

Дождитесь загрузки программы. Чтобы добавить её в автозапуск системы, выполните:

sudo systemctl enable elasticsearch

Чтобы убедиться, что Elasticsearch установлен и работает корректно, выполните приведённую команду. Она отправит HTTP-запрос на ваш сервер и должна вернуть JSON-ответ. Если ответ получен, установка прошла успешно. Обратите внимание: эту команду нужно вводить не в терминале, а в браузере:

http://localhost:9200

Шаг 6: Защита Elasticsearch на Ubuntu

Со временем в кластере Elasticsearch накапливаются важные данные проектов и серверов, которые не должны попасть в чужие руки. Поэтому после основной части установки стоит уделить время настройке безопасности. Начните с открытия файла конфигурации в текстовом редакторе:

sudo nano /etc/elasticsearch/elasticsearch.yml

Найдите следующую строку и удалите # в начале:

xpack.security.enabled: true

Это включит базовые меры защиты Elasticsearch. Сохраните изменения и закройте редактор. Теперь нужно задать пароли для встроенных пользователей Elasticsearch. Откройте интерактивную оболочку Elasticsearch командой:

sudo /usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive

Вам будет предложено задать пароль для каждого встроенного пользователя Elasticsearch. Придумайте пароли, которые сложно угадать, но легко запомнить. В качестве финального шага можно включить брандмауэр — хотя это и необязательно:

sudo apt install ufw
sudo ufw enable

После открытия и активации брандмауэра ограничьте входящие подключения двумя портами, которые использует Elasticsearch. Это заблокирует нежелательный и потенциально опасный трафик:

sudo ufw allow 9200
sudo ufw allow 9300

Наконец, перезапустите Elasticsearch, чтобы изменения вступили в силу:

sudo systemctl restart elasticsearch

Готово! Вы успешно установили Elasticsearch на Ubuntu и настроили его защиту. Чтобы работать с Elasticsearch и его RESTful API, используйте учётные данные (имя пользователя и пароль), которые вы задали ранее. Регулярно обновляйте Elasticsearch и следите за актуальностью настроек безопасности.

Подводим итоги

Установка Elasticsearch на Ubuntu открывает широкие возможности для поиска и анализа данных. Следуя этому руководству и настроив защиту, вы обеспечите сохранность данных. RESTful API Elasticsearch позволяет легко выполнять любые операции: от индексирования и поиска до обновления документов. Освоить все возможности Elasticsearch непросто, но подробная документация поможет разобраться с продвинутыми функциями. Начните работу с Elasticsearch на Ubuntu — и получите производительный инструмент с широкими возможностями для анализа и исследования данных.

Хотите получить от Elasticsearch на Ubuntu ещё больше? Воспользуйтесь мощными возможностями Cloudzy — Linux VPS. На базе Ubuntu-версии нашего Linux VPS вы можете развернуть производительный сервер с Elasticsearch в одном из более чем 12 дата-центров по всему миру. Это гарантирует низкую задержку, а наши инструменты защиты позаботятся о безопасности. Принимаем широкий выбор обычных и анонимных способов оплаты — получите Ubuntu VPSс гарантией доступности 99,95% и применяйте всё, что вы узнали из этого руководства по Elasticsearch, на полную мощность!

ubuntu-vps Очевидный выбор

Большинство серверов на Linux работают на Ubuntu. Узнайте, почему его выбирают снова и снова, и получите оптимизированный Ubuntu VPS.

Получить Ubuntu VPS

Часто задаваемые вопросы

В чём разница между Elasticsearch и Apache Lucene?

Elasticsearch построен на основе Apache Lucene — библиотеки полнотекстового поиска. Lucene отвечает за базовое индексирование и поиск, а Elasticsearch расширяет эти возможности: добавляет распределённые вычисления, горизонтальное масштабирование и удобный RESTful API, что делает его оптимальным решением для распределённых окружений.

Как Elasticsearch обеспечивает избыточность данных и отказоустойчивость?

Elasticsearch обеспечивает избыточность данных и отказоустойчивость за счёт распределённой архитектуры. Данные делятся на несколько шардов и распределяются по узлам кластера. Каждый шард реплицируется на нескольких узлах. При отказе одного из них Elasticsearch продолжает получать данные из реплик на других узлах, сохраняя высокую доступность.

Подходит ли Elasticsearch для аналитики в реальном времени?

Да, Elasticsearch хорошо справляется с аналитикой в реальном времени. Индексирование в режиме, близком к реальному времени, обеспечивает быстрое обновление и получение данных. В сочетании с мощными агрегациями это позволяет оперативно анализировать и визуализировать данные, что делает Elasticsearch популярным выбором для таких задач.

Поддерживает ли Elasticsearch геопространственные данные?

Да, Elasticsearch имеет полноценную поддержку геопространственных данных. Доступны геопространственное индексирование и поиск: можно индексировать документы по географическим координатам, вычислять расстояния, применять фильтры и агрегации по местоположению. Эти возможности хорошо задокументированы и широко используются на практике.

Можно ли использовать Elasticsearch для логирования и аналитики логов?

Да, конечно. Elasticsearch широко применяется для аналитики логов и централизованного логирования. Загружая логи в Elasticsearch, вы можете искать, анализировать и визуализировать данные практически в реальном времени. В связке с инструментами Logstash и Kibana образуется стек ELK (Elasticsearch, Logstash, Kibana), который популярен для управления логами и их аналитики.

Поделиться

Другие статьи блога

Читать дальше.

Оригинальный символ MongoDB на фоне футуристического сервера для установки MongoDB на Ubuntu+ слоган о том, что читателя ждёт в статье + заголовок статьи + логотип Cloudzy
Базы данных и аналитика

Как установить MongoDB на три последние версии Ubuntu (пошаговое руководство)

Итак, вы решили использовать MongoDB — достойную альтернативу MariaDB для создания приложений на стеке MERN, аналитических платформ или систем на основе документов, — но столкнулись с нехваткой нормальной до

Джим ШварцДжим Шварц 12 мин чтения
Грамотное управление данными для бизнеса: облачное хранение и резервное копирование на базе VPS
Базы данных и аналитика

Грамотное управление данными для бизнеса: облачное хранение и резервное копирование на базе VPS

VPS для защиты бизнес-данных — это подход, который я рекомендую каждый раз, когда компания решает перестать хранить файлы на разных ноутбуках, пересылать их по почте и полагаться на давно забытые

Рекса СайрусРекса Сайрус 7 мин чтения
Материализованное представление против обычного представления
Базы данных и аналитика

Материализованное представление и обычное представление: в чём разница и где их применять

В системах управления базами данных материализованное представление — это объект, хранящий предвычисленные результаты запроса в виде физической таблицы. Поскольку данные реально записываются на диск, сложные

Айви ДжонсонАйви Джонсон 7 мин чтения

Готовы к деплою? От $2.48/мес.

Независимый облачный провайдер с 2008 года. AMD EPYC, NVMe, 40 Gbps. Возврат средств в течение 14 дней.