GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare Elasticsearch su Debian 10

Elasticsearch è un motore di ricerca e analisi full-text distribuito open source. Supporta le 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 che hanno requisiti di ricerca complessi come i grandi negozi di e-commerce e le applicazioni analitiche.

Questo tutorial spiega come installare Elasticsearch su Debian 10.

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 apt install default-jdk

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

java -version

L'output dovrebbe essere simile a questo:

openjdk version "11.0.6" 2020-01-14
OpenJDK Runtime Environment (build 11.0.6+10-post-Debian-1deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.6+10-post-Debian-1deb10u1, mixed mode, sharing)

Installazione di Elasticsearch #

Elasticsearch non è disponibile nei repository Debian 10 standard. Lo installeremo dal repository APT di Elasticsearch.

Importa la chiave pubblica del repository utilizzando il seguente wget comando:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

Il comando sopra dovrebbe restituire OK , il che significa che la chiave è stata importata correttamente e i pacchetti da questo repository saranno considerati attendibili.

Aggiungi il repository Elasticsearch al sistema eseguendo:

sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'
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.

Aggiorna l'indice dei pacchetti e installa il motore Elasticsearch:

sudo apt updatesudo apt 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" : "debian10.localdomain",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "yCOOHdvYR8mHRs5mNXQdDQ",
  "version" : {
    "number" : "7.6.1",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "aa751e09be0a5072e8570670309b1f12348f023b",
    "build_date" : "2020-02-29T00:15:25.529771Z",
    "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

Questo è tutto. Elasticsearch è stato installato sul tuo server Debian.

Configurazione di Elasticsearch #

I dati di Elasticsearch sono archiviati in /var/lib/elasticsearch directory. I file di configurazione si trovano in /etc/elasticsearch e le opzioni di avvio di Java possono essere configurate in /etc/default/elasticsearch file.

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 a nodo singolo, non è necessario modificare il file di configurazione predefinito.

Accesso remoto #

Out of box Elasticsearch, non implementa l'autenticazione, quindi può accedervi 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, se stai usando UFW e vuoi consentire le connessioni solo da 192.168.121.80 , inserisci il seguente comando:

sudo ufw allow from 192.168.100.20 to any port 9200
Non dimenticare di modificare 192.168.100.20 con il tuo indirizzo IP remoto.

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.


Debian
  1. Come installare Debian 10 (Buster)

  2. Come installare Elasticsearch su Debian Linux

  3. Come installare Python 3.9 su Debian 10

  4. Come installare Memcached su Debian 10

  5. Come installare TeamViewer su Debian 10

Come installare Debian 11

Come installare Elasticsearch su Debian 11 Bullseye

Come installare Graylog su Debian 9

Come installare Vai su Debian 10

Come installare Elasticsearch su Debian 11

Come installare Vai su Debian