Présentation d'App Hub

De nombreuses applications cloud évoluent pour inclure plusieurs ressources d'infrastructure provenant d'un ou de plusieurs projets Google Cloud, ce qui peut compliquer la gestion et la compréhension de ces ressources pour les développeurs et les opérateurs. App Hub propose une méthode axée sur les applications pour organiser ces ressources afin de vous aider à comprendre les interactions entre les ressources et à prendre en charge les fonctions métier.

Ce document s'adresse aux personnes qui configurent, administrent et utilisent des applications App Hub.

Organisation centrée sur les applications

App Hub s'aligne sur vos objectifs commerciaux en vous permettant d'organiser vos ressources Google Cloud de manière centrée sur les applications, comme vous le faites pour les fonctionnalités métier. App Hub est entièrement géré par Google Cloud et ne nécessite aucune infrastructure supplémentaire.

Les administrateurs d'App Hub peuvent facilement gérer les ressources d'infrastructure issues d'un ou de plusieurs projets Google Cloud, ce qui simplifie les opérations et la gouvernance d'entreprise complexes à grande échelle. App Hub vous aide à organiser ces ressources d'infrastructure en créant des applications App Hub qui incluent ces ressources en tant que services et charges de travail App Hub. Enregistrer des services et des charges de travail dans une application peut vous aider à répondre aux questions suivantes:

  • Combien d'applications existent-elles dans l'ensemble de mes projets ?
  • Dans quelle mesure les services et les charges de travail de mes applications sont-ils dépendants les uns des autres ?
  • Qui est propriétaire de ces applications, services et charges de travail ?
  • Combien d'applications sont critiques ?
  • Combien d'applications sont en production ?

Par exemple, plusieurs équipes peuvent être impliquées dans le développement d'applications pour votre entreprise. Ces équipes peuvent créer des centaines, voire des milliers de ressources Google Cloud réparties sur de nombreux projets Google Cloud. App Hub détecte automatiquement les ressources d'infrastructure et les représente sous forme d'abstractions de service et de charge de travail. Vous pouvez enregistrer ces services et charges de travail dans des applications, ce qui clarifie la propriété et la criticité des ressources. Pour en savoir plus, consultez la section Concepts et modèle de données d'App Hub.

Lorsque les ressources sont organisées en applications, vous pouvez appliquer une logique métier et des règles à une application, en sachant que seule cette application est concernée et en connaissant les personnes de votre organisation qui en sont responsables. Par exemple, vous pouvez créer une application pour un environnement particulier, tel que la production, et fournir un accès hautement privilégié à ses propriétaires.

Si la structure de votre entreprise change, vous pouvez facilement transférer la propriété des applications avec App Hub. Vous pouvez également déterminer plus facilement les dépendances entre les différentes ressources et applications lorsque vous utilisez App Hub.

Cas d'utilisation

App Hub est compatible avec les cas d'utilisation suivants:

  • Organiser et classer vos applications : le hub d'applications vous permet d'organiser et de classer vos applications à l'aide d'attributs tels que Owner, Criticality et Environment. Vous pouvez ainsi trouver et gérer facilement des applications spécifiques et les ressources associées.

  • Comprendre les ressources de votre application : App Hub vous aide à comprendre la composition de vos applications. Cela peut aider les développeurs et les opérateurs à comprendre le fonctionnement de vos applications et leurs dépendances.

  • Surveiller les ressources de votre application (preview) : App Hub fournit un aperçu complet des métriques des signaux clés de surveillance suivants : trafic, taux d'erreur du serveur, latence P95, utilisation du processeur et utilisation de la mémoire. Ces signaux peuvent aider les opérateurs à comprendre les performances des applications et à identifier les dépendances pour résoudre les problèmes.

Concepts et modèle de données

App Hub repose sur trois concepts clés:

  • Une application est un regroupement fonctionnel de services et de charges de travail qui génère une fonctionnalité métier de bout en bout.
  • Une charge de travail représente un déploiement binaire qui exécute le plus petit sous-ensemble logique d'une fonctionnalité métier, par exemple un déploiement de groupe d'instances géré (MIG) ou de Google Kubernetes Engine (GKE).
  • Un service est une interface réseau ou API qui expose des fonctionnalités aux clients pour leur permettre de les utiliser sur le réseau. Par exemple, la règle de transfert d'un équilibreur de charge.

App Hub s'articule autour du concept d'application.

Vous pouvez utiliser les applications et leurs attributs associés pour créer des limites de gouvernance et opérationnelles autour des abstractions de service et de charge de travail. Vous pouvez ensuite utiliser ces attributs pour organiser et localiser les applications, ainsi que les services et les charges de travail qui leur sont associés, lorsque vous effectuez des activités telles que l'observabilité, l'audit et la gouvernance.

Modèle de données App Hub
Figure 1 Modèle de données App Hub

L'état d'enregistrement d'un service ou d'une charge de travail dans votre projet hôte correspond à l'une des valeurs suivantes:

  • Découvertes: services et charges de travail que vous pouvez enregistrer dans une application. Les services et charges de travail découverts incluent également les services ou charges de travail que vous supprimez ou annulez l'enregistrement dans une application.
  • Enregistré: services et charges de travail enregistrés auprès d'une application. Vous ne pouvez enregistrer qu'un service ou une charge de travail découverts. Une fois que vous avez enregistré le service ou la charge de travail, l'état de l'enregistrement passe de "Découverte" à "Enregistré".
  • Dissocié: services et charges de travail enregistrés auprès d'une application dont les ressources sous-jacentes sont supprimées. Par exemple, si la règle de transfert représentée par un service est supprimée, l'état d'enregistrement du service est défini sur Dissocié. Les services et les charges de travail dissociés restent dans l'application jusqu'à ce que vous les annuliez.

Projets hôtes

Un projet hôte héberge des ressources App Hub (applications, services, charges de travail). Les services et les charges de travail App Hub servent d'abstractions pour les ressources que vous découvrez dans les projets de service associés au projet hôte. Un projet hôte sert de limite administrative, les applications faisant partie de cette limite. Vous pouvez créer des limites distinctes avec plusieurs projets et applications hôtes répondant à des besoins métier spécifiques. Les projets hôtes vous permettent également de gérer des applications multiprojets, où les services et les charges de travail d'une application sont présents dans plusieurs projets.

Nous vous recommandons de créer un projet Google Cloud en tant que projet hôte pour différencier les ressources d'infrastructure sous-jacentes des concepts de modèle de données App Hub. Si vous avez besoin de plusieurs projets hôtes, par exemple un projet hôte pour chaque unité commerciale indépendante, nous vous recommandons de créer un dossier et d'y ajouter les projets.

En fonction des rôles IAM (Identity and Access Management) accordés au projet hôte (apphub.admin, apphub.editor et apphub.viewer), vous pouvez créer des applications, leur attribuer des attributs, et enregistrer ou afficher des services et des charges de travail. Pour en savoir plus, consultez la section Rôles et autorisations dans App Hub.

Pour en savoir plus sur la création de projets hôtes, consultez la section Configurer App Hub.

Projets de service

Un projet de service est un projet Google Cloud qui contient les ressources d'infrastructure sous-jacentes. Vous devez associer un projet de service au projet hôte pour que les ressources d'infrastructure qu'il contient puissent être regroupées dans une application.

Vous ne pouvez pas associer un projet de service à plusieurs projets hôtes. Un projet hôte peut être un projet de service pour lui-même, mais pas pour un autre projet hôte.

Propriétés et attributs

Le modèle de données d'App Hub propose également des propriétés et des attributs qui peuvent améliorer les fonctionnalités des applications, des services et des charges de travail.

Les propriétés sont des champs qui décrivent les ressources d'infrastructure sous-jacentes d'un service ou d'une charge de travail. Les propriétés permettent d'identifier des informations pertinentes dans les ressources d'infrastructure sous-jacentes qui peuvent faciliter l'expérience d'enregistrement pour les services ou les charges de travail. Les propriétés sont immuables via le hub d'applications et ne sont mises à jour que lorsque la ressource sous-jacente est modifiée. Il peut s'agir, par exemple, d'ID de projet, d'emplacement et de zone.

Les attributs sont des champs modifiables qui peuvent être définis pour les applications, les services et les charges de travail afin de mieux les identifier et les organiser. Voici les attributs App Hub compatibles:

  • L'attribut Owners contient les coordonnées d'une application, d'un service ou d'une charge de travail. Voici les types de propriétaires acceptés :
    • developer_owners: équipe de développement propriétaire du développement et du codage.
    • operator_owners: équipe d'opérateurs qui garantit l'intégrité de l'exécution et des opérations.
    • business_owners: équipe commerciale qui garantit la qualité et veille à ce que les attentes des utilisateurs soient satisfaites.
  • La criticité d'une application, d'un service ou d'une charge de travail indique son importance pour l'entreprise. Les valeurs acceptées sont les suivantes:

    • Application critique
    • Élevée
    • Moyenne
    • Faible
  • L'environnement d'une application, d'un service ou d'une charge de travail correspond à une étape du cycle de vie d'un logiciel, par exemple la production, la préproduction ou le développement. Les valeurs acceptées sont les suivantes:

    • Production
    • Préproduction
    • Test
    • Développement

API et documentation de référence gcloud

Pour en savoir plus sur les propriétés App Hub, consultez les documents de référence suivants:

Étape suivante