APM avec Elasticsearch 8.x - Partie 1 : Configuration et démonstration

Publié le 18/10/2022

« Voir toutes les conférences Contactez-nous
APM with Elasticsearch 8.x - Part 1: Set up & Demo

Introduction

Code sur Github: Elasticsearch et surveillance des performances des applications

Nous allons installer Surveillance des performances des applications avec Elasticsearch et Kibana. Si vous n'avez pas encore configuré Elasticsearch et Kibana,suivez ces instructions.

Cette vidéo suppose que vous utilisez Certificats signés publiquement. Si vous utilisez Certificats auto-signés, va ici À déterminer.

Exigences

Une instance en cours d'exécution d'Elasticsearch et de Kibana.

Une nouvelle instance d'Ubuntu 20.04 pour agir en tant que serveur de flotte

Mesures

Étape 1 - Mettre à jour Ubuntu [06:45]

Sur la machine Ubuntu qui sera utilisée comme serveur de flotte, exécutez cette commande pour mettre à jour le système d'exploitation et télécharger des outils utiles :

apt-get update && apt dist-upgrade -y && apt-get install -y vim curl gnupg gpg

Étape 2 - Configuration des hôtes du serveur de flotte [08:00]

Connectez-vous à Kibana et accédez à la Menu, Flotte > Paramètres > Modifier les hôtes et entrez https://<fleet-server-url>:8220 comme le montre cette capture d'écran :

Fleet Server Hosts

Appuyez ensuite sur sauvegarder.

Étape 3 – Configuration des sorties du serveur de flotte [09:30]

Aller à la Sorties section et cliquez sur Ajouter une sortie.

Remplissez ces champs comme indiqué dans cette image :

Fleet Server Output

En bref:

Name: default Type: elasticsearch Hosts: https://<elasticsearch url>

Étape 4 – Télécharger les certificats SSL pour Fleet Server [15:44]

mkdir /etc/certs/<fleet-server-domain>/ Téléchargez les certificats SSL de votre serveur de flotte dans ce répertoire.

Étape 5 – Installer Fleet Server avec Elastic Agent [11:30]

Aller à la Agents onglet.

Cliquez Avancé.

Cliquez Créer une politique.

Pour Choisissez un mode de déploiement pour la sécurité et choisissez Production.

Pour Ajoutez votre hôte Fleet Server, cliquez Ajouter un hôte pour l'URL créée à l'étape 2.

Cliquez Générer un jeton de service.

Copiez les commandes d’installation :

Fleet Server Installation

Vous pouvez supprimer le --certificate-authorities et --fleet-server-es-ca lorsque nous utilisons un SSL signé publiquement, comme c'est notre cas.

Mettez ensuite à jour les indicateurs de certificat dans vos instructions d'utilisation --fleet-server-key=/etc/certs/<fleet-server-domain>/privkey1.pem et --fleet-server-cert=/etc/certs/<fleet-server-domain>/fullchain1.pem.

Exécutez la commande pour installer l’agent élastique et le serveur de flotte.

Revenez à Kibana et confirmez que le serveur Elastic Agent Fleet est visible à l'adresse Flotte > Agents comme indiqué ci-dessous :

Fleet Server Success

Étape 6 – Configuration de l'intégration pour la surveillance des performances des applications [20:20]

Aller à Menu et cliquez Intégrations et rechercher APM élastique et cliquez dessus pour voir ceci :

APM Application Performance Monitoring Integration

Cliquez Ajouter une intégration dans le coin supérieur droit et commencez à remplir les champs :

Integration name: anything you want Host: <fleet-server-domain>:8200 URL: https://<fleet-server-domain>:8200 Enable TLS: Enabled File path to server certificate: /etc/certs/<fleet-server-domain>/fullchain1.pem File path to certificate key: /etc/certs/<fleet-server-domain>/privkey1.pem Secret token: <anything-you-want>

Et pour Où ajouter cette intégration ?, prendre Hôtes existants > Politique d'agent > Politique de serveur de flotte 1 pour ajouter cette intégration au même serveur exécutant le serveur de flotte.

Appuyez ensuite sur Enregistrer et continuer.

Étape 7 – Instrumenter une application NodeJS [25:30]

Un exemple d'application nodejs qui a été instrumentée et qui communiquera avec le Fleet Server APM.

Téléchargez ce projet NodeJS qui a déjà été instrumenté.

Modifier le secretToken et serverUrl dans index.js.

Taper npm install pour télécharger toutes les dépendances nécessaires.

Taper node index.js pour exécuter l'application.

Accédez à votre navigateur Web et visitez les URL mentionnées dans le index.js pour expédier des données à l'APM et au serveur de flotte.

Étape 8 - Instrumenter une application Go [37:55]

Un exemple d'application Go qui a été instrumentée et qui communiquera avec le serveur APM de flotte.

Téléchargez ce projet Go qui a déjà été instrumenté.

Modifier le ELASTIC_APM_SERVER_URL et ELASTIC_APM_SECRET_TOKEN dans .env.

Taper go get pour télécharger toutes les dépendances nécessaires.

Taper go run main.go pour exécuter l'application.

Accédez à votre navigateur Web et visitez les URL mentionnées dans le main.go pour expédier des données à l'APM et au serveur de flotte.