GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Elasticsearch su CentOS 8

Elasticsearch è un motore di ricerca e analisi full-text distribuito open source. Supporta operazioni RESTful e consente di archiviare, cercare e analizzare grandi volumi di dati in tempo reale. Elasticsearch è uno dei motori di ricerca più popolari che alimenta le applicazioni con requisiti di ricerca complessi come i grandi negozi di e-commerce e le applicazioni analitiche.

Questo tutorial copre l'installazione di Elasticsearch su CentOS 8.

Installazione di Java #

Elasticsearch è un'applicazione Java, quindi il primo passo è installare Java.

Eseguire quanto segue come utente root o utente con sudo privilegicommand per installare il pacchetto OpenJDK:

sudo dnf install java-11-openjdk-devel

Verifica l'installazione di Java stampando la versione di Java:

java -version

L'output dovrebbe essere simile a questo:

openjdk version "11.0.5" 2019-10-15 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.5+10-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.5+10-LTS, mixed mode, sharing)

Installazione di Elasticsearch #

Elasticsearch non è disponibile nei repository CentOS 8 standard. Lo installeremo dal repository RPM di Elasticsearch.

Importa il GPG del repository utilizzando il rpm comando:

sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

Apri il tuo editor di testo e crea il file di repository /etc/yum.repos.d directory:

sudo nano /etc/yum.repos.d/elasticsearch.repo

Incolla il seguente contenuto nel file:

/etc/yum.repos.d/elasticsearch.repo
[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 il file e chiudi il tuo editor di testo.

Al momento della stesura di questo articolo, l'ultima versione di Elasticsearch è 7.6 . Se desideri installare una versione precedente di Elasticsearch, modifica 7.x nel comando sopra con la versione che ti serve.

Ora che il repository è abilitato, installa il pacchetto Elasticsearch digitando:

sudo dnf install elasticsearch

Una volta completato il processo di installazione, avvia e abilita il servizio:

sudo systemctl enable elasticsearch.service --now

Per verificare che Elasticsearch sia in esecuzione, utilizza curl per inviare una richiesta HTTP alla porta 9200 su localhost:

curl -X GET "localhost:9200/"

L'output sarà simile a questo:

{
  "name" : "centos8.localdomain",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "V_mfjn2PRJqX3PlZb_VD7w",
  "version" : {
    "number" : "7.6.0",
    "build_flavor" : "default",
    "build_type" : "rpm",
    "build_hash" : "7f634e9f44834fbc12724506cc1da681b0c3b1e3",
    "build_date" : "2020-02-06T00:09:00.449973Z",
    "build_snapshot" : false,
    "lucene_version" : "8.4.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

L'avvio del servizio potrebbe richiedere 5-10 secondi. Se vedi curl: (7) Failed to connect to localhost port 9200: Connection refused , attendi qualche secondo e riprova.

Per visualizzare i messaggi registrati dal servizio Elasticsearch, utilizzare il seguente comando:

sudo journalctl -u elasticsearch

A questo punto, Elasticsearch è installato sul tuo server CentOS.

Configurazione di Elasticsearch #

I dati di Elasticsearch sono archiviati in /var/lib/elasticsearch directory, i file di configurazione si trovano in /etc/elasticsearch .

Per impostazione predefinita, Elasticsearch è configurato per l'ascolto solo su localhost. Se anche il client che si connette al database è in esecuzione sullo stesso host e stai configurando un cluster di nodo singolo, non è necessario modificare il file di configurazione predefinito.

Accesso remoto #

Out of box Elasticsearch, non implementa l'autenticazione, quindi è accessibile a chiunque possa accedere all'API HTTP. Se desideri consentire l'accesso remoto al tuo server Elasticsearch, dovrai configurare il firewall e consentire l'accesso alla porta 9200 di Elasticsearch solo da client attendibili.

Ad esempio, per consentire connessioni solo da 192.168.121.80 , inserisci il seguente comando:

Esegui il comando seguente per consentire la valutazione dall'indirizzo IP attendibile remoto sulla porta 9200 :

sudo firewall-cmd --new-zone=elasticsearch --permanentsudo firewall-cmd --reloadsudo firewall-cmd --zone=elasticsearch --add-source=192.168.121.80/32 --permanentsudo firewall-cmd --zone=elasticsearch --add-port=9200/tcp --permanentsudo firewall-cmd --reload
Non dimenticare di modificare 192.168.121.80 con il tuo indirizzo IP remoto.

Successivamente, se desideri consentire l'accesso da un altro indirizzo IP, utilizza:

sudo firewall-cmd --zone=elasticsearch --add-source=<IP_ADDRESS> --permanentsudo firewall-cmd --reload

Una volta configurato il firewall, il passaggio successivo consiste nel modificare la configurazione di Elasticsearch e consentire a Elasticsearch di ascoltare le connessioni esterne.

Per farlo, apri elasticsearch.yml file di configurazione:

sudo nano /etc/elasticsearch/elasticsearch.yml

Cerca la riga che contiene network.host , decommentalo e cambia il valore in 0.0.0.0 :

/etc/elasticsearch/elasticsearch.yml
network.host: 0.0.0.0

Se hai più interfacce di rete sulla tua macchina, specifica l'indirizzo IP dell'interfaccia per forzare Elasticsearch ad ascoltare solo l'interfaccia data.

Riavvia il servizio Elasticsearch per rendere effettive le modifiche:

sudo systemctl restart elasticsearch

Questo è tutto. Ora puoi connetterti al server Elasticsearch dalla posizione remota.


Cent OS
  1. Come installare PHP 7, 7.2 e 7.3 su CentOS 7

  2. Come installare Java 11 e 12 su CentOS 7

  3. Come installare Graylog2 su CentOS 7 / RHEL 7

  4. Come installare Elasticsearch su CentOS 8 / RHEL 8

  5. Come installare Elasticsearch su CentOS/RHEL 8

Come installare R su CentOS 8

Come installare Graylog con Elasticsearch su CentOS 8

Come installare Graylog su CentOS 8 / RHEL 8

Come installare Graylog 3.0 su CentOS 7 / RHEL 7

Come installare Graylog su CentOS 7

Come installare ELK Stack su CentOS 7