Elasticsearch è un motore di analisi gratuito e open source utilizzato per archiviare, cercare e analizzare grandi volumi di dati in tempo reale. È scritto in Java e basato su Apache Lucene. È noto per la sua velocità, scalabilità e potente set di funzionalità. Puoi usarlo per monitorare le prestazioni dell'applicazione, la registrazione e l'analisi dei registri.
In questo tutorial, ti mostreremo come installare ElasticSearch su Rocky Linux 8.
Prerequisiti
- Un server che esegue RockyLinux 8.
- Sul server è configurata una password di root.
Installa Java
ElasticSearch è basato su Java. Quindi Java deve essere installato nel tuo server. Puoi installarlo usando il seguente comando:
dnf install java-11-openjdk-devel -y
Una volta installato Java, verificare l'installazione Java utilizzando il comando seguente:
java -version
Dovresti vedere il seguente output:
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)
Installa ElasticSearch
Per impostazione predefinita, ElasticSearch non è incluso in Rocky Linux 8. Quindi dovrai creare un repository ElasticSearch.
Innanzitutto, importa la chiave GPG di ElasticSearch con il seguente comando:
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
Quindi, crea un repository ElasticSearch con il seguente comando:
nano /etc/yum.repos.d/elasticsearch.repo
Aggiungi le seguenti righe:
[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
Salva e chiudi il file, quindi installa il pacchetto ElasticSearch con il seguente comando:
dnf install elasticsearch -y
Una volta installato ElasticSearch, puoi procedere al passaggio successivo.
Configura ElasticSearch
Per impostazione predefinita, il file di configurazione principale di ElasticSearch si trova in /etc/elasticsearch/elasticsearch.yml . Puoi modificarlo con il seguente comando:
nano /etc/elasticsearch/elasticsearch.yml
Definisci il nome del nodo, il nome del cluster, il percorso dati e l'host di rete come mostrato di seguito:
cluster.name: Elastic Cluster node.name: rockylinux path.data: /var/lib/elasticsearch network.host: 127.0.0.1
Salva e chiudi il file, quindi avvia il servizio ElasticSearch e abilitalo all'avvio al riavvio del sistema:
systemctl start elasticsearch
systemctl enable elasticsearch
Puoi verificare lo stato di ElasticSearch con il seguente comando:
systemctl status elasticsearch
Dovresti vedere il seguente output:
? 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.
Verifica ElasticSearch
A questo punto ElasticSearch è avviato e in ascolto sulla porta 9200. Puoi verificarlo con il seguente comando:
ss -antpl | grep 9200
Dovresti vedere il seguente output:
LISTEN 0 128 [::ffff:127.0.0.1]:9200 *:* users:(("java",pid=5247,fd=283))
Puoi anche verificare ElasticSearch con il seguente comando:
curl -X GET 'http://localhost:9200'
Dovresti ottenere il seguente output:
{ "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" }
Come utilizzare ElasticSearch
Puoi utilizzare il comando Curl per aggiungere dati a ElasticSearch come mostrato di seguito:
curl -H 'Content-Type: application/json' -X POST 'http://localhost:9200/tutorial/blog/1' -d '{ "message": "My first blog!" }'
Dovresti vedere il seguente output:
{"_index":"tutorial","_type":"blog","_id":"1","_version":1,"result":"created","_shards":{"total":2,"successful":1,"failed":0},"_seq_no":0,"_primary_term":1}
Ora puoi recuperare i tuoi dati utilizzando la richiesta GET:
curl -X GET 'http://localhost:9200/tutorial/blog/1'
Dovresti vedere il seguente output:
{"_index":"tutorial","_type":"blog","_id":"1","_version":1,"_seq_no":0,"_primary_term":1,"found":true,"_source":{ "message": "My first blog!" }}
Per recuperare i dati in un formato leggibile, esegui il comando seguente:
curl -X GET 'http://localhost:9200/tutorial/blog/1?pretty'
Dovresti ottenere il seguente output:
{ "_index" : "tutorial", "_type" : "blog", "_id" : "1", "_version" : 1, "_seq_no" : 0, "_primary_term" : 1, "found" : true, "_source" : { "message" : "My first blog!" } }
Conclusione
Nella guida sopra, hai imparato come installare e utilizzare ElasticSearch su Rocky Linux 8. Ora puoi aggiungere, leggere, eliminare e aggiornare facilmente i dati in Elasticsearch.