7 septembre 2017 Technique

Monitorez votre système avec Metricbeat et Elastic Cloud

Par Jongmin Kim (KR)Jamie Smith

Elastic Cloud est l'offre officielle hébergée d'Elasticsearch et Kibana, élaborée par les créateurs d'Elasticsearch, Kibana, Beats et Logstash. Attention: à ne pas confondre avec Amazon AWS Elasticsearch qui n'est absolument pas la même offre complète. Pour plus de détails, lisez cet article.

Elastic Cloud offre une version d'essai valable 14 jours. Pour l'obtenir, vous n'avez pas besoin de renseigner vos données de facturation, une simple adresse e-mail suffit !

Dans cet article, nous détaillerons comment :

  • Créer un cluster Elasticsearch sur Elastic Cloud
  • Ajouter un nouvel utilisateur avec X-Pack Security
  • Utiliser Metricbeat pour rassembler les statistiques du système, les envoyer à un cluster Elasticsearch fonctionnant sur Elastic Cloud et les visualiser dans un tableau de bord Kibana automatiquement chargé par Metricbeat.

1. Créer un compte Elastic Cloud

Allez sur la page Elastic Cloud et enregistrez-vous pour un essai gratuit sur Elastic Cloud. Remarque : passez directement à l'étape 2 si vous possédez déjà un compte Elastic Cloud. 

Try_Elastic_Cloud__Hosted_Elasticsearch__for_Free___Elastic.png

Saisissez votre adresse e-mail et cliquez sur Start Free Trial. Vous allez recevoir un e-mail de vérification. Cliquez sur Verify Email and Accept TOS pour continuer. 

스크린샷 2017-08-11 21.07.57.png 

Définissez le mot de passe de votre compte Elastic Cloud.

스크린샷 2017-08-11 21.08.19.png


2. Lancer un cluster Elasticsearch et une instance Kibana

Une fois le mot de passe créé, vous serez automatiquement dirigé vers l'interface utilisateur d'Elastic Cloud. Vous pourrez revenir en arrière plus tard en cliquant sur https://cloud.elastic.co.

Cliquez sur Create Cluster pour créer votre premier cluster.

Monitor_your_system_with_Metricbeat_on_Elastic_Cloud_-_Google_Docs.png

Sélectionnez la taille et la région du cluster, puis cliquez sur Create pour créer votre cluster Elasticsearch.

Elastic_Cloud.png

Une fois votre cluster Elasticsearch créé, le mot de passe généré pour le super-utilisateur elastic, s’affichera. Vous ne pourrez plus revoir ce mot de passe par la suite, alors copiez-le et rangez-le en lieu sûr. 

스크린샷 2017-08-11 21.10.25.png  

Si vous l'oubliez, vous pourrez le redéfinir dans le menu Security de la console Elastic Cloud.

스크린샷 2017-08-11 22.43.28.png

Allez dans le menu Overview. Les URL d'accès d'Elasticsearch et de Kibana y sont affichées.

스크린샷 2017-08-11 21.14.48.png 


3. Créer un nouveau super-utilisateur

Cliquez sur l'URL Kibana qui vous dirigera vers la page de connexion de Kibana. Tapez « elastic » pour l'utilisateur ainsi que le mot de passe généré automatiquement (celui que vous avez rangé en lieu sûr) pour vous connecter.

스크린샷 2017-08-11 21.17.16.png 

Elastic Cloud intègre plusieurs fonctionnalités de X-Pack, comme la Security et Monitoring.

Si vous préférez choisir un nom d'utilisateur ou un mot de passe plus évocateur, vous avez la possibilité de créer un nouveau super-utilisateur à l'aide de la fonctionnalité Role Based Access Control. Allez sur l'onglet Management, puis sélectionnez Users dans la partie Security :

스크린샷 2017-08-11 21.35.51.png 

Cliquez sur le bouton + Create User.

스크린샷 2017-08-11 21.36.03.png 

Saisissez le nom d'utilisateur, le mot de passe, l'identité, l'e-mail, puis superuser pour le rôle, et enregistrez.

new_user_reg.png

Votre nouveau compte super-utilisateur sera ainsi créé.

new_user_registered.png

Déconnectez-vous puis reconnectez-vous à l'aide de votre nouveau compte pour vérifier que tout fonctionne. 

new_login.png

4. Configurer et lancer Metricbeat

Maintenant qu'Elasticsearch et Kibana sont configurés, il est grand temps d'envoyer des données. Dans ce tutoriel, Metricbeat sera utilisé à ces fins. 

Metricbeat recueille toute sorte de statistiques dans votre système et les envoie à votre instance Elasticsearch ou Logstash. Il s’exécute en tant que fichier binaire ; il faudra donc télécharger le fichier correspondant à votre système d'exploitation. Allez sur la page de téléchargement Metricbeat, téléchargez le fichier correspondant à votre système d'exploitation et décompressez-le.

스크린샷 2017-08-11 21.43.16.png 

Vous verrez plusieurs fichiers apparaître dans le répertoire metricbeat.

스크린샷 2017-08-11 23.08.18.png 

Le fichier metricbeat (ou metricbeat.exe pour Windows OS) exécutera Metricbeat. Par défaut, les données sont envoyées à Elasticsearch sur l'adress http://localhost:9200. Vous devrez donc modifier la configuration pour pouvoir les envoyer vers votre cluster Elastic Cloud. 

Ouvrez metricbeat.yml avec votre éditeur de code favori.

Monitor_your_system_with_Metricbeat_on_Elastic_Cloud_-_Google_Docs.png

Replacez "localhost:9200" par l'URL du nouveau cluster Elasticsearch. 

output.elasticsearch:
  #Array of hosts to connect to.
  hosts: ["localhost:9200"]

Tapez vos nouveaux nom d'utilisateur et mot de passe (si vous avez sauté l'étape de la création d'utilisateur, vous pouvez utiliser « elastic » et le mot de passe généré automatiquement).

  username: "<user id>" 
  password: "<password>"

Faites bien attention à la grammaire yaml ; vous devez laisser le bon espacement entre chaque ligne. « username: » et « password: » doivent comporter un alinéa de 2 espaces contrairement au reste du texte qui ne commence par aucun espace.

Enregistrez le fichier metricbeat.yml. Ensuite, lancez metricbeat avec l'option -setup, afin de demander au système de charger les tableaux de bord des statistiques par défaut sur Kibana.

metricbeat-5_5_2-darwin-x86_64_—_metricbeat_-c_metricbeat_yml_-setup_-e_—_109×20.png

ASTUCE : Si vous ajoutez l'option -e lors du lancement de Metricbeat, les logs s'afficheront pendant le fonctionnement.

5. Vérifier les tableaux de bord Metricbeat

Nous avons ajouté l'option -setup lors du lancement de Metricbeat de façon à charger automatiquement les tableaux de bord Metricbeat et ses visualisations dans Kibana :

스크린샷 2017-08-11 21.53.03.png 

Cliquez sur le menu Dashboard dans Kibana pour afficher les tableaux de bord de Metricbeat. Vérifiez que les statistiques de votre système sont bien envoyées à Elasticsearch :

스크린샷 2017-08-11 21.53.20.png  

Maintenant que vous avez vu comment cela fonctionne, vous pouvez déployer Metricbeat sur d'autres systèmes. Lancez-vous !