App Hub – Übersicht

Viele Cloud-Anwendungen werden so weiterentwickelt, dass sie mehrere Infrastrukturressourcen aus einem oder mehreren Google Cloud-Projekten umfassen. Das kann sowohl für Entwickler als auch für Betreiber die Verwaltung und Übersicht dieser Ressourcen erschweren. Der App Hub bietet eine anwendungsorientierte Möglichkeit, diese Ressourcen zu organisieren, damit Sie die Ressourceninteraktionen besser nachvollziehen und Geschäftsfunktionen unterstützen können.

Dieses Dokument richtet sich an Nutzer, die App Hub-Anwendungen einrichten, verwalten und verwenden.

Anwendungsorientierte Organisation

App Hub passt zu Ihren Geschäftszielen, da Sie Ihre Google Cloud-Ressourcen anwendungsorientiert organisieren können, genau wie Sie es mit Geschäftsfunktionen tun würden. Der App Hub wird vollständig von Google Cloud verwaltet und Sie müssen keine zusätzliche Infrastruktur installieren.

App Hub-Administratoren können Infrastrukturressourcen aus einem oder mehreren Google Cloud-Projekten ganz einfach verwalten und so komplexe Geschäftsabläufe und die Governance im großen Maßstab vereinfachen. App Hub hilft Ihnen, diese Infrastrukturressourcen zu organisieren, indem Sie App Hub-Anwendungen erstellen, die diese Ressourcen als App Hub-Dienste und ‑Arbeitslasten enthalten. Wenn Sie Dienste und Arbeitslasten bei einer Anwendung registrieren, können Sie folgende Fragen beantworten:

  • Wie viele Anwendungen gibt es in all meinen Projekten?
  • Inwiefern sind die Dienste und Arbeitslasten in meinen Anwendungen voneinander abhängig?
  • Wem gehören diese Anwendungen, Dienste und Arbeitslasten?
  • Wie viele Anwendungen sind kritisch?
  • Wie viele Anwendungen sind in Produktion?

Angenommen, Sie haben mehrere Teams, die an der Entwicklung von Anwendungen für Ihr Unternehmen beteiligt sind. Diese Teams können Hunderte oder Tausende von Google Cloud-Ressourcen in vielen Google Cloud-Projekten erstellen. App Hub erkennt Infrastrukturressourcen automatisch und stellt sie als Dienst- und Arbeitslastabstraktion dar. Sie können diese Dienste und Arbeitslasten in Anwendungen registrieren, um die Ressourceneigentümerschaft und -kritalität zu klären. Weitere Informationen finden Sie unter App Hub-Konzepte und Datenmodell.

Wenn die Ressourcen in Anwendungen organisiert sind, können Sie Geschäftslogik und Richtlinien auf eine Anwendung anwenden, da Sie wissen, dass nur diese Anwendung betroffen ist und welche Personen in Ihrer Organisation für diese Anwendung verantwortlich sind. Sie können beispielsweise eine Anwendung für eine bestimmte Umgebung wie die Produktionsumgebung erstellen und den Eigentümern der Anwendung einen hoch privilegierten Zugriff gewähren.

Wenn sich die Teamstruktur Ihres Unternehmens ändert, können Sie die Inhaberschaft von Apps ganz einfach über den App Hub übertragen. Außerdem können Sie mit dem App Hub Abhängigkeiten zwischen verschiedenen Ressourcen und Anwendungen leichter ermitteln.

Anwendungsfälle

