Opensearch : Le secret d’une meilleure observabilité

Alors que les équipes de développement continuent d’adopter les microservices et les systèmes distribués, l’observabilité devient de plus en plus importante pour la gestion des services, la résolution des problèmes et le suivi de votre environnement de production. Avec l’essor de cloud computing, le coût de la surveillance n’a jamais été aussi bas ; cependant, les solutions d’observabilité ont tendance à être coûteuses et peuvent être difficiles à mettre en place. Opensearch propose une solution open-source qui promet de rendre l’observabilité plus facile que jamais. Voici comment cela fonctionne.

Opensearch: The Secret to Better Observability   Opensearch: The Secret to Better Observability

Qu’est-ce que l’observabilité ?

En un mot, l’observabilité concerne le fonctionnement de votre application d’un point de vue technique. Elle englobe les outils et les techniques qui vous permettent d’obtenir une visibilité sur vos systèmes, ce qui vous permet de comprendre leur comportement et d’identifier les anomalies. D’un côté, l’observabilité est un nouveau terme pour quelque chose qui existe depuis longtemps. La journalisation existe depuis que la journalisation a été inventée. Après tout, si elle n’était pas utile, elle n’aurait pas beaucoup d’intérêt ! Mais à mesure que la technologie a évolué, passant d’applications monolithiques orientées vers le traitement par lots sur du matériel physique à des systèmes distribués déployés sous forme de code sur une infrastructure virtualisée, de nouveaux défis sont apparus en matière de dépannage et de débogage de ces systèmes.

Opensearch: The Secret to Better Observability

Pourquoi opter pour l’opensearch ?

Opensearch est une norme entièrement ouverte et neutre vis-à-vis des fournisseurs qui vous offre une observabilité et une gestion complètes de vos données. Il fonctionne également avec vos outils SIEM et analytiques existants, ce qui le rend idéal pour les grandes organisations qui ont besoin d’un moyen rapide d’ingérer des données provenant de sources multiples. Pour les développeurs, opensearch fournit une interface standard pour interagir avec les métadonnées sur les dépendances du code sans avoir à écrire de code. Cela signifie qu’ils passent moins de temps à écrire du code et plus de temps à créer des fonctionnalités. En d’autres termes, OpenSearch contribue à maximiser la productivité des développeurs, ce qui en fait une perspective intéressante pour toute organisation, quelle que soit sa taille.

Configuration d’opensearch

Si vous déployez une nouvelle application et souhaitez qu’elle soit observable, nous vous recommandons de configurer Opensearch dès maintenant. La configuration d’Opensearch vous permettra d’ingérer les logs de votre application en utilisant des filtres de recherche. C’est essentiel pour comprendre ce qui se passe avec votre application en temps réel, afin que vous puissiez réagir rapidement lorsque les choses tournent mal. Si vous avez beaucoup de microservices différents s’exécutant sur plusieurs hôtes, l’envoi de données à partir de chaque hôte indépendamment peut ne pas être adapté. L’envoi de journaux à partir d’une source unique signifie que toutes vos données se trouvent au même endroit et vous évite des maux de tête plus tard lorsque vous voudrez commencer à les rechercher. Les services de journalisation tels que Beat agent, Logstash ou Fluentd peuvent également être utilisés à la place d’Opensearch si nécessaire.

Le modèle certifié Jelastic est créé pour chaque pile open-source mentionnée (OpenSearch, OpenSearch Dashboards, Logstash). Les images certifiées sont utilisées à la place des images personnalisées pour mettre à la disposition des utilisateurs toutes les fonctionnalités spécifiques à Jelastic (réinitialisation du mot de passe, redémarrage du service, redéploiement, clonage, migration, visualisation des journaux, gestion du pare-feu). Ces 3 modèles sont réunis en une seule solution auto-clusterisée par l’auto-clustering JPS.

Opensearch: The Secret to Better Observability

Ingérer vos données

Vous pouvez ingérer des données dans OpenSearch avec de nombreux outils utiles, notamment Logstash. Logstash est une application de gestion des événements et des journaux. Bien qu’elle ait été initialement créée par Elasticsearch, elle dispose désormais de support pour d’autres produits, tels qu’Apache Kafka et Amazon Kinesis. Elle ingère des données provenant de presque toutes les sources à l’aide de diverses méthodes, notamment des sockets TCP/UDP et des crochets de système de fichiers (par exemple, S3 ou FTP). Une fois que vos données sont dans Logstash, vous pouvez exécuter des requêtes simples ou complexes sur ces données pour une meilleure visibilité des problèmes ou des tendances dans votre environnement applicatif. Regardez par vous-même la liste des agents disponibles : https://opensearch.org/docs/latest/clients/agents-and-ingestion-tools/index/

Créez votre premier tableau de bord

Créez votre premier tableau de bord en temps réel en ingérant des données depuis Opensearch. Suivez ces étapes de base afin d’obtenir un flux en temps réel de vos données en quelques minutes. Commencez par vous connecter à votre compte OpenSearch et sélectionnez une collection dans laquelle vous souhaitez afficher les métriques. Ensuite, ajoutez une recherche à une application nouvelle ou existante qui vous intéresse, comme Kubernetes. Dans Kubernetes, ajoutez des étiquettes pour chaque mesure clé collectée, comme l’utilisation du CPU et de la mémoire.

Opensearch: The Secret to Better Observability   Opensearch: The Secret to Better Observability

Ajouter une fonction d’alerte

Nous avons vu que vous pouvez facilement ajouter des alertes à Opensearch, ce qui permet aux équipes Ops de créer des notifications basées sur des événements spécifiques. Par exemple, si une application ne parvient pas à démarrer, une alerte peut être générée et envoyée par e-mail ou par Slack. Mais si Opensearch est livré avec une série de règles simples permettant de trouver rapidement les instances défaillantes, les utilisateurs peuvent souhaiter quelque chose de plus puissant que des alertes. Avec notre fonction Auto-Scale, vous pouvez configurer Opensearch de sorte que si une instance échoue plusieurs fois dans une période de temps donnée (par exemple, trois échecs en 15 minutes), elle est automatiquement réduite ! Ainsi, votre application continue de fonctionner efficacement tout en réduisant vos coûts.

Opensearch: The Secret to Better Observability

Déployer Opensearch avec notre modèle Jelastic PaaS

Nous avons développé un modèle PaaS Jelastic qui vous permet d’être rapidement opérationnel. En quelques minutes, vous pouvez déployer votre propre instance Opensearch entièrement fonctionnelle. Consultez notre guide pour plus d’informations sur le déploiement d’Opensearch avec Jelastic.

Écrit par

Photo Pierrick PROST
Pierrick PROST
06/01/2022

Je suis l’informaticien spécialisé dans l’observabilité et l’infrastructure. J’essaie d’être la licorne à trois têtes, mais ce n’est pas facile. J’aime le VTT et la bière.

Essayer le PaaS

Choissisez votre devise

EUR
CHF

Recevoir nos actualités