Un componente chiave dei gruppi di componenti software Elastic Stack è Elasticsearch. Elasticsearch è un motore di ricerca e analisi distribuito opensource, veloce e scalabile. È sviluppato in Java e consente di archiviare, indicizzare, analizzare e cercare enormi volumi di dati con una velocità quasi in tempo reale. Puoi archiviare e recuperare i dati in formato JSON utilizzando le API REST.
Nel corso del tempo, Elasticsearch è diventato un popolare motore di ricerca in campi quali l'analisi dei log, l'analisi aziendale, l'intelligence sulla sicurezza e la ricerca full-text.
Notevoli aziende bluechip che sfruttano Elasticsearch nei loro stack tecnologici includono Uber, Udemy, Shopify, Netflix, Facebook e molti altri.
Qui a LinuxAPT, esamineremo la procedura di installazione completa di ElasticSearch su AlmaLinux 8.
Passaggi per installare ElasticSearch su AlmaLinux
1. Installa il pacchetto Java
ElasticSearch è stato creato su Java e quindi è necessario installare Java sul tuo sistema con il comando seguente:
$ sudo dnf install java-11-openjdk
Dopo l'installazione di Java, puoi confermarlo eseguendo il comando seguente:
$ java —version
2. Importa la chiave GPG di ricerca elastica
Successivamente, dobbiamo importare la chiave GPG per i pacchetti rpm di Elasticsearch con il comando seguente:
$ sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
3. Installa Elasticsearch sul sistema
Qui, devi creare un file chiamato elasticsearch.repo in /etc/yum.repos.d/:
$ sudo vim /etc/yum.repos.d/elasticsearch.repo
Quindi, incolla le righe seguenti nel file:
[elasticsearch]
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=0
autorefresh=1
type=rpm-md
Quindi, installa la ricerca elastica con il comando seguente:
$ sudo dnf install --enablerepo=elasticsearch -y elasticsearch
Il servizio Elasticsearch è disabilitato per impostazione predefinita. Esegui il seguente comando systemctl per avviare e abilitare il servizio di ricerca elastica:
$ sudo systemctl enable elasticsearch.service --now
Verifica lo stato del servizio con il comando:
$ sudo systemctl status elasticsearch
Come configurare ElasticSearch?
Dopo un'installazione riuscita, modifica il file di configurazione di Elasticsearch. Le impostazioni di configurazione predefinite vanno bene per i singoli server operativi poiché Elasticsearch viene eseguito solo su localhost. Tuttavia, se desideri configurare un cluster, dovrai modificare il file di configurazione per consentire le connessioni remote.
Qui abbiamo specificato l'indirizzo 0.0.0. 0. Ciò consente a Elasticsearch di essere in ascolto su tutte le interfacce. Se desideri specificare un indirizzo IP specifico, fallo in questa sezione:
$ sudo nano /etc/elasticsearch/elasticsearch.yml
Per rendere effettive le modifiche, esegui il comando:
$ sudo systemctl restart elasticsearch
Come testare l'installazione di ElasticSearch?
Per confermare che Elasticsearch è attivo e in esecuzione sul nostro sistema, esegui il seguente comando curl. Elasticsearch è in ascolto sulla porta 9200 per impostazione predefinita:
$ curl -X GET "localhost:9200/"
Per quali operazioni possiamo utilizzare la ricerca elastica?
Puoi aggiungere dati a ElasticSearch, puoi utilizzare il comando curl insieme a una richiesta POST:
$ curl -H 'Content-Type: application/json' -X POST 'http://localhost:9200/employee/task/1' -d '{ "name": "Update John" }'
Quindi, recuperiamo quei dati utilizzando una richiesta GET:
$ curl -X GET 'http://localhost:9200/employee/task/1'
Puoi recuperare i dati in un formato leggibile dall'uomo:
$ curl -X GET 'http://localhost:9200/employee/task/1?pretty'