22 août 2018 Technique

Déployer un cluster de logging hot-warm sur Elasticsearch Service

Par Anurag Gupta

Quelle différence entre Amazon Elasticsearch Service et notre offre Elasticsearch Service officielle ? Pour le savoir, comparez les offres Elasticsearch Service d'AWS et d'Elastic sur cette page.

Nous avons récemment intégré à Elasticsearch Service sur Elastic Cloud une multitude de nouvelles fonctionnalités conçues pour booster tous vos cas d'utilisation – du logging aux analytiques, et plus encore. L'une des fonctionnalités phares ajoutées ? Des modèles de déploiement pour architecture hot-warm, qui, couplés à un modèle tarifaire revu à la baisse, rendent encore plus intéressante l'utilisation d'Elasticsearch Service pour le logging.

Dans cet article de blog, nous verrons comment utiliser ce nouveau modèle de déploiement hot-warm et aborderons d'autres puissantes fonctionnalités de la Suite Elastic comme Machine Learning et Alerting, qui vous révèlent de précieuses informations. Tout cela, en moins de 10 minutes. Vous n'avez pas encore de compte Elasticsearch Service ? Pensez à vous inscrire pour un essai gratuit de 14 jours.

Qu'est-ce que l'architecture hot-warm ?

L'architecture hot-warm est un moyen extrêmement efficace de séparer un déploiement Elasticsearch en nœuds dits "hot" et en nœuds dits "warm". Les nœuds de données hot gèrent alors l'ensemble des données récentes en entrée et disposent d'un stockage plus rapide, qui assure une ingestion et une récupération plus promptes des données. Les nœuds warm, quant à eux, présentent une plus grande densité de stockage et s'avèrent plus rentables pour le stockage des données de logging à long terme. Lorsqu'ils sont associés, ces deux types de nœuds de données permettent un traitement efficace des données en entrée et assurent leur disponibilité pour les requêtes, tout en permettant leur conservation à long terme sans pour autant vous obliger à casser la tirelire.

Cela s'avère particulièrement utile pour les cas d'utilisation axés sur le logging, qui mettent l'accent sur les logs récents (ceux des deux dernières semaines, par exemple), et dans lesquels les logs plus anciens (qu'il peut être nécessaire de conserver pour des raisons de conformité, entre autres) peuvent s'accommoder de requêtes plus lentes.

Créer un déploiement hot-warm

Avec Elasticsearch Service, déployer une architecture hot-warm devient un jeu d'enfant, y compris lorsqu'il s'agit de gérer les règles relatives à la curation d'index pour déplacer les données des nœuds de données hot aux nœuds de données warm – une fonctionnalité unique, qui démarque Elastic Cloud des autres fournisseurs d'offres Elasticsearch hébergées. Un jeu d'enfant, vraiment ? C'est ce que nous allons voir dans cet article : nous allons déployer et exécuter un cluster de logging hot-warm en moins de 5 minutes. Ce cluster opérationnel comprendra aussi un nœud de machine learning de 1 Go gratuit, ainsi qu'un nœud Kibana de 1 Go.

Pour commencer, nous allons accéder à la console Elasticsearch Service console et cliquer sur Create Deployment (Créer un déploiement).

hot-warm-template.png

Dans cet exemple, nous choisirons la région "US East" (USA Est) avec AWS et sélectionner l'option "Hot-Warm Architecture" (Architecture hot-warm) dans la section "Optimize your deployment" (Optimisez votre déploiement). Nous allons ensuite cliquer sur Personnaliser le déploiement.

Sur la page de personnalisation, vous pouvez modifier la configuration d'instance hot et la configuration d'instance warm indépendamment l'une de l'autre. Pour apprendre à dimensionner ces instances afin qu'elles répondent à vos propres besoins, n'hésitez pas à consulter l'article de blog consacré au dimensionnement des architectures hot-warm.

Dans cet exemple, nous conserverons les valeurs par défaut.

Sur notre déploiement, nous allons aussi activer Machine Learning. Tous les déploiements Elasticsearch Service comprennent un nœud de machine learning gratuit de 1 Go, ainsi qu'un nœud Kibana de 1 Go.

hot-warm-enable-ml.png

Sur cet écran, cliquons maintenant sur Configure Index Curation (Configurer la curation d'index).

Curation d'index

index-curation.png

La curation d'index vous permet de définir la durée de conservation des index sur les nœuds hot avant qu'ils ne soient déplacés vers les nœuds warm. Les valeurs par défaut comprennent des index souvent utilisés, créés par Beats (metricbeat-*, filebeat-*) et Logstash (logstash-*). Leur période de conservation avant déplacement est de 1 jour. Nous conserverons ces valeurs pour notre exemple.

Remarque : Vous pourrez toujours modifier ces règles après le déploiement. Pour ce faire, accédez à la page "Operations" (Opérations) sous le déploiement.

Une fois cela fait, nous allons cliquer sur Create Deployment (Créer le déploiement).

Bravo ! Vous voilà devenu l'heureux "déployeur" de la puissante architecture hot-warm !

Envoyer des données

Notre déploiement hot-warm étant maintenant fin prêt, si nous commencions à envoyer quelques données de logging ? Pour ce faire, nous allons installer Beats sur notre machine locale, puis nous allons utiliser l'identifiant Cloud ID et le mot de passe Elasticsearch Service générés par notre déploiement pour commencer à envoyer des données. Pour tout savoir sur la configuration de Beats et d'Elasticsearch Service, n'hésitez pas à consulter l'article de blog consacré à l'utilisation de Metricbeat avec Elasticsearch Service.

Pour rechercher l'identifiant Cloud ID, accédez à la page "Deployments" (Déploiements), puis à "Cloud ID" :

deployment-cloud-id.png

Remarque : Vous avez oublié votre mot de passe ? Aucun problème. Elasticsearch Service vous permet de réinitialiser votre mot de passe utilisateur Elastic sous Deployment -> Security -> Reset password (Déploiement -> Sécurité -> Réinitialiser le mot de passe).

Maintenant que notre machine locale transmet des données, connectons-nous à Kibana et examinons le tableau de bord. À mesure que nous recevrons des données, Elasticsearch Service continuera de déplacer quotidiennement les données depuis les nœuds hot vers les nœuds warm.

Ajouter Machine Learning

Elasticsearch Service a décidément plus d'un tour dans son sac. Il prend maintenant en charge Machine Learning et nous sommes plutôt fiers de cette nouvelle fonctionnalité. Mais ce n'est pas tout : chaque utilisateur peut ajouter gratuitement un nœud Machine Learning de 1 Go à son déploiement. Ce nœud étant déjà compris dans notre déploiement, accédons à Kibana et ouvrons l'application Machine Learning pour créer des tâches de machine learning.

machine-learning-kibana.png

Pour en savoir plus sur Machine Learning et découvrir d'autres cas d'utilisation, visitez la page dédiée à la fonctionnalité Machine Learning d'Elastic.

Conclusion

Les nouvelles fonctionnalités d'Elasticsearch Service vous permettent de vous lancer dans la puissante architecture hot-warm en quelques clics. Associées à d'autres fonctionnalités de la Suite Elastic telles que Machine Learning et Security, elles rendent le monitoring de vos logs et de vos indicateurs avec Elasticsearch Service plus performant que jamais.

Impatient d'essayer ? Lancez-vous avec notre version d'essai de 14 jours.