Présentation de Cloud Service Mesh

Cloud Service Mesh est un maillage de services disponible sur Google Cloud et sur les plates-formes GKE Enterprise compatibles. Il prend en charge les services exécutés sur une gamme des infrastructures informatiques. Cloud Service Mesh est contrôlé par des API conçu pour Google Cloud, pour l'Open Source ou les deux.

Ce document s'adresse à vous si vous êtes un nouvel utilisateur de Cloud Service Mesh ou un client Anthos Service Mesh ou Traffic Director existant.

Qu'est-ce qu'un maillage de services ?

Un maillage de services est une architecture qui permet de gérer, d'observer et de sécuriser la communication entre vos services, ce qui vous permet de créer plus facilement d'applications d'entreprise composées de nombreux microservices sur le réseau de l'infrastructure. Le maillage de services gère les exigences courantes de l'exécution d'un comme la surveillance, la mise en réseau et la sécurité, grâce à des ce qui permet aux développeurs et opérateurs de services de se concentrer qui créent et gèrent des applications de qualité pour leurs utilisateurs.

Sur le plan architectural, un maillage de services se compose d'un ou de plusieurs plans de contrôle plan de données. Le maillage de services surveille tout le trafic entrant et sortant de vos services. Sur Kubernetes, un proxy est déployé modèle side-car aux microservices du maillage. Sur Compute Engine, vous pouvez déployer des proxys sur des VM ou utiliser gRPC sans proxy pour le plan de données.

Ce modèle dissocie l'application ou la logique métier des fonctions réseau et permet aux développeurs de se concentrer sur les fonctionnalités dont l'entreprise a besoin. Les maillages de services permettent également aux équipes chargées des opérations et du développement de dissocier leur travail les unes des autres.

Concevoir une architecture basée sur des microservices pour vos applications présente de nombreux avantages. Toutefois, vos charges de travail peuvent devenir plus complexes et fragmentées à mesure qu'elles évoluent. Service le maillage de services permet de résoudre le problème de fragmentation et de gérer plus facilement à l'aide de microservices.

Qu'est-ce que Cloud Service Mesh ?

Cloud Service Mesh est la solution de Google pour Google Cloud et les environnements GKE Enterprise compatibles.

  • Sur Google Cloud, Cloud Service Mesh fournit des API propres à l'infrastructure informatique sur laquelle s'exécutent vos charges de travail.
  • Au-delà de Google Cloud: avec le cloud distribué ou le multicloud GKE, Cloud Service Mesh est compatible avec les API Istio pour Kubernetes charges de travail.

Que ce soit sur Google Cloud ou en dehors, Cloud Service Mesh vous permet gérer, observer et sécuriser vos services sans avoir à modifier le code d'application.

Cloud Service Mesh réduit les tâches répétitives liées à vos opérations et votre développement. en simplifiant la prestation de services, qu'il s'agisse de la gestion du trafic la télémétrie à la sécurisation des communications entre les services. L'offre de services cloud de Google le maillage de services vous permet de gérer des environnements complexes et de bénéficier des avantages prometteurs.

Fonctionnalités

Cloud Service Mesh dispose d'une suite de fonctionnalités pour la gestion du trafic, l'observabilité, la télémétrie et la sécurité.

Gestion du trafic

Cloud Service Mesh contrôle le flux de trafic entre les services du au réseau maillé (entrée) et aux services extérieurs (sortie). Vous configurez et déployer des ressources pour gérer ce trafic au niveau de la couche d'application (L7). Par exemple, vous pouvez effectuer les opérations suivantes :

  • Utilisez la détection de services.
  • Configurer l'équilibrage de charge entre les services
  • Créer des déploiements Canary et bleu-vert
  • Contrôlez précisément le routage de vos services.
  • Paramétrez les disjoncteurs.

