Elasticsearch je bezplatný analytický nástroj s otevřeným zdrojovým kódem, který se používá k ukládání, vyhledávání a analýze velkých objemů dat v reálném čase. Je napsán v Javě a je založen na Apache Lucene. Je známý pro svou rychlost, škálovatelnost a výkonnou sadu funkcí. Můžete jej použít ke sledování výkonu aplikací, protokolování a analýze protokolů.
V tomto tutoriálu vám ukážeme, jak nainstalovat ElasticSearch na Rocky Linux 8.
Předpoklady
- Server se systémem RockyLinux 8.
- Na serveru je nakonfigurováno heslo uživatele root.
Instalovat Javu
ElasticSearch je založen na Javě. Na vašem serveru tedy musí být nainstalována Java. Můžete jej nainstalovat pomocí následujícího příkazu:
dnf install java-11-openjdk-devel -y
Jakmile je Java nainstalována, ověřte instalaci Java pomocí následujícího příkazu:
java -version
Měli byste vidět následující výstup:
openjdk version "11.0.12" 2021-07-20 LTS OpenJDK Runtime Environment 18.9 (build 11.0.12+7-LTS) OpenJDK 64-Bit Server VM 18.9 (build 11.0.12+7-LTS, mixed mode, sharing)
Instalovat ElasticSearch
Ve výchozím nastavení není ElasticSearch součástí Rocky Linux 8. Takže budete muset vytvořit ElasticSearch repo.
Nejprve importujte klíč ElasticSearch GPG pomocí následujícího příkazu:
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
Dále vytvořte ElasticSearch repo pomocí následujícího příkazu:
nano /etc/yum.repos.d/elasticsearch.repo
Přidejte následující řádky:
[elasticsearch-7.x] name=Elasticsearch repository for 7.x packages baseurl=https://artifacts.elastic.co/packages/7.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md
Uložte a zavřete soubor a poté nainstalujte balíček ElasticSearch pomocí následujícího příkazu:
dnf install elasticsearch -y
Jakmile je ElasticSearch nainstalováno, můžete přejít k dalšímu kroku.
Konfigurovat ElasticSearch
Ve výchozím nastavení je hlavní konfigurační soubor ElasticSearch umístěn na adrese /etc/elasticsearch/elasticsearch.yml . Můžete jej upravit pomocí následujícího příkazu:
nano /etc/elasticsearch/elasticsearch.yml
Definujte název uzlu, název klastru, datovou cestu a hostitele sítě, jak je uvedeno níže:
cluster.name: Elastic Cluster
node.name: rockylinux
path.data: /var/lib/elasticsearch
network.host: 127.0.0.1
Uložte a zavřete soubor, poté spusťte službu ElasticSearch a povolte její spuštění při restartu systému:
systemctl start elasticsearch
systemctl enable elasticsearch
Stav ElasticSearch můžete ověřit pomocí následujícího příkazu:
systemctl status elasticsearch
Měli byste vidět následující výstup:
? elasticsearch.service - Elasticsearch
Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; disabled; vendor preset: disabled)
Active: active (running) since Mon 2021-08-09 04:34:34 UTC; 8s ago
Docs: https://www.elastic.co
Main PID: 5247 (java)
Tasks: 62 (limit: 11411)
Memory: 1.1G
CGroup: /system.slice/elasticsearch.service
??5247 /usr/share/elasticsearch/jdk/bin/java -Xshare:auto -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=1>
??5412 /usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/bin/controller
Aug 09 04:33:29 RockyLinux8 systemd[1]: Starting Elasticsearch...
Aug 09 04:34:34 RockyLinux8 systemd[1]: Started Elasticsearch.
Ověřit ElasticSearch
V tomto okamžiku se ElasticSearch spustí a naslouchá na portu 9200. Můžete to zkontrolovat pomocí následujícího příkazu:
ss -antpl | grep 9200
Měli byste vidět následující výstup:
LISTEN 0 128 [::ffff:127.0.0.1]:9200 *:* users:(("java",pid=5247,fd=283))
ElasticSearch můžete také ověřit pomocí následujícího příkazu:
curl -X GET 'http://localhost:9200'
Měli byste získat následující výstup:
{
"name" : "rockylinux",
"cluster_name" : "Elastic Cluster",
"cluster_uuid" : "NuDPakHARaOJOMyi6ABQwA",
"version" : {
"number" : "7.14.0",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "dd5a0a2acaa2045ff9624f3729fc8a6f40835aa1",
"build_date" : "2021-07-29T20:49:32.864135063Z",
"build_snapshot" : false,
"lucene_version" : "8.9.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
Jak používat ElasticSearch
K přidání dat do ElasticSearch můžete použít příkaz Curl, jak je znázorněno níže:
curl -H 'Content-Type: application/json' -X POST 'http://localhost:9200/tutorial/blog/1' -d '{ "message": "My first blog!" }' Měli byste vidět následující výstup:
{"_index":"tutorial","_type":"blog","_id":"1","_version":1,"result":"created","_shards":{"total":2,"successful":1,"failed":0},"_seq_no":0,"_primary_term":1}
Nyní můžete získat svá data pomocí požadavku GET:
curl -X GET 'http://localhost:9200/tutorial/blog/1'
Měli byste vidět následující výstup:
{"_index":"tutorial","_type":"blog","_id":"1","_version":1,"_seq_no":0,"_primary_term":1,"found":true,"_source":{ "message": "My first blog!" }}
Chcete-li načíst data ve formátu čitelném pro člověka, spusťte následující příkaz:
curl -X GET 'http://localhost:9200/tutorial/blog/1?pretty'
Měli byste získat následující výstup:
{
"_index" : "tutorial",
"_type" : "blog",
"_id" : "1",
"_version" : 1,
"_seq_no" : 0,
"_primary_term" : 1,
"found" : true,
"_source" : {
"message" : "My first blog!"
}
}
Závěr
Ve výše uvedené příručce jste se naučili, jak nainstalovat a používat ElasticSearch na Rocky Linux 8. Nyní můžete snadno přidávat, číst, mazat a aktualizovat data v Elasticsearch.