Скидка 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, получите оптимизированный 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), который популярен для управления логами и их аналитики.

Поделиться

Ещё в блоге

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

Сравнительная таблица самостоятельно размещаемых аналитических инструментов Umami, Matomo, Fathom Lite и Ackee с привязкой к размерам VPS и расположению европейских дата-центров
Базы данных и аналитика

Лучшая самостоятельно размещаемая аналитика: Matomo vs Umami vs Fathom Lite (и где каждый подходит лучше всего)

После Schrems II ряд европейских органов по защите данных установил, что Google Analytics порождал незаконные проблемы передачи данных из ЕС в США в рамках прежней схемы передачи. Эта статья

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

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

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

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

Умное управление данными для вашего бизнеса: «облачные» стратегии хранения и резервного копирования на VPS

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

Рекса СайрусРекса Сайрус 7 мин чтения

Готовы к развёртыванию? От $2,48/мес.

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