
Introduction
Code sur Github: Elasticsearch + Docker Partie 2
Nous allons installer Elasticsearch, Kibana, Elastic Agent, Fleet Server et APM avec Docker Compose.
Cette vidéo suppose que vous savez déjà configurer Elasticsearch, Kibana, Beats et Logstash sans utiliser de conteneur. Sinon, vous pouvez va ici configuration. Et vous devriez comprendre Agent élastique, Serveur de flotte et APM.
Exigences
- Une nouvelle instance de machine Linux comme Ubuntu 20.04 pour agir en tant que serveur
- Docker et Docker-Compose installés
- Conteneurs Docker de la précédente vidéo Docker + ELK
Étape 1 - Vérifiez le code [02:30]
Arrêtez les conteneurs Docker précédemment en cours d'exécution avec la commande ci-dessous ;
docker-compose down --remove-orphans --volumes
Créer un nouveau répertoire pour cette partie 2
mkdir ../es2
cd ../es2
Initialiser un nouveau dépôt git.
git init;
git remote add origin https://github.com/evermight/elastic-stack-docker-part-two.git;
git fetch -a;
git checkout main
Répertoriez tous les fichiers du répertoire.
ls -alh
Créez avec la commande docker compose ci-dessous.
docker-compose up --build -d
Exécutez la commande ci-dessous pour obtenir les détails de tous les conteneurs :
docker ps -a
Obtenez l'adresse IP de votre serveur car elle sera utilisée comme URL vers les conteneurs Docker.
hostname -i
Visitez la page Kibana avec http://<YOUR IP ADDRESS>:5601
.
Connectez-vous ensuite avec le nom d'utilisateur et le mot de passe Elastic présents sur le .env
déposer
username: elastic
password: changeme
Page de connexion Kibana
Étape 2 - Confirmer que les services sont opérationnels [06:45]
Aller à Fleet > settings, et cliquez sur l'icône du stylo éditable. Reportez-vous à l'image ci-dessous ;
Modifier la sortie du serveur de flotte
Pour obtenir l’empreinte du certificat, exécutez les commandes suivantes :
docker cp es-cluster-es01-1:/usr/share/elasticsearch/config/certs/ca/ca.crt /tmp/.
et exécutez ce qui suit pour obtenir l'empreinte du certificat.
openssl x509 -fingerprint -sha256 -noout -in /tmp/ca.crt | awk -F"=" {' print $2 '} | sed s/://g
Utilisez la commande ci-dessous pour générer le certificat ;
cat /tmp/ca.crt
Une fois que vous avez le texte du certificat, nous l'ajouterons à un format yml et saisirons toutes ces informations dans l'écran Paramètres de la flotte de précédemment.
ssl:
certificate_authorities:
- |
et ajoutez le contenu et l'espace en conséquence comme indiqué dans l'image ci-dessous.
Certificat au style Yml
Mettez à jour les champs de votre Kibana comme indiqué dans l’image ci-dessous ;
Modifications du serveur de flotte
puis cliquez sur Enregistrer et appliquer les paramètres, puis cliquez sur Enregistrer et déployer. Retournons maintenant à la Flotte > Agent et actualisez l'onglet. Vous devriez voir un affichage similaire à l'image ci-dessous, indiquant qu'Elastic Agent, AM et Fleet Server sont opérationnels.
Exécution réussie de l'agent élastique, de l'APM et du serveur de flotte
Pour voir les services APM, rendez-vous sur Observabilité > APM > Services, et vous devriez voir quelque chose de similaire à l'image ci-dessous
Succès APM
Pour afficher les journaux de l'application Web Python, utilisez la commande ci-dessous ;
docker logs es-cluster-webapp-1
Vous devriez obtenir un résultat similaire à l’image ci-dessous ;
Journaux WebApp
Accédez à votre navigateur et exécutez l'URL http://0.0.0.0:8000
L'application Web devrait ressembler à l'image ci-dessous ;
Site Web WebApp
Cliquez sur les boutons de génération présents à cet endroit pour que l'application web envoie un message à Elastic.Observabilité > APM > Services > mon service Python > aperçu et appuyez sur Actualiser pour afficher les demandes effectuées. Voici une capture d'écran :
Requêtes my_python_service