Technique

Tutoriel : Démarrez avec Elastic Cloud avec un échantillon de données pour votre Elasticsearch hébergé et la Suite Elastic version 5.x

Cet article est une mise à jour des instructions pour la Suite Elastic version 5.x. Voir la version précédente traitant des échantillons de données pour Elasticsearch 2.x et Kibana 4.x pour plus d'explications à ce sujet.

Installer et faire fonctionner un environnement Elasticsearch hébergé n'a jamais été aussi facile. Grâce à Elastic Cloud, vous pouvez lancer votre cluster et commencer à ingérer des données en seulement quelques minutes. Découvrez comment dans cette vidéo de trois minutes. Ces instructions vous guideront à travers la création d'un compte Elastic Cloud, la création et la sécurisation d'un cluster Elasticsearch, l'importation de données et leur visualisation dans Kibana. Alors ne perdons pas une minute !

Se connecter à Elastic Cloud

  1. Allez sur https://www.elastic.co/fr/cloud/as-a-service et enregistrez-vous pour un essai gratuit.
  2. Vous recevrez un e-mail de confirmation. Ouvrez-le et suivez les instructions pour commencer votre essai.
  3. Connectez-vous à votre compte Elastic Cloud.

Créez votre premier cluster Elasticsearch hébergé

  1. Une fois connecté, allez sur l'onglet Cluster pour créer votre cluster.
  2. Sélectionnez la taille du cluster. Je vais choisir un cluster de 4 Go de mémoire et de 96 Go de stockage.
  3. Choisissez une région proche de vous. J’ai choisi US East.
  4. Sélectionnez la réplication. J'ai choisi un seul datacenter.
  5. Cliquez sur Create pour provisionner votre cluster. La création commencera et vous recevrez une notification lorsqu'elle sera terminée.
  6. Enregistrez le mot de passe qui s'affiche pour l'utilisateur elastic car vous en aurez besoin plus tard.

