Découvrir Anthos

L'exemple de déploiement Anthos sur Google Cloud (aperçu) est une solution Google Cloud Marketplace que vous pouvez prévisualiser dès maintenant. Il déploie un véritable environnement interactif Anthos avec un cluster GKE, un maillage de services et une application dotée de plusieurs microservices. Ce tutoriel présente ces fonctionnalités, en vous apprenant à déployer Anthos sur Google Cloud à l'aide d'une banque fictive. Vous pouvez ensuite explorer les fonctionnalités d'Anthos qui vous intéressent en suivant le parcours de la banque avec Anthos dans nos tutoriels de suivi.

Si vous souhaitez dans un premier temps en savoir plus sur Anthos et ses composants, consultez notre présentation technique. Cependant, vous n'avez pas besoin de connaître Anthos pour suivre ce tutoriel. Vous devez connaître les concepts de base de Kubernetes, tels que les clusters. Si ce n'est pas le cas, consultez les pages Apprendre les bases de Kubernetes, Présentation de Google Kubernetes Engine (GKE) et Préparer une application pour Anthos Service Mesh.

Lorsque vous êtes prêt à procéder à une installation en production réelle, consultez la page Configurer Anthos.

Votre parcours

Vous êtes responsable de la plate-forme de la Banque d'Anthos. À ses débuts, il y a une dizaine d'années, la Banque d'Anthos était une petite entreprise spécialisée dans le traitement des paiements sur deux serveurs. Depuis, elle est devenue une banque commerciale performante. Elle compte des milliers d'employés et développe son organisation technique. La Banque d'Anthos souhaite à présent développer davantage son activité.

Tout au long de cette période, votre équipe et vous avez constaté que vous consacriez plus de temps et d'argent à gérer l'infrastructure qu'à générer de la valeur commerciale. Vous avez acquis dix années d'expérience cumulative dans votre pile existante. Cependant, vous savez que ce n'est pas la technologie appropriée pour faire face à l'ampleur du déploiement mondial dont la banque a besoin à mesure qu'elle se développe.

Vous avez adopté Anthos pour moderniser votre application et migrer vers le cloud en vue d'atteindre vos objectifs de développement.

Objectifs

Dans ce tutoriel, vous allez découvrir certaines des principales fonctionnalités d'Anthos en effectuant les tâches suivantes :

  • Déployer votre environnement Anthos avec des clusters, des applications et des composants Anthos (Anthos Service Mesh et Anthos Config Management)

  • Explorer les ressources de clusters Anthos utilisées par votre application à l'aide de Google Cloud Console

  • Surveiller les services de l'application à l'aide d'Anthos Service Mesh

Coûts

L'utilisation de l'exemple de déploiement Anthos entraîne des frais pour l'utilisation d'Anthos sur Google Cloud, comme indiqué sur la page Tarifs, à moins que vous ne disposiez d'un abonnement Anthos.

Vous êtes également responsable des autres coûts Google Cloud engendrés par l'exécution de l'exemple de déploiement Anthos, tels que les frais pour les VM et les équilibreurs de charge Compute Engine. Vous pouvez consulter le coût mensuel estimé de toutes ces ressources sur la page Google Cloud Marketplace du déploiement.

Nous vous recommandons d'effectuer un nettoyage une fois le tutoriel terminé ou d'explorer le déploiement pour éviter des frais supplémentaires. L'exemple de déploiement Anthos n'est pas destiné à une utilisation en production et ses composants ne peuvent pas être mis à jour.

Avant de commencer

L'exemple de déploiement Anthos sur Google Cloud nécessite l'utilisation d'un nouveau projet sans ressource existante.

Les exigences supplémentaires suivantes s'appliquent au niveau du projet :

  • Vous devez disposer d'un quota suffisant dans le projet et la zone de déploiement cible pour au moins sept processeurs virtuels, 24,6 Go de mémoire, 310 Go d'espace disque, un VPC, deux règles de pare-feu et une passerelle Cloud NAT.
  • Votre organisation ne dispose pas d'une règle qui limite explicitement l'utilisation d'images de déploiement par clic.

Avant de commencer le tutoriel :

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  3. Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier si la facturation est activée sur un projet.

  4. Activer les API Compute Engine and Service Management.

    Activer les API

  5. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  6. Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier si la facturation est activée sur un projet.

  7. Activer les API Compute Engine and Service Management.

    Activer les API

Procédez comme suit pour vous assurer que votre projet remplit les conditions requises pour exécuter l'exemple de déploiement Anthos :

  1. Dans la barre d'outils supérieure de votre nouveau projet, cliquez sur Activer Cloud Shell Bouton d'activation de Cloud Shell pour lancer Cloud Shell.

    Cloud Shell est un environnement shell interactif pour Google Cloud qui vous permet de gérer vos projets et vos ressources depuis un navigateur Web.

  2. Configurez Cloud Shell avec la zone de déploiement cible, en remplaçant ZONE dans la commande suivante :

    gcloud config set compute/zone ZONE
    
  3. Saisissez la commande suivante pour exécuter un script qui vérifie que votre projet remplit les conditions nécessaires :

    curl -sL https://github.com/GoogleCloudPlatform/anthos-sample-deployment/releases/latest/download/asd-prereq-checker.sh | sh -
    

    Résultat (exemple) :

    Your active configuration is: [cloudshell-4100]
    Checking project my-project-id, region us-central1, zone us-central1-c
    
    PASS: User has permission to create service account with the required IAM policies.
    PASS: Org Policy will allow this deployment.
    PASS: Service Management API is enabled.
    PASS: Anthos Sample Deployment does not already exist.
    PASS: Project ID is valid, does not contain colon.
    PASS: Project has sufficient quota to support this deployment.
    

    Si un élément n'est pas transmis (sans état PASS), consultez notre guide de dépannage. Si vous ne corrigez pas ces erreurs, vous ne pourrez peut-être pas déployer l'exemple.

Éléments déployés

L'exemple de déploiement Anthos sur Google Cloud provisionne votre projet avec les éléments suivants :

  • Un cluster GKE s'exécutant sur Google Cloud : anthos-sample-cluster1.

  • Anthos Service Mesh installé sur le cluster. Vous utiliserez Anthos Service Mesh pour gérer le maillage de services sur anthos-sample-cluster1.

  • Découvrez comment utiliser Anthos Config Management pour gérer les règles de configuration et de sécurité de anthos-sample-cluster1 dans notre tutoriel de suivi, Secure Anthos.

  • Application de la Banque d'Anthos exécutée sur le cluster. Il s'agit d'une application bancaire basée sur le Web, qui utilise un certain nombre de microservices écrits dans différents langages de programmation, y compris Java, Python et JavaScript.

  • Une seule instance Compute Engine (machine virtuelle) effectuant diverses tâches automatisées pour lancer l'environnement du tutoriel une fois le cluster créé : asd-jump-server.

  • Un VPC avec un sous-réseau dans la région de déploiement cible du cluster GKE et de l'instance Compute Engine. Une passerelle Cloud NAT sur un routeur cloud, et des règles de pare-feu pour la connectivité vers et entre les composants du déploiement.

Lancer l'exemple de déploiement Anthos sur Google Cloud

Lancez l'exemple de déploiement Anthos sur Google Cloud via Cloud Marketplace :

  1. Ouvrez l'exemple de déploiement Anthos sur Google Cloud.

    Accéder à l'exemple de déploiement Anthos sur Google Cloud

  2. Sélectionnez le projet Google Cloud à utiliser, puis confirmez votre choix. Il doit s'agir du projet que vous avez créé dans la section Avant de commencer.

  3. Cliquez sur LANCER. L'affichage de l'écran de configuration du déploiement peut prendre plusieurs minutes en attendant que la solution active quelques API.

  4. Cochez la case Confirm that all prerequisites have been met (Confirmer que toutes les conditions préalables ont été remplies) pour confirmer que vous avez bien exécuté le script de prérequis.

  5. (Facultatif) Sur l'écran de configuration du déploiement, spécifiez le nom du déploiement, la zone et le compte de service de votre choix. Cependant, pour votre premier déploiement, nous vous recommandons d'accepter toutes les valeurs fournies par défaut, y compris la création d'un compte de service.

  6. Cliquez sur Déployer. Le déploiement de l'exemple peut prendre jusqu'à 15 minutes. Ne vous inquiétez donc pas si vous devez patienter quelques instants.

Au cours du déploiement, Cloud Console passe à la vue Deployment Manager. Une fois l'exemple déployé, vous pouvez examiner l'intégralité du déploiement. La liste de toutes les ressources activées, y compris le cluster GKE (anthos-sample-cluster1) et l'instance Compute Engine (asd-jump-server), doit s'afficher.

Si vous rencontrez des erreurs de déploiement, consultez notre guide de dépannage.

Utiliser le tableau de bord Anthos

Anthos fournit une vue structurée prête à l'emploi de toutes les ressources de vos applications, y compris les clusters, les services et les charges de travail. Vous bénéficiez ainsi d'une vue d'ensemble générale de vos ressources et d'un accès aux informations de niveau inférieur si nécessaire. Pour afficher le tableau de bord de premier niveau de votre déploiement, accédez au tableau de bord Anthos de votre projet dans Google Cloud Console.

Accéder au tableau de bord Anthos

Vous devriez voir les éléments suivants :

  • La section Service mesh (Maillage de services) indique que vous disposez de neuf services, mais que vous devez effectuer une tâche pour afficher leur état. Vous en saurez plus sur sa signification dans la suite de ce tutoriel.

  • La section Cluster status (État du cluster) indique que vous disposez d'un cluster GKE opérationnel.

Capture d'écran du tableau de bord Anthos

Découvrir les ressources des clusters Anthos

La page Clusters Anthos affiche tous les clusters du projet enregistrés dans Anthos, y compris ceux en dehors de Google Cloud. Vous pouvez également consulter la page Google Kubernetes Engine Clusters (Clusters Google Kubernetes Engine) pour afficher tous les clusters de votre projet. En fait, la page "Clusters Anthos" vous permet d'afficher le détail des pages GKE si vous devez consulter plus d'informations sur le cluster et les nœuds.

Dans cette section, vous allez examiner de plus près les ressources GKE de la Banque d'Anthos.

Gestion des clusters

  1. Dans Google Cloud Console, accédez à la page Clusters d'Anthos.

    Accéder à la page "Clusters"

  2. Cliquez sur le cluster anthos-sample-cluster1 pour afficher ses informations de base dans le volet de droite, y compris son type, sa version de plan de contrôle et son emplacement. La section Fonctionnalités du cluster vous permet également d'afficher les fonctionnalités Anthos activées dans ce cluster.

  3. Pour en savoir plus sur ce cluster, cliquez sur More details in GKE (Plus de détails dans GKE). Vous accédez ainsi à la page du cluster dans la console Google Kubernetes Engine, qui présente tous les paramètres actuels du cluster.

  4. Dans la console Google Kubernetes Engine, cliquez sur l'onglet Nœuds pour afficher tous les systèmes de calcul du cluster. De là, vous pouvez consulter davantage d'informations, tels que les pods de charge de travail exécutés sur chaque nœud et un résumé des ressources du nœud (processeur, mémoire, stockage).

Pour en savoir plus sur les clusters et les nœuds GKE, consultez la documentation de GKE.

Charges de travail des clusters

La console Google Kubernetes Engine dispose d'une vue Charges de travail qui présente de manière agrégée les charges de travail (pods) exécutées sur l'ensemble de vos clusters GKE.

Les charges de travail du cluster et des espaces de noms GKE sont affichées. Par exemple, les charges de travail de l'espace de noms boa s'exécutent dans le cluster anthos-sample-cluster1.

Services et entrées

La vue Services et entrées affiche les ressources "Service" et "Entrée" du projet. Un service expose un ensemble de pods en tant que service réseau avec un point de terminaison, tandis qu'une entrée gère l'accès externe aux services d'un cluster. Toutefois, la Banque d'Anthos utilise un service de passerelle d'entrée Istio au lieu d'un objet Ingress Kubernetes standard pour le trafic vers la banque. Les maillages Anthos Service Mesh peuvent utiliser ce service pour acheminer le trafic de manière plus complexe vers leur trafic entrant. Vous pouvez expérimenter cela par vous-même lorsque vous utilisez les fonctionnalités d'observabilité du maillage de services dans la suite de ce tutoriel.

  1. Dans la console Google Kubernetes Engine, accédez à la page Services et entrées.

    Accéder à la page "Services et entrées"

  2. Pour rechercher la passerelle d'entrée de la Banque d'Anthos, faites défiler la liste des services disponibles jusqu'à atteindre le service nommé istio-ingressgateway.

  3. Cliquez sur la flèche vers le bas située à la fin de la ligne pour istio-ingressgateway pour afficher plus d'informations sur le service, y compris sur tous ses points de terminaison externes. Une passerelle d'entrée gère le trafic entrant du maillage de services de votre application. Dans ce cas, nous pouvons donc utiliser ses informations pour consulter l'interface Web de la banque.

  4. Cliquez sur le point de terminaison externe istio-ingressgateway avec le port 80. Vous devriez pouvoir explorer l'interface Web de Bank of Anthos.

Observer des services

Des fonctionnalités de gestion et d'observabilité des services d'Anthos sont fournies par Anthos Service Mesh, une suite d'outils proposée par Istio vous permettant de surveiller et de gérer un maillage de services fiable. Pour en savoir plus sur Anthos Service Mesh et sur la façon dont ce service vous aide à gérer les microservices, consultez la documentation d'Anthos Service Mesh. Si vous ne savez pas comment utiliser des microservices avec des conteneurs et ce qu'ils peuvent vous permettre de faire, consultez la page Préparer une application pour Anthos Service Mesh.

Dans notre exemple, le cluster de l'exemple de déploiement exécute l'exemple d'application de la Banque d'Anthos reposant sur des microservices. L'application inclut également un utilitaire loadgenerator qui simule une petite charge sur le cluster afin que vous puissiez afficher les métriques et le trafic dans le tableau de bord.

Dans cette section, vous allez utiliser la page "Anthos Service Mesh" pour examiner les services et le trafic de cette application.

Observer la vue Tableau des services

  1. Accédez à la page Anthos Service Mesh.

    Accéder à la page Anthos Service Mesh

  2. Par défaut, la vue Tableau s'affiche sur la page. Elle présente une liste de tous les microservices de votre projet, y compris les services système. Pour ne filtrer que les services de la Banque d'Anthos, sélectionnez boa dans la liste déroulante Espace de noms en haut à gauche de la page.

Chaque ligne de la table correspond à l'un des services inclus dans l'application de la Banque d'Anthos. Par exemple, le service frontend affiche l'interface utilisateur Web de l'application et le service userservice gère les comptes utilisateur et l'authentification.

La liste répertorie les métriques à jour, telles que le taux d'erreur et les latences importantes, de chaque service. Ces métriques sont prêtes à l'emploi pour les services déployés sur Anthos. Vous n'avez pas besoin d'écrire le code d'application pour consulter ces statistiques.

Vous pouvez afficher le détail dans cette vue pour obtenir plus d'informations sur chaque service. Par exemple, pour en savoir plus sur le service transactionhistory, procédez comme suit :

  1. Cliquez sur transactionhistory dans la liste des services. La page d'informations sur le service affiche toutes les données de télémétrie disponibles pour ce service.

  2. Dans le menu Navigation de la page transactionhistory, cliquez sur Services connectés. Dans cette section, vous pouvez afficher les connexions entrantes et sortantes du service. Une icône en forme de cadenas déverrouillé indique qu'une partie du trafic a été observée sur ce port qui n'est pas chiffré à l'aide du protocole TLS mutuel (mTLS). Pour en savoir plus sur son fonctionnement, consultez le tutoriel Sécuriser Anthos.

Capture d'écran de la vue des services connectés d'Anthos Service Mesh

Observer la vue Topologie des services

La vue Tableau n'est pas le seul moyen d'observer vos services dans Anthos. La vue Topologie vous aide à vous concentrer sur l'interaction des services.

  1. Si vous ne l'avez pas déjà fait, revenez à la vue Tableau en cliquant sur la flèche de retour en haut de la page des informations sur le service.

  2. En haut à droite de la page, cliquez sur Topologie pour passer de la vue Tableau à la visualisation des graphiques de la charge de travail/du service. Comme vous pouvez le constater dans la légende, le graphique affiche à la fois les services Anthos Service Mesh de l'application et les charges de travail GKE qui les mettent en œuvre.

    Capture d'écran de la vue Topologie d'Anthos Service Mesh

Vous pouvez maintenant explorer le graphique de topologie. Anthos Service Mesh observe automatiquement les services qui communiquent entre eux afin d'afficher les informations sur les connexions de service à service :

  • Passez le pointeur de la souris sur un élément pour afficher des informations supplémentaires, y compris le nombre de requêtes sortantes par seconde de chaque service.

  • Faites glisser les nœuds à l'aide de la souris pour améliorer l'affichage de parties spécifiques du graphique.

  • Cliquez sur les nœuds du service pour obtenir plus d'informations sur celui-ci.

  • Cliquez sur Développer lorsque vous passez le pointeur sur le nœud d'une charge de travail pour en afficher le détail, y compris le nombre d'instances de cette charge de travail en cours d'exécution.

Poursuivre l'exploration d'Anthos

Bien que ce tutoriel présente de nombreuses fonctionnalités Anthos, il vous reste encore beaucoup d'informations à découvrir concernant votre déploiement dans Anthos. Consultez l'un de nos tutoriels de suivi pour essayer des tâches pratiques avec Anthos ou continuez à explorer vous-même l'exemple de déploiement Anthos sur Google Cloud avant de suivre les instructions de nettoyage de la section suivante.

Découvrez d'autres tutoriels :
  • Découvrez les fonctionnalités de sécurité d'Anthos avec l'exemple de déploiement Anthos dans le tutoriel Sécuriser Anthos.
  • Apprenez-en davantage sur la gestion des services avec l'exemple de déploiement Anthos dans le tutoriel Gérer des services avec Anthos.

Nettoyer

Une fois que vous avez terminé d'explorer l'exemple de déploiement Anthos, vous pouvez nettoyer les ressources que vous avez créées dans Google Cloud afin qu'elles ne soient plus comptabilisées dans votre quota et qu'elles ne vous soient plus facturées. Dans les sections suivantes, nous allons voir comment supprimer ou désactiver ces ressources.

  • Option 1. Vous pouvez supprimer le projet. Il s'agit de l'approche recommandée. Toutefois, si vous souhaitez conserver le projet, vous pouvez supprimer le déploiement à l'aide de l'option 2.

  • Option n° 2. (Expérimental) Si vous utilisez un projet existant, mais vide, vous pouvez annuler manuellement toutes les étapes de ce tutoriel en commençant par supprimer le déploiement.

  • Option 3. (Expérimental) Si vous maîtrisez Google Cloud ou que votre cluster comprend des ressources existantes, vous pouvez nettoyer manuellement les ressources que vous avez créées dans ce tutoriel.

Supprimer le projet (option 1)

  1. Dans Cloud Console, accédez à la page Gérer les ressources :

    Accéder à la page Gérer les ressources

  2. Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer.
  3. Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.

Supprimer le déploiement (option 2)

Dans cette approche, vous devez autoriser Deployment Manager à annuler les éléments créés. Même si le déploiement comporte des erreurs, cette approche permet de l'annuler.

  1. Dans le menu Navigation de Cloud Console, cliquez sur Deployment Manager.

  2. Sélectionnez votre déploiement, puis cliquez sur Supprimer.

  3. Confirmez l'opération en cliquant de nouveau sur Supprimer.

  4. Même si le déploiement comporte des erreurs, vous pouvez le sélectionner et le supprimer.

  5. Si le fait de cliquer sur Supprimer n'entraîne pas la suppression du déploiement, vous pouvez essayer Supprimer le déploiement, mais conserver les ressources. Si Deployment Manager ne peut supprimer aucune ressource, vous devez les noter et essayer plus tard de les supprimer manuellement.

  6. Attendez que Deployment Manager termine la suppression.

  7. (Étape temporaire) Dans le menu Navigation, cliquez sur Services réseau > Équilibrage de charge, puis supprimez les règles de transfert créées par le cluster anthos-sample-cluster1.

  8. (Facultatif) Accédez à la page https://source.cloud.google.com/<project_id>. Supprimez le dépôt dont le nom inclut config-repo, s'il en existe un.

  9. (Facultatif) Supprimez le compte de service créé lors du déploiement et tous ses rôles IAM.

Effectuer un nettoyage manuel (option 3)

Cette approche repose sur la suppression manuelle des ressources depuis Google Cloud Console.

  1. Dans le menu Navigation de Cloud Console, cliquez sur Kubernetes Engine.

  2. Sélectionnez votre cluster et cliquez sur Supprimer, puis de nouveau sur Supprimer pour confirmer.

  3. Dans le menu Navigation de Cloud Console, cliquez sur Compute Engine.

  4. Sélectionnez le serveur intermédiaire, cliquez sur Supprimer, puis de nouveau sur Supprimer pour confirmer.

  5. Suivez les étapes 7 et 8 de l'option 2.

Si vous envisagez d'effectuer un nouveau déploiement après le nettoyage manuel, vérifiez que toutes les conditions sont remplies, comme indiqué dans la section Avant de commencer.

Étapes suivantes