Nouveautés

Elasticsearch sur Kubernetes : un nouveau chapitre s’ouvre

Il est tout nouveau et il vient de sortir : il s’agit d’Elastic Cloud on Kubernetes (ECK), un nouveau produit d’orchestration basé sur le schéma de Kubernetes Operator, qui vous permet de provisionner, de gérer et d’exécuter des clusters Elasticsearch sur Kubernetes.

Au cours de ces dernières années, Kubernetes s’est avéré être la solution incontournable pour orchestrer les conteneurs et les applications qui s’y exécutent. Et la communauté Elasticsearch n’y a pas coupé. Nous avions promis que nous serions présents là où le vent porterait nos utilisateurs. Notre réponse, la voici, avec le lancement d’Elastic Cloud on Kubernetes. Notre but est de vous fournir les meilleures solutions possibles pour déployer et exécuter les produits Elastic sur la plate-forme de votre choix.

Notre passé commun avec Kubernetes ne date pas d’hier, avec la publication d’images Docker officielles pour Elasticsearch et Kibana, ou encore avec la modification de Beats pour collecter des logs et des indicateurs à partir des pods et des daemonsets éphémères. En décembre dernier, nous avons renforcé notre engagement en rejoignant la CNCF et en lançant Helm Charts. Le lancement d’ECK s’inscrit donc dans la suite logique des choses, pour simplifier encore davantage le déploiement et l’exécution de nos produits et solutions dans les environnements Kubernetes.

Un Elasticsearch Operator, et bien plus encore

Conçu à l’aide du schéma de Kubernetes Operator, ECK s’installe dans votre cluster Kubernetes et simplifie le déploiement d’Elasticsearch et de Kibana sur Kubernetes. Il a pour but de rationaliser les opérations du deuxième jour, à savoir :

  • Gérer et monitorer plusieurs clusters
  • Mettre à niveau de nouvelles versions des stacks en toute simplicité
  • Adapter la capacité des clusters
  • Modifier la configuration des clusters
  • Faire évoluer le stockage local de façon dynamique (avec Elastic Local Volume, pilote de stockage local)
  • Planifier les sauvegardes

Mais ECK est bien plus qu’un Kubernetes Operator. Il ne se contente pas d’automatiser l’ensemble des tâches administratives opérationnelles et de cluster : il vise à simplifier l’expérience de la Suite Elastic sur Kubernetes dans sa globalité. La vision d’ECK est de fournir une expérience de type SaaS pour les produits et les solutions Elastic sur Kubernetes.

Sécurisation par défaut

Tous les clusters Elasticsearch lancés sur ECK sont sécurisés par défaut. Plus concrètement, cela signifie qu’ils disposent du chiffrement et qu’ils sont protégés par un mot de passe par défaut élevé, dès leur création. Cette expérience s’inscrit dans la lignée de celle dont vous bénéficiez avec Elasticsearch Service sur Elastic Cloud.

Et on peut vous le dire, ça n’a pas été simple de la mettre en place ! Obtenez davantage d’informations sur les derniers changements de sécurité que nous avons apportés du côté de la Suite Elastic pour rendre cette expérience possible. TL;DR: À partir des versions 6.8 et 7.1, les principales fonctionnalités de sécurité d’Elasticsearch, comme le chiffrement TLS, le contrôle d'accès basé sur les rôles, ou encore l’authentification native et basée sur fichiers, sont désormais gratuites.

Canvas, Maps, Uptime, oh my

Tous les clusters déployés avec ECK comprennent des capacités de niveau de base (gratuites) puissantes, tels que le gel des index pour le stockage dense, Kibana Spaces, Canvas, Elastic Maps, et bien plus. Vous pouvez même monitorer les logs et l’infrastructure Kubernetes à l’aide des applications Elastic Logs et Elastic Infrastructure. Ainsi, vous bénéficiez d’une expérience intégrale de la Suite Elastic sur Kubernetes, que seul Elastic peut vous proposer.

Déployez des topologies hot-warm-cold et personnalisées

La topologie hot-warm-cold est une topologie de cluster puissante pour le logging, les indicateurs et d’autres cas d'utilisation de séries temporelles. Il s’agit d’un schéma architectural courant qui équilibre les besoins en stockage à long terme et en performances sans se ruiner. Avec ECK, vous pouvez déployer des clusters hot-warm-cold sur Kubernetes, puis configurer facilement les politiques relatives aux cycles de vie des données à l’aide de la gestion du cycle de vie des index (ILM) pour acheminer les données entre les niveaux de nœuds au fur et à mesure qu’elles vieillissent.

Pas d’algorithme de compression pour l’expérience

Lorsqu’il s’agit de déployer un logiciel, le premier jour est simple. Le deuxième jour... c’est une autre paire de manches. Une grande partie consiste à rationaliser l’exécution d’un système à états comme Elasticsearch dans un framework d’orchestration dynamique comme Kubernetes. Comment fournir un stockage local persistant qui puisse évoluer de façon dynamique ? Nous intégrons directement dans ECK le pilote de stockage conçu pour Kubernetes, Elastic Local Volume. Celui-ci comprend de nombreuses bonnes pratiques, comme le drainage d’un nœud avant de restreindre une capacité, ou comme le rééquilibrage des partitions lorsque vous étendez le déploiement.

Elastic Cloud on Kubernetes est le fruit de notre expérience opérationnelle en tant que créateurs d’Elasticsearch et d’Elastic Cloud Enterprise, et opérateurs d’Elasticsearch Service. Toutes ces connaissances que nous avons accumulées, nous les avons exploitées pour définir l’orchestration et le fonctionnement des déploiements Elasticsearch et Kibana au sein de Kubernetes.

Nous nous sommes assurés qu’il n’y avait aucune perte de données lors des changements de configuration, qu’il n’y avait aucune indisponibilité lors de la montée en charge... Bref, nous avons étudié chaque aspect opérationnel en détail lors de la conception d’ECK.

Un niveau qui restera toujours gratuit

Depuis le jour où Elasticsearch est né, notre objectif a toujours été de proposer aux nouveaux utilisateurs une première expérience riche en intégrant des fonctionnalités puissantes dans la version de base gratuite. C’est en gardant cet objectif à l’esprit que nous avons conçu ECK.

La version de base d’ECK restera toujours gratuite. Dans une optique d’ouverture et de transparence, nous avons aussi mis l’ensemble du code source d’ECK à la disposition du public, sous licence Elastic, dans le référentiel GitHub Elastic cloud-on-k8s.

Un abonnement (payant) Enterprise donne accès à des fonctionnalités supplémentaires, parmi lesquelles la capacité à déployer des clusters avec des fonctionnalités avancées comme le contrôle d’accès basé sur les champs ou les documents, le Machine Learning, l’analyse de graphes, et bien d’autres. Dans le futur, l’abonnement Entreprise permettra aussi de bénéficier d’autres fonctionnalités d’orchestration avancées.

Support technique GKE officiel, avec de belles perspectives à venir

Dans cette première version alpha de lancement d’ECK, nous prenons en charge Google Kubernetes Engine (GKE) et Kubernetes « vanille » version 1.11 et supérieure. Les versions à venir continueront à étendre le support technique à d’autres « saveurs » de Kubernetes.

Lancez-vous aujourd’hui

Essayez dès aujourd’hui en exécutant cette version sur votre cluster Kubernetes, et visitez la page de démarrage rapide pour en savoir plus.