GIF-ClusterCreate.gif

    Activez Kibana

    Ensuite, il faut activer Kibana pour pouvoir configurer la gestion des accès au cluster :

    1. Pour activer Kibana, allez sur le lien Configuration et faites défiler la page vers le bas jusqu'à atteindre la section Kibana.
    2. Patientez jusqu'à ce que le cluster soit bien provisionné et que le bouton Enableapparaisse dans la partie Kibana.
    3. Cliquez sur le bouton Enable
    4. Cliquez sur le lien et ouvrez Kibana dans un nouvel onglet. Attention, l'activation de Kibana peut prendre quelques minutes et un message « unavailable » peut s'afficher pendant ce laps de temps. Patientez quelques secondes, puis essayez de recharger la page.
    5. Connectez-vous à Kibana à l'aide du nom d'utilisateur « elastic » et du mot de passe que vous aviez conservé lors de la première étape de création.

    GIF-EnableKibana.gif

    Sécurisez votre cluster

    Maintenant, penchons-nous sur la gestion des accès au cluster à l'aide du module X-Pack Security qui est inclus d'office dans tous les comptes Elastic Cloud :

    1. Vérifiez que vous êtes bien connecté à l'interface Kibana à l'aide du nom d'utilisateur « elastic » et du mot de passe de la première étape de création.
    2. Créez des utilisateurs supplémentaires et/ou configurez les noms d'utilisateurs et les mots de passe existants. Je vais créer un nouvel utilisateur : sa_admin
    3. Si vous avez ajouté de nouveaux utilisateurs, configurez leurs rôles. Je vais configurer sa_admin avec le rôle de superuser.
    4. Précisez le mot de passe de l'utilisateur ; moi, j'utilise un code secret...
    5. Faites en sorte de vous souvenir de ces noms d'utilisateur et mots de passe, en les conservant dans un coffre électronique par exemple ou en les notant sur un Post-it 😉

    Kibana.png

    Vous pouvez actualiser vos mots de passe ou ajouter de nouveaux utilisateurs à l'aide du même processus. La nouvelle API de Security incluse dans la version 5.5 le permet également en suivant les instructions de notre documentation.

    Endpoint Elasticsearch

    Une fois connecté à Kibana, vous remarquerez l'onglet Discovery. Cependant, il n'y a pour l'instant aucune donnée à visualiser. Nous allons donc nous intéresser à l'ingestion des données dans Elasticsearch. Il faut rassembler quelques informations pour y arriver !   

    1. Allez sur le lien Overview dans la console Elastic Cloud. Les endpoints répertoriés vous permettent d'accéder à votre cluster via l'API. 
    2. Cliquez sur le lien https pour afficher le cluster. Copiez l'URL https ; elle servira dans les étapes suivantes.

    Elastic_Cloud.png

    Importez les données

    Maintenant, nous allons ingérer des données dans le cluster Elasticsearch pour voir la Suite Elastic en action. Si vous ne disposez pas d'échantillon de données, servez-vous dans notre GitHub Examples Repo. Personnellement, je vais utiliser des logs Apache et Logstash (téléchargez celui qui correspond à la version de votre système d'exploitation). Pour alimenter le cluster Elasticsearch hébergé avec ces logs, il faudra modifier la partie output elasticsearch de la configuration Logstash présentée dans cet exemple.

    1. Téléchargez le dépôt et insérez-le dans le dossier contenant le fichier apache_logstash.conf. Remplacez dans le fichier de configuration les points d'accès définis par le paramètre hosts par votre propre endpoint de cluster (celui copié lors de l'étape précédente).

    2. Modifiez le nom d'utilisateur et le mot de passe avec le compte utilisateur qui dispose des autorisations d'écriture et que vous aviez configuré dans la partie Security votre cluster. Pour moi, ce sera sa_admin que nous avons ajouté un peu plus tôt :

    elasticsearch {
       hosts => "https://e66e6e11692c749cc8e09f25e1af4efa.us-west-1.aws.found.io:9243/"
       user => "sa_admin"
       password => "s00p3rS3cr3t"
       index => "apache_elastic_example"
       template => "./apache_template.json"
       template_name => "apache_elastic_example"
       template_overwrite => true 
    }
    

    3. Exécutez la commande suivante afin d'indexer les données dans Elasticsearch via Logstash :

      cat ../apache_logs | <Logstash_Install_Dir>/bin/logstash -f apache_logstash.conf
      

      4. Je trouve qu'il est utile de conserver le endpoint Elasticsearch dans une variable d'environnement ES_ENDPOINT. J'utilise donc la convention suivante :

      export ES_ENDPOINT=https://somelongid.us-east-1.aws.found.io:9243
      

      5. Vous pouvez vérifier que vos données sont correctement ingérées par Elasticsearch en allant sur ES_ENDPOINT/apache_elastic_example/_count, où ES_ENDPOINT est l'URL de l'endpoint d'Elasticsearch. Le compte devrait être à 10 000. En partant du principe que vous avez paramétré la variable d'environnement ci-dessus, vous pouvez le faire avec la commande curl (vérifiez que vous avez bien indiqué le paramètre utilisateur pour permettre l'authentification de base de nos endpoint https).

      %> curl --user sa_admin:s00p3rS3cr3t ${ES_ENDPOINT}/apache_elastic_example/_count
      {"count":10000,"_shards":{"total":5,"successful":5,"failed":0}}
      

      6. Vous pouvez vérifier la santé de votre cluster en allant sur ES_ENDPOINT/_cat/indices. Votre index apache_elastic_example devrait être répertorié ainsi que ses statistiques :

      %> curl --user sa_admin:s00p3rS3cr3t ${ES_ENDPOINT}/_cat/indices
      health status index              pri rep docs.count docs.deleted store.size pri.store.size
      yellow open   .kibana              1   1          2            0     19.1kb         19.1kb
      yellow open   apache_elastic_example   1   1      10000            0      7.3mb          7.3mb
      

      Visualisez les données

      Nous allons maintenant nous intéresser à l'instance Kibana et continuer à suivre les instructions données en exemple pour visualiser les données :

      1. Allez sur les options Index Pattern dans l'onglet Management et ajoutez l'index apache_elastic_example dans Kibana, puis cliquez sur Create.

      Kibana.png

      1. Vous pouvez jeter un œil à vos données en choisissant l'index apache_elastic_example dans l'onglet Discovery.

      Kibana.png

      1. Importez les modèles de tableaux de bord en cliquant sur Management > Saved Objects > Import et en choisissant le fichier the apache_kibana.json.

      Kibana.png

      1. Ouvrez le tableau de bord que vous venez d'importer. Allez sur l'onglet Dashboard à gauche et cliquez sur Sample Dashboard for Apache Logs

      Sample_Dashboard_for_Apache_Logs_-_Kibana_and_Edit_Entry___Elastic_co_V5___Built_io_Contentstack_and_Elastic_Cloud.png

      Récapitulatif

      Nous avons réussi à paramétrer un cluster, à importer des échantillons de données et nous avons utilisé notre premier tableau de bord ! Maintenant, vous disposez d'un échantillon de données de logs Apache dans Elasticsearch et vous pouvez commencer à les analyser et à mieux exploiter vos logs. Vous pouvez également continuer d'analyser les autres échantillons de données issus du répertoire d'exemples et lire le guide sur les Premiers pas avec Kibana  ou commencer à envoyer vos propres données à l'aide de Logstash ou Beats.

      Ci-dessous, quelques liens très utiles qui vous aideront dans votre utilisation de la suite Elastic sur Cloud.

      Sinon, des cours officiels dispensés par nos ingénieurs formateurs sont à votre disposition : https://www.elastic.co/training