Cloud Service Mesh gère une liste de tous les services du maillage par nom et par leurs points de terminaison respectifs. Il tient à jour cette liste pour gérer le flux de (par exemple, les adresses IP des pods Kubernetes ou les adresses IP des VM Compute Engine dans un groupe d'instances géré). En utilisant ce registre de services et en exécutant les proxys côte à côte avec le le réseau maillé peut diriger le trafic vers le point de terminaison approprié. Charges de travail gRPC sans proxy peuvent également être utilisés en parallèle avec des charges de travail utilisant des proxys Envoy.

Informations sur l'observabilité

Interface utilisateur de Cloud Service Mesh dans la console Google Cloud fournit des insights sur votre maillage de services. Ces métriques sont automatiquement générés pour les charges de travail configurées via les API Istio.

  • Métriques de service et journaux pour le trafic HTTP dans les ressources GKE de votre maillage sont automatiquement ingérés dans Google Cloud.
  • Les tableaux de bord de service préconfigurés vous fournissent les informations dont vous avez besoin pour à comprendre vos services.
  • Télémétrie approfondie fournie par Cloud Monitoring Cloud Logging et Cloud Trace vous permettent analyser en détail les métriques et les journaux de vos services. Vous pouvez filtrer et segmenter des données sur une grande variété d'attributs.
  • Les relations de service à service vous permettent de comprendre en un coup d'œil l'inter-service et qui se connecte à chaque service.
  • Vous pouvez rapidement voir la stratégie de sécurité de la communication mais ses relations avec d'autres services.
  • Les objectifs de niveau de service (SLO, Service Level Objective) vous donnent un aperçu de l'état de vos services. Vous pouvez définir un SLO et une alerte en fonction de vos propres normes de service de sécurité.

Pour en savoir plus sur les fonctionnalités d'observabilité de Cloud Service Mesh, consultez Guide d'observabilité

Avantages de sécurité

Cloud Service Mesh vous offre de nombreux avantages en termes de sécurité.

  • Atténue le risque de nouvelle lecture ou d'usurpation d'identité qui utilisent des identifiants volés. Cloud Service Mesh s'appuie sur des certificats TLS mutuels (mTLS) pour authentifier les pairs, plutôt que les jetons de support tels que les jetons Web JSON (JWT).
  • Assure le chiffrement en transit. L'utilisation de mTLS pour l'authentification garantit également que toutes les communications TCP sont chiffrées en transit.
  • Atténue le risque que des clients non autorisés accèdent à un service contenant des données sensibles, quel que soit l'emplacement réseau du client et le niveau identifiants de connexion.
  • Atténue le risque de violation des données utilisateur sur votre réseau de production. Vous pouvez garantir que les initiés ne peuvent accéder aux données sensibles que via des clients autorisés.
  • Identifie les clients ayant accédé à un service avec des données sensibles. Cloud Service Mesh la journalisation des accès capture l'identité mTLS du client en plus des adresse IP.
  • Tous les composants du plan de contrôle du cluster sont conçus avec des modules de chiffrement certifiés FIPS 140-2.

Pour en savoir plus sur les avantages et les fonctionnalités de sécurité de Service Mesh, consultez les Guide sur la sécurité

Options de déploiement

Vous disposez des options de déploiement suivantes dans Cloud Service Mesh:

  • Sur Google Cloud <ph type="x-smartling-placeholder">
      </ph>
    • Maillage de services cloud géré : plan de contrôle et de données géré pour GKE (recommandé)
    • Maillage de services cloud géré : plan de contrôle et de données géré pour Compute Engine avec des VM (recommandé)
    • Plan de contrôle dans le cluster pour GKE avec les API Istio (déconseillé)
  • En dehors de Google Cloud <ph type="x-smartling-placeholder">
      </ph>
    • Plan de contrôle dans le cluster pour Kubernetes avec les API Istio

Cloud Service Mesh géré

Le service géré Cloud Service Mesh consiste au plan de contrôle géré toutes les infrastructures et le plan de données géré pour GKE. Avec Managed Cloud Service Mesh, Google gère les mises à niveau, le scaling tout en limitant la maintenance manuelle des utilisateurs. Il s'agit du contrôle plan de données, plan de données et ressources associées.

Implémentation d'un plan de données

Si vous utilisez des API Google Cloud, votre plan de données peut être fourni par Envoy ou par des applications gRPC sans proxy. Si vous mettez à jour un l'approche side-car permet une intégration dans le réseau maillé sans modifier votre application. Pour éviter les frais généraux liés à l'exécution vous pouvez mettre à jour votre application pour qu'elle utilise gRPC.

Les proxys Envoy et le service gRPC sans proxy utilisent tous deux l'API xDS pour se connecter au dans le plan de contrôle. Si vous utilisez gRPC sans proxy, vous avez le choix entre plusieurs langages compatibles vos applications, y compris Go, C++, Java et Python.

Si vous utilisez des API Istio Open Source, votre plan de données est fourni par des proxys Envoy.

Implémentation du plan de contrôle

Votre plan de contrôle Cloud Service Mesh varie selon que est activé ou désactivé sur Google Cloud, et que vous soyez client.

Implémentation du plan de contrôle pour les utilisateurs existants

Pour déterminer votre plan de contrôle actuel, consultez Identifier l'implémentation du plan de contrôle. Pour plus pour en savoir plus sur les plans de contrôle et leur migration, consultez la section Présentation du plan de contrôle géré pour les clients qui restent sur le plan.

Implémentation du plan de contrôle pour les nouveaux utilisateurs

Migration du plan de contrôle

Si vous êtes encore client Anthos Service Mesh et que vous utilisez les API Istio, votre les clusters commenceront à migrer vers le plan de contrôle Traffic Director. Vous pouvez continuer à utiliser les API Istio pour la configuration.

Pour déterminer si vos clusters utilisent toujours le plan de contrôle Istio ou si migrés vers le nouveau plan de contrôle global, consultez Identifier la mise en œuvre du plan de contrôle

Étape suivante