Android

Comment installer elasticsearch sur debian 9

Install Elasticsearch 6 on a Virtual Ubuntu Machine

Install Elasticsearch 6 on a Virtual Ubuntu Machine

Table des matières:

Anonim

Elasticsearch est un moteur de recherche et d'analyse en texte intégral distribué open source. Il prend en charge les opérations RESTful et vous permet de stocker, rechercher et analyser de gros volumes de données en temps réel.

Elasticsearch est l'un des moteurs de recherche les plus populaires pour les applications qui ont des exigences de recherche complexes telles que les grands magasins de commerce électronique et les applications analytiques.

Ce tutoriel vous guidera à travers le processus d'installation d'Elasticsearch sur Debian 9.

Conditions préalables

Vous devrez être connecté en tant qu'utilisateur avec les privilèges sudo pour pouvoir installer des paquets sur votre serveur Debian.

Installation d'Elasticsearch

La façon la plus simple d'installer Elasticsearch sur Debian est via le référentiel officiel Elasticsearch. Au moment de la rédaction de cet article, la dernière version d'Elasticsearch est 7.0.0 et nécessite l'installation de Java 8 sur le système.

Commencez par mettre à jour l'index des packages et installer le package apt-transport-https qui est nécessaire pour accéder à un référentiel via

sudo apt update sudo apt install apt-transport-https

Installez OpenJDK 8:

sudo apt install openjdk-8-jdk

Vérifiez l'installation Java en imprimant la version Java:

java -version

La sortie devrait ressembler à ceci:

openjdk version "1.8.0_181" OpenJDK Runtime Environment (build 1.8.0_181-8u181-b13-2~deb9u1-b13) OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)

L'étape suivante consiste à ajouter le référentiel Elasticsearch.

Importez la clé publique du référentiel à l'aide de la commande wget suivante:

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

La commande ci-dessus doit afficher OK ce qui signifie que la clé a été importée avec succès et que les packages de ce référentiel seront considérés comme fiables.

Ensuite, ajoutez le référentiel Elasticsearch au système en exécutant:

sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list' Si vous souhaitez installer une version différente d'Elasticsearch, modifiez 7.x dans la commande ci-dessus avec la version dont vous avez besoin.

Mettez à jour l'index des packages et installez le moteur Elasticsearch:

sudo apt update sudo apt install elasticsearch

Une fois le processus d'installation terminé, démarrez et activez le service à l'aide des commandes suivantes:

sudo systemctl enable elasticsearch.service sudo systemctl start elasticsearch.service

Pour vérifier qu'Elasticsearch est en cours d'exécution, envoyez une demande HTTP au port 9200 sur localhost à l'aide de la commande curl suivante:

curl -X GET "localhost:9200/"

La sortie devrait ressembler à ceci:

{ "name": "stretch", "cluster_name": "elasticsearch", "cluster_uuid": "Nj2W3PswRuWvJW8JG75O1Q", "version": { "number": "7.0.0", "build_flavor": "default", "build_type": "deb", "build_hash": "b7e28a7", "build_date": "2019-04-05T22:55:32.697037Z", "build_snapshot": false, "lucene_version": "8.0.0", "minimum_wire_compatibility_version": "6.7.0", "minimum_index_compatibility_version": "6.0.0-beta1" }, "tagline": "You Know, for Search" }

Le démarrage du service peut prendre 5 à 10 secondes. Si vous voyez curl: (7) Failed to connect to localhost port 9200: Connection refused , attendez quelques secondes et réessayez.

Pour afficher les messages enregistrés par le service Elasticsearch, utilisez la commande ci-dessous:

sudo journalctl -u elasticsearch

C'est ça. Elasticsearch a été installé sur votre serveur Debian.

Configuration d'Elasticsearch

Les données Elasticsearch sont stockées dans le répertoire /var/lib/elasticsearch . Les fichiers de configuration se trouvent dans /etc/elasticsearch et les options de démarrage Java peuvent être configurées dans le fichier /etc/default/elasticsearch .

Par défaut, Elasticsearch est configuré pour écouter sur localhost uniquement. Si le client se connectant à la base de données s'exécute également sur le même hôte et que vous configurez un cluster à nœud unique, vous n'avez pas besoin d'activer l'accès à distance.

Accès à distance

Elasticsearch prêt à l'emploi n'implémente pas d'authentification, il est donc accessible à toute personne pouvant accéder à l'API HTTP. Si vous souhaitez autoriser l'accès à distance à votre serveur Elasticsearch, vous devrez configurer votre pare-feu et autoriser l'accès au port Elasticsearch 9200 uniquement à partir de clients de confiance.

sudo ufw allow from 192.168.100.20 to any port 9200 N'oubliez pas de modifier 192.168.100.20 avec votre adresse IP distante.

Sinon, si vous utilisez un ancien iptables simple, exécutez:

sudo iptables -A INPUT -p tcp -s 192.168.100.20 --dport 9200 -j ACCEPT

Une fois votre pare-feu configuré, l'étape suivante consiste à modifier la configuration et à configurer Elasticsearch pour écouter les connexions externes.

Pour ce faire, ouvrez le fichier de configuration elasticsearch.yml :

sudo nano /etc/elasticsearch/elasticsearch.yml

Recherchez la ligne qui contient network.host , décommentez-la et modifiez la valeur à 0.0.0.0 :

/etc/elasticsearch/elasticsearch.yml

network.host: 0.0.0.0

Redémarrez le service Elasticsearch pour que les modifications prennent effet:

sudo systemctl restart elasticsearch

À ce stade, vous devriez pouvoir vous connecter au serveur Elasticsearch à partir de votre emplacement distant.

Conclusion

Vous avez correctement installé Elasticsearch sur votre système Debian 9. Pour plus d'informations sur la façon de démarrer avec Elasticsearch, visitez leur page officielle de documentation.

base de données java elasticsearch debian