При работе с Elasticsearch очень важно знать версию используемого продукта, поскольку разные версии имеют различные возможности, API и конфигурации. В этой статье мы рассмотрим различные методы определения версии Elasticsearch, включая использование REST API, инструментов командной строки и клиентов Elasticsearch.
Использование REST API
Elasticsearch предоставляет REST API, с помощью которого можно получить информацию о кластере, включая версию. Чтобы получить версию Elasticsearch, можно отправить GET-запрос к корневой конечной точке кластера. Приведем пример с использованием команды curl:
1 | curl -X GET "http://localhost:9200" |
В ответ будет получен JSON-объект, содержащий информацию о кластере, включая версию:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | { "name" : "node-1", "cluster_name" : "elasticsearch", "cluster_uuid" : "abcd1234", "version" : { "number": "8.8.0", "build_flavor": "default", "build_type": "docker", "build_hash": "c01029875a091076ed42cdb3a41c10b1a9a5a20f", "build_date": "2023-05-23T17:16:07.179039820Z", "build_snapshot": false, "lucene_version": "9.6.0", "minimum_wire_compatibility_version": "7.17.0", "minimum_index_compatibility_version": "7.0.0" }, "tagline" : "You Know, for Search" } |
В данном примере версия Elasticsearch равна 8.8.0.
Метод 2: Использование инструментов командной строки
Если у вас есть доступ к директории установки Elasticsearch, то для определения версии можно воспользоваться средствами командной строки, предоставляемыми Elasticsearch. Сценарий `elasticsearch` находится в каталоге `bin` инсталляции Elasticsearch.
Перейдите в каталог `bin` и выполните следующую команду:
1 | ./elasticsearch --version |
В результате будет показана версия Elasticsearch:
1 | Version: 8.8.0, Build: default/docker/c010298/2023-05-23T17:16:07.179039820Z, JVM: 20.0.1. |
В данном примере версия Elasticsearch равна 8.8.0.
Метод 3: Использование клиентов Elasticsearch
Elasticsearch предоставляет официальные клиенты для различных языков программирования, таких как Java, Python и JavaScript. С помощью этих клиентов можно подключиться к кластеру Elasticsearch и получить версию.
Приведем пример использования клиента Python Elasticsearch:
1 2 3 4 | from elasticsearch import Elasticsearch es = Elasticsearch("http://localhost:9200") info = es.info() print("Версия Elasticsearch:", info["version"]["number"]) |
Этот сценарий подключается к кластеру Elasticsearch, получает информацию о кластере и выводит версию. В данном примере версия Elasticsearch равна 8.8.0.
Метод 4: Использование Kibana
Если у вас установлена и настроена для работы с кластером Elasticsearch программа Kibana, вы можете воспользоваться инструментами Dev Tools Kibana для отправки GET-запроса к корневой конечной точке кластера и получения информации о версии.
Откройте Kibana в браузере, перейдите в раздел Dev Tools и введите в консоли следующий запрос:
1 | GET / |
Нажмите кнопку "Отправить запрос", и ответ будет отображен в правой панели. Версию Elasticsearch можно найти в поле "version" объекта JSON.