Skip to main content

config-elastic-kibana

Configuration

Pour configurer Elasticsearch et Kibana sur une machine virtuelle Debian 12 à l'aide de Vagrant, suivez ces étapes. Ce guide suppose que Vagrant et VMware (ou un autre fournisseur) sont installés sur votre machine hôte.

  • Serveur debian avec les droits de privillèves (root).
  • VMware hyper-v
  • Vagrantfile
  1. Créer un fichier Vagrant Créez un nouveau répertoire pour votre projet Vagrant et créez-y un Vagrantfile.
mkdir elasticsearch-kibana-vm
cd elasticsearch-kibana-vm
touch Vagrantfile
  1. Modifiez le Vagrantfile avec le contenu suivant :
Vagrant.configure("2") do |config|
# Use Debian 12 (Bookworm) as the base box
# config.vm.box = "bento/debian-12-arm64"
config.vm.box = "debian/bookworm64"
config.vm.network :private_network, ip: "192.168.50.200"

# Configure the VM resources
config.vm.provider vmware_desktop do |vb|
vb.memory = "2048" # 2GB RAM
vb.cpus = 2
end

# Forward ports for Elasticsearch and Kibana
config.vm.network "forwarded_port", guest: 9200, host: 9200 # Elasticsearch
config.vm.network "forwarded_port", guest: 5601, host: 5601 # Kibana

# Provision the VM with a shell script
config.vm.provision "shell", inline: <<-SHELL
# Update the system
apt-get update -y

# Install prerequisites
apt-get install -y curl gnupg2 apt-transport-https

# Add Elasticsearch repository
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | tee /etc/apt/sources.list.d/elastic-8.x.list

# Add Kibana repository
echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | tee /etc/apt/sources.list.d/kibana-8.x.list

# Update package list
apt-get update -y

# Install Elasticsearch
apt-get install -y elasticsearch

# Install Kibana
apt-get install -y kibana

# Start and enable Elasticsearch
systemctl daemon-reload
systemctl enable elasticsearch
systemctl start elasticsearch

# Start and enable Kibana
systemctl enable kibana
systemctl start kibana
SHELL
end
  1. Démarrez la machine virtuelle Vagrant Exécutez la commande suivante pour démarrer la machine virtuelle et la provisionner :
vagrant up

Cela va :

  • Télécharger la boîte Debian 12 (si ce n'est pas déjà fait).
  • Créer et configurer la VM.
  • Installer Elasticsearch et Kibana.
  • Démarrer les deux services.
  1. Accéder à Elasticsearch et Kibana Une fois la VM opérationnelle : Elasticsearch sera accessible à l'adresse http://localhost:9200 ou http://192.168.50.201:9200. Kibana sera accessible à l'adresse http://localhost:5601 ou http://192.168.50.201:5601.

Vous pouvez vérifier qu'Elasticsearch fonctionne en visitant http://localhost:9200 dans votre navigateur ou en utilisant curl :

curl http://localhost:9200
curl http://192.168.50.201:9200
  1. Connectez-vous à la VM via SSH Pour accéder à la VM, utilisez :
vagrant ssh

À partir de là, vous pouvez gérer les services Elasticsearch et Kibana à l'aide de systemctl :

  • Vérifier l'état d'Elasticsearch :
sudo systemctl status elasticsearch
  • Vérifiez le statut de Kibana :
sudo systemctl status kibana

Configurer Elasticsearch et Kibana

Par défaut, Elasticsearch et Kibana sont configurés pour fonctionner ensemble. Cependant, vous souhaiterez peut-être personnaliser leurs configurations :

  • Fichier de configuration Elasticsearch : /etc/elasticsearch/elasticsearch.yml
  • Fichier de configuration de Kibana : /etc/kibana/kibana.yml

Après avoir effectué les modifications, redémarrez les services :

sudo systemctl restart elasticsearch
sudo systemctl restart kibana

Détruire la machine virtuelle (facultatif)

Si vous souhaitez supprimer la VM, exécutez :

vagrant destroy

Cela supprimera la VM et libérera des ressources.

Remarques :

  • Assurez-vous que votre machine hôte dispose de suffisamment de ressources (RAM et CPU) pour faire fonctionner la VM.
  • Si vous rencontrez des problèmes, vérifiez les journaux pour Elasticsearch (/var/log/elasticsearch/) et Kibana (/var/log/kibana/). Pour une utilisation en production, sécurisez Elasticsearch et Kibana avec l'authentification et TLS.