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 centré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 est destiné aux personnes qui configurent, gèrent et utilisent les applications App Hub.

Organisation axé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, de la même manière que vous pensez aux fonctionnalités professionnelles. App Hub est entièrement géré par Google Cloud et ne nécessite aucune infrastructure supplémentaire.

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

  • Combien d'applications existent dans l'ensemble de mes projets ?
  • Dans quelle mesure les services et les charges de travail de mes applications dépendent-ils les uns des autres ?
  • À qui appartiennent 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 ou des milliers de ressources Google Cloud dispersées dans plusieurs projets Google Cloud. App Hub détecte automatiquement les ressources d'infrastructure et les représente en tant qu'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 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 affectée et en sachant quelles personnes au sein de votre organisation sont responsables de cette application. 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 équipe est modifiée, vous pouvez facilement transférer la propriété d'une application avec App Hub. Vous pouvez également déterminer plus facilement les dépendances entre différentes ressources et applications lorsque vous utilisez App Hub.

Cas d'utilisation

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

  • Organisez et classez vos applications : App Hub vous permet d'organiser et de classer vos applications à l'aide d'attributs tels que Owner, Criticality et Environment. Cela facilite la recherche et la gestion d'applications spécifiques et des 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.

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 offre une fonctionnalité métier de bout en bout.
  • Une charge de travail représente un déploiement binaire qui effectue le plus petit sous-ensemble logique d'une fonctionnalité métier, par exemple un déploiement de groupe d'instances géré (MIG) ou Google Kubernetes Engine (GKE).
  • Un service est une interface réseau ou API qui expose des fonctionnalités à des clients à des fins d'utilisation sur le réseau (par exemple, la règle de transfert d'un équilibreur de charge).

App Hub repose sur le concept d'application.

Vous pouvez utiliser des applications et leurs attributs associés pour créer des limites opérationnelles et de gouvernance 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 charges de travail et services associés, tout en effectuant 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 présente l'une des valeurs suivantes:

  • Détectés: services et charges de travail que vous pouvez enregistrer dans une application. Les services et charges de travail détectés incluent également les services ou les charges de travail que vous supprimez d'une application ou dont vous annulez l'enregistrement.
  • Enregistré: services et charges de travail enregistrés dans une application. Vous ne pouvez enregistrer qu'un service ou une charge de travail découvert. Une fois le service ou la charge de travail enregistré, l'état de l'enregistrement passe de "Découverte" à "Enregistré".
  • Dissocié: services et charges de travail enregistrés dans 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, le statut d'enregistrement du service passe à Dissocié. Les services et 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 charges de travail App Hub servent d'abstraction pour les ressources que vous découvrez dans les projets de service associés au projet hôte. Un projet hôte agit comme une limite d'administration, les applications faisant partie de cette limite. Vous pouvez créer des limites distinctes avec plusieurs projets hôtes et applications qui répondent à des besoins spécifiques de l'entreprise. Les projets hôtes vous permettent également de gérer des applications multiprojets, dans lesquelles 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 afin de différencier les ressources d'infrastructure sous-jacentes des concepts de modèle de données d'App Hub. Si vous avez besoin de plusieurs projets hôtes (un projet hôte pour chaque unité commerciale indépendante, par exemple), nous vous recommandons de créer un dossier et d'y ajouter les projets.

En fonction des rôles IAM (Identity and Access Management) attribué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 Rôles et autorisations App Hub.

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

Projets de service

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

Vous ne pouvez pas associer un projet de service à plusieurs projets hôte. Un projet hôte peut être un projet de service à part entière, mais pas pour un autre projet hôte.

Propriétés et attributs

Le modèle de données App Hub propose également des propriétés et des attributs pouvant améliorer le fonctionnement 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 de services ou de charges de travail. Les propriétés sont immuables et sont mises à jour avec la ressource sous-jacente. Exemples : ID de projet, emplacement et 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. Les attributs App Hub compatibles sont les suivants:

  • L'attribut Owners contient les coordonnées d'une application, d'un service ou d'une charge de travail. Les types de propriétaires acceptés sont les suivants :
    • developer_owners: équipe de développement chargée du développement et du codage.
    • operator_owners: équipe d'opérateurs chargée de garantir l'intégrité de l'environnement d'exécution et des opérations.
    • business_owners: équipe commerciale qui assure 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 documentations de référence suivantes:

Étapes suivantes