Technique

Ingestion des données de Google Pub/Sub directement dans Elastic à l'aide de Google Dataflow

Notre partenariat avec Google Cloud ne cesse de se développer, et nous sommes très heureux de vous l'annoncer. Ainsi, les développeurs, les ingénieurs de fiabilité des sites (site reliability engineers ou SRE) et les analystes de la sécurité peuvent ingérer des données de Google Pub/Sub dans la Suite Elastic en quelques clics seulement dans Google Cloud Console. En utilisant les modèles Google Dataflow, Elastic facilite la diffusion dans la Suite Elastic des événements et des logs provenant des services Google Cloud, comme Google Cloud Audit, les flux VPC ou le pare-feu. Ainsi, les clients simplifient l'architecture de leur pipeline de données, éliminent la surcharge au niveau des opérations et accélèrent le processus de dépannage.

Nombre de développeurs, de SRE et d'analystes de la sécurité qui utilisent Google Cloud pour développer des applications et configurer leur infrastructure tirent également parti de la Suite Elastic à des fins de dépannage, de monitoring et d'identification des anomalies de sécurité. Google et Elastic ont travaillé ensemble pour fournir une méthode harmonieuse et facile à utiliser d'ingestion dans Elastic des logs et des événements provenant des applications et des infrastructures des services Google Cloud. Tout cela est possible en quelques clics seulement dans Google Cloud Console, sans nécessiter à aucun moment l'installation d'un agent de transfert de données.   

Dans cet article, nous vous expliquons comment ingérer dans la Suite Elastic des données de Google Pub/Sub à l'aide de Google Dataflow et sans aucun agent.

Plus de surcharge

Pub/Sub est un service populaire de messagerie asynchrone sans serveur qui permet de diffuser des données de Google Operations (anciennement Stackdriver), des applications intégrées à l'aide des services Google Cloud ou d'autres cas d'utilisation impliquant la diffusion de pipelines d'intégration de données. Pour être ingérés dans des solutions d'analyse tierces, comme la Suite Elastic, les logs Google Cloud Audit, des flux VPC ou du pare-feu doivent d'abord être transférés dans Google Operations, puis dans Pub/Sub.  Une fois les logs intégrés à Pub/Sub, un utilisateur de Google Cloud doit choisir la méthode d'ingestion afin de transférer les messages stockés dans Google Pub/Sub à des solutions d'analyse tierces.

Une option plébiscitée par les utilisateurs de Google et d'Elastic est l'installation de Filebeat, d'Elastic Agent ou de Fluentd sur une machine virtuelle Google Compute, puis l'utilisation d'un de ces agents de transfert pour envoyer des données de Pub/Sub dans la Suite Elastic. Le provisionnement d'une machine virtuelle et l'installation d'un agent de transfert des données entraînent une surcharge au niveau des processus et de la gestion. La capacité à éliminer cette étape et à ingérer directement dans Elastic des données de Pub/Sub est précieuse pour nombre d'utilisateurs, notamment quand cela peut se faire en quelques clics dans Google Cloud Console. Désormais, cela est possible grâce à un menu déroulant dans Google Dataflow.

Rationalisation de l'ingestion des données

Google Dataflow est un service sans serveur de messagerie asynchrone fondé sur Apache Beam. Dataflow peut être utilisé à la place de Filebeat pour transférer directement des données provenant de Google Cloud Console. Les équipes de Google et d'Elastic ont travaillé ensemble afin de développer un modèle Dataflow prêt à l'emploi permettant de transférer dans Elastic des logs et des événements de Pub/Sub. Ce modèle se substitue au traitement léger, comme la transformation du format des données auparavant effectuée par Filebeat sans serveur. Cela n'entraîne aucun changement pour les utilisateurs qui avaient l'habitude d'utiliser le pipeline d'ingestion d'Elasticsearch.          

Vous trouverez ci-dessous une représentation récapitulative du flux d'ingestion des données. Le processus d'intégration s'adapte à tous les utilisateurs, qu'ils exploitent la Suite Elastic sur Elastic Cloud, Elastic Cloud dans Google Cloud Marketplace ou un environnement autogéré.

blog-gcp-integration-pubsub-1.png

Lancez-vous

Dans cette section, nous vous expliquons pas à pas comment vous lancer avec le modèle Dataflow afin d'analyser les GCP Audit Logs dans la Suite Elastic.

Les logs d'audit contiennent des informations qui vous aident à déterminer le lieu, la manière et le moment où les changements opérationnels surviennent dans votre compte Google Cloud. Grâce à notre modèle Pub/Sub, vous pouvez diffuser les logs d'audit depuis GCP vers Elasticsearch et ainsi obtenir des informations exploitables en quelques secondes seulement. 

Nous commençons par installer l'intégration Elastic GCP directement à partir de l'interface utilisateur web de Kibana, qui contient des tableaux de bord prédéfinis, des configurations de nœuds d'ingestion et d'autres ressources qui vous aident à tirer le meilleur parti des logs d'audit que vous ingérez. 

Avant de configurer le modèle Dataflow, vous devez créer un sujet et un abonnement Pub/Sub dans Google Cloud Console où vous pouvez envoyer vos logs provenant de Google Operations Suite.

blog-gcp-integration-pubsub-2.png

Ensuite, accédez à Google Cloud Console pour configurer notre tâche Dataflow

Dans le produit Dataflow, cliquez sur "Create job from template" (Créer une tâche à partir d'un modèle), puis sélectionnez "Pub/Sub to Elasticsearch" dans le menu déroulant du modèle Dataflow.

blog-gcp-integration-pubsub-3.png

Renseignez les paramètres requis, y compris l'identifiant de votre cloud et la clé d'API encodée en Base64 pour Elasticsearch. Étant donné que nous diffusons des logs d'audit, ajoutez "audit" comme paramètre de type de logs. Vous pouvez trouver l'identifiant du cloud dans l'interface utilisateur d'Elastic Cloud, comme le montre la copie d'écran ci-dessous. Pour créer la clé d'API, utilisez l'API "Create API key" dédiée.

blog-gcp-integration-pubsub-4.png

blog-gcp-integration-pubsub-5.png

Cliquez sur le bouton "Run Job" et attendez que Dataflow exécute le modèle. Cette opération dure quelques minutes seulement. Comme vous pouvez le voir, vous n'avez pas besoin de quitter Google Cloud Console ni de gérer des agents.

Désormais, il vous suffit d'accéder à Kibana pour obtenir une analyse et une visualisation de vos logs dans le tableau de bord [Logs GCP].

blog-gcp-integration-pubsub-6.png

Conclusion

Elastic s'efforce en permanence de fournir à ses clients des solutions plus faciles et plus fluides leur accordant une liberté d'exécution et d'utilisation des produits de leur choix. L'intégration rationalisée de Google Cloud en est le tout dernier exemple. Elastic Cloud apporte une valeur ajoutée à la Suite Elastic en élargissant le champ d'action des utilisateurs et en leur assurant une plus grande rapidité d'exécution. C'est la meilleure manière de tirer parti de notre plateforme. Pour en savoir plus sur l'intégration, consultez la documentation de Google. Pour commencer à utiliser Elastic sur Google Cloud, consultez la Google Cloud Marketplace ou le site elastic.co.