App Hub unterstützt die folgenden Anwendungsfälle:

  • Apps organisieren und kategorisieren: Im App Hub können Sie Ihre Apps mithilfe von Attributen wie Owner, Criticality und Environment organisieren und kategorisieren. So können Sie bestimmte Anwendungen und die zugehörigen Ressourcen ganz einfach finden und verwalten.

  • Ressourcen in Ihrer Anwendung verstehen: Im App Hub können Sie die Zusammensetzung Ihrer Anwendungen nachvollziehen. So können Entwickler und Betreiber besser nachvollziehen, wie Ihre Anwendungen funktionieren und welche Abhängigkeiten sie haben.

  • Ressourcen in Ihrer Anwendung überwachen (Vorabversion): App Hub bietet eine umfassende Übersicht über die folgenden goldenen Monitoring-Signale: Traffic, Serverfehlerrate, P95-Latenz, CPU-Auslastung und Arbeitsspeicherauslastung. Anhand dieser Signale können Betreiber die Anwendungsleistung nachvollziehen und Abhängigkeiten erkennen, um Probleme zu beheben.

Konzepte und Datenmodell

Der App Hub basiert auf drei wichtigen Konzepten:

  • Eine Anwendung ist eine funktionale Gruppierung von Diensten und Arbeitslasten, die eine End-to-End-Geschäftsfunktion ergibt.
  • Eine Arbeitslast ist eine binäre Bereitstellung, die die kleinste logische Teilmenge einer Geschäftsfunktion ausführt, z. B. eine verwaltete Instanzgruppe (Managed Instance Group, MIG) oder eine Google Kubernetes Engine-Bereitstellung (GKE).
  • Ein Dienst ist eine Netzwerk- oder API-Schnittstelle, die Clients Funktionen für die Nutzung über das Netzwerk zur Verfügung stellt, z. B. die Weiterleitungsregel für einen Load Balancer.

Der App Hub basiert auf dem Konzept einer Anwendung.

Sie können Anwendungen und die zugehörigen Attribute verwenden, um Governance- und Betriebsgrenzen für Dienst- und Arbeitslastabstraktionen zu erstellen. Mit diesen Attributen können Sie dann Anwendungen und zugehörige Dienste und Arbeitslasten organisieren und finden, während Sie Aktivitäten wie Observability, Auditing und Governance ausführen.

App Hub-Datenmodell
Abbildung 1. App Hub-Datenmodell

Der Registrierungsstatus eines Dienstes oder einer Arbeitslast in Ihrem Hostprojekt hat einen der folgenden Werte:

  • Erkannt: Dienste und Arbeitslasten, die Sie bei einer Anwendung registrieren können. Zu den erkannten Diensten und Arbeitslasten gehören auch Dienste oder Arbeitslasten, die Sie aus einer Anwendung löschen oder abmelden.
  • Registriert: Dienste und Arbeitslasten, die für eine Anwendung registriert sind. Sie können nur einen erkannten Dienst oder eine erkannte Arbeitslast registrieren. Nachdem Sie den Dienst oder die Arbeitslast registriert haben, ändert sich der Registrierungsstatus von „Gefunden“ zu „Registriert“.
  • Losgelöst: Dienste und Arbeitslasten, die für eine Anwendung registriert sind, deren zugrunde liegende Ressourcen gelöscht werden. Wenn beispielsweise die Weiterleitungsregel, die durch einen Dienst dargestellt wird, gelöscht wird, wird der Registrierungsstatus des Dienstes in Losgelöst geändert. Losgelöste Dienste und Arbeitslasten bleiben in der Anwendung, bis Sie sie abmelden.

Hostprojekte

In einem Hostprojekt werden App Hub-Ressourcen (Anwendungen, Dienste und Arbeitslasten) gehostet. App Hub-Dienste und ‑Arbeitslasten dienen als Abstraktion für Ressourcen, die Sie in Dienstprojekten finden, die an das Hostprojekt angehängt sind. Ein Hostprojekt fungiert als Verwaltungsgrenze, zu der auch die Anwendungen gehören. Sie können separate Grenzen mit mehreren Hostprojekten und Anwendungen erstellen, die auf spezifische Geschäftsanforderungen zugeschnitten sind. Mit Hostprojekten können Sie auch projektübergreifende Anwendungen verwalten, bei denen die Dienste und Arbeitslasten einer Anwendung in mehreren Projekten vorhanden sind.

Wir empfehlen, ein neues Google Cloud-Projekt als Hostprojekt zu erstellen, um die zugrunde liegenden Infrastrukturressourcen von den App Hub-Datenmodellkonzepten zu unterscheiden. Wenn Sie mehrere Hostprojekte benötigen, z. B. ein Hostprojekt für jede unabhängige Geschäftseinheit, empfehlen wir Ihnen, einen neuen Ordner zu erstellen und die Projekte diesem hinzuzufügen.

Je nach den IAM-Rollen (Identity and Access Management), die dem Hostprojekt gewährt wurden (apphub.admin, apphub.editor und apphub.viewer), können Sie Anwendungen erstellen, den Anwendungen Attribute zuweisen und Dienste und Arbeitslasten registrieren oder aufrufen. Weitere Informationen finden Sie unter App Hub-Rollen und ‑Berechtigungen.

Weitere Informationen zum Erstellen von Hostprojekten finden Sie unter App Hub einrichten.

Dienstprojekte

Ein Dienstprojekt ist ein Google Cloud-Projekt, das die zugrunde liegenden Infrastrukturressourcen enthält. Sie hängen ein Dienstprojekt an das Hostprojekt an, um die darin enthaltenen Infrastrukturressourcen für die Gruppierung in einer Anwendung verfügbar zu machen.

Ein Dienstprojekt kann nicht an mehrere Hostprojekte angehängt werden. Ein Hostprojekt kann ein Dienstprojekt für sich selbst sein, aber nicht für ein anderes Hostprojekt.

Properties und Attribute

Das App Hub-Datenmodell bietet außerdem Properties und Attribute, mit denen sich die Funktionalität von Anwendungen, Diensten und Arbeitslasten verbessern lässt.

Properties sind Felder, die die zugrunde liegenden Infrastrukturressourcen für einen Dienst oder eine Arbeitslast beschreiben. Mithilfe von Properties können Sie aussagekräftige Informationen in den zugrunde liegenden Infrastrukturressourcen ermitteln, die bei der Registrierung von Diensten oder Arbeitslasten hilfreich sein können. Properties sind über den App Hub unveränderlich und werden nur bei Änderungen an der zugrunde liegenden Ressource aktualisiert. Beispiele sind Projekt-IDs, Standort und Zone.

Attribute sind veränderbare Felder, die für Anwendungen, Dienste und Arbeitslasten festgelegt werden können, um sie besser zu identifizieren und zu organisieren. Zu den unterstützten App Hub-Attributen gehören:

  • Das Attribut Inhaber enthält Kontaktdaten für eine Anwendung, einen Dienst oder eine Arbeitslast. Folgende Eigentümertypen werden unterstützt:
    • developer_owners: Entwicklungsteam, das für Entwicklung und Coding verantwortlich ist.
    • operator_owners: Betreiberteam, das die Laufzeit- und Betriebsintegrität gewährleistet.
    • business_owners: Geschäftsteam, das die Qualität sicherstellt und dafür sorgt, dass die Erwartungen der Nutzer erfüllt werden.
  • Die Wichtigkeit einer Anwendung, eines Dienstes oder einer Arbeitslast zeigt deren Bedeutung für das Unternehmen an. Folgende Werte werden unterstützt:

    • Geschäftskritisch
    • Hoch
    • Mittel
    • Niedrig
  • Die Umgebung einer Anwendung, eines Dienstes oder einer Arbeitslast ist die Phase eines Softwarelebenszyklus, z. B. Produktion, Staging oder Entwicklung. Folgende Werte werden unterstützt:

    • Produktion
    • Staging
    • Test
    • Entwicklung

API und gcloudReferenz

Weitere Informationen zu App Hub-Properties finden Sie in den folgenden Referenzen:

Nächste Schritte