Auf dieser Seite wird beschrieben, wie Sie ein Hostprojekt einrichten, um Dienste und Arbeitslasten als App Hub-Anwendungen zu gruppieren.
Hostprojekte sind ein unterstütztes Einrichtungsmodell für bestehende App Hub-Nutzer. Wir empfehlen jedoch, Ordner für Anwendungen zu verwenden, um App Hub für neue Implementierungen einzurichten. Für Anwendungen aktivierte Ordner bieten Zugriff auf alle anwendungsbezogenen Google Cloud-Funktionen wie Application Design Center und Gemini Cloud Assist. Einen Vergleich der wichtigsten Unterschiede zwischen den verfügbaren App Hub-Einrichtungsmodellen finden Sie unter App Hub-Einrichtungsmodell auswählen.
Host- und Dienstprojekte – Übersicht
Ein Hostprojekt ist ein Standardprojekt Google Cloud , das Sie zum Gruppieren von unterstützten Ressourcen als App Hub-Anwendungen festlegen. Sie hängen andere Projekte, sogenannte Dienstprojekte, manuell an dieses Hostprojekt an, damit App Hub Dienste und Arbeitslasten in diesen Projekten erkennen und registrieren kann.
Das Host- und Dienstprojektmodell in App Hub unterscheidet sich vom Modell, das von der freigegebenen VPC verwendet wird. Sie können ein Hostprojekt für freigegebene VPC und die zugehörigen Dienstprojekte nicht für App Hub verwenden. In App Hub werden Host- und Dienstprojekte zum logischen Gruppieren von Anwendungsressourcen verwendet, nicht zum Freigeben von VPC-Netzwerken.
Hinweise
Sie müssen die folgenden Schritte ausführen, bevor Sie Google Cloud -Projekte als Host- und Dienstprojekte für Ihre Anwendungen konfigurieren:
- Identifizieren Sie das Google Cloud -Projekt, das Sie als Hostprojekt verwenden möchten. Sie können ein vorhandenes Projekt verwenden oder ein neues Projekt erstellen.
Identifizieren Sie die Google Cloud Projekte, die Sie als Dienstprojekte an das Hostprojekt anhängen möchten. Sie müssen alle Projekte ermitteln, die die Dienste und Arbeitslasten enthalten, die Sie für App Hub-Anwendungen registrieren möchten. Ressourcen in anderen Projekten sind für App Hub nicht sichtbar. Berücksichtigen Sie die folgenden Aspekte für Dienstprojekte:
- Dienstprojekte müssen sich in derselben Organisation wie das Hostprojekt befinden.
- Ein Dienstprojekt kann jeweils nur an ein Hostprojekt angehängt werden.
- Ein Hostprojekt kann als Dienstprojekt für sich selbst fungieren, um seine eigenen Ressourcen zu verwalten. Sie können es jedoch nicht als Dienstprojekt an ein anderes Hostprojekt anhängen.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle App Hub Admin (roles/apphub.admin
) für das Hostprojekt und für jedes Dienstprojekt, das Sie anhängen möchten, zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Anhängen von Dienstprojekten an das Hostprojekt benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Hostprojekt einrichten
So konfigurieren Sie ein Projekt als Hostprojekt:
Console
Wählen Sie auf der Seite Willkommen der Google Cloud Console mit der Projektauswahl das Projekt aus, das Sie als Hostprojekt konfigurieren möchten.
-
Enable the required API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Prüfen Sie, ob die neueste Version der Google Cloud CLI installiert ist:
gcloud components update
Suchen Sie die Projekt-ID des Google Cloud -Projekts, das Sie als Hostprojekt konfigurieren möchten.
Legen Sie das Hostprojekt als Standardprojekt für Befehle fest:
gcloud config set project HOST_PROJECT_ID
Ersetzen Sie
HOST_PROJECT_ID
durch die ID des Projekts, das Sie als Hostprojekt konfigurieren möchten.Aktivieren Sie die App Hub API im Hostprojekt:
gcloud services enable apphub.googleapis.com \ --project=HOST_PROJECT_ID
Dienstprojekte anhängen
Hängen Sie die Dienstprojekte mit den Diensten und Arbeitslasten, die Sie als App Hub-Anwendungen gruppieren möchten, an das Hostprojekt an:
Console
Wählen Sie auf der Seite Willkommen der Google Cloud Console mit der Projektauswahl das Hostprojekt aus.
Rufen Sie die Seite Einstellungen im App Hub auf:
Klicken Sie auf Projekte anhängen.
Wählen Sie die Dienstprojekte aus, die an das Hostprojekt angehängt werden sollen, indem Sie eine der folgenden Methoden verwenden:
- Wählen Sie in der Projektliste die Kästchen für die Projekte aus, die Sie als Dienstprojekte anhängen möchten.
- Filtern Sie die Projektnamen und aktivieren Sie die entsprechenden Kästchen.
Klicken Sie auf Auswählen.
In der Tabelle Angehängte Dienstprojekte werden die ausgewählten Dienstprojekte angezeigt.
Klicken Sie auf Schließen.
gcloud
- Suchen Sie die Projekt-ID für jedes der Google Cloud Projekte, die Sie als Dienstprojekte konfigurieren möchten.
Hängen Sie jedes Dienstprojekt an:
gcloud apphub service-projects add SERVICE_PROJECT_ID \ --project=HOST_PROJECT_ID
Ersetzen Sie Folgendes:
SERVICE_PROJECT_ID
: die ID des anzuhängenden Dienstprojekts.HOST_PROJECT_ID
: die ID des Hostprojekts.
Wiederholen Sie den vorherigen Vorgang für jedes Dienstprojekt, das Sie an das Hostprojekt anhängen möchten.
Terraform
Wenn Sie ein Dienstprojekt mit Terraform an ein Hostprojekt anhängen möchten, verwenden Sie die Ressource google_apphub_service_project_attachment
, z. B.:
resource "google_apphub_service_project_attachment" "example" {
service_project_attachment_id = google_project.service_project.project_id
depends_on = [time_sleep.wait_120s]
}
resource "google_project" "service_project" {
project_id ="project-1"
name = "Service Project"
org_id = "123456789"
deletion_policy = "DELETE"
}
resource "time_sleep" "wait_120s" {
depends_on = [google_project.service_project]
create_duration = "120s"
}
Zum Trennen eines Dienstprojekts muss der Anhang entfernt werden. Weitere Informationen finden Sie unter Dienstprojekte entfernen.
App Hub-Rollen und ‑Berechtigungen zuweisen
So weisen Sie App Hub-Nutzern im Host- und Dienstprojekt die entsprechenden App Hub-Rollen und -Berechtigungen zu:
Console
Wählen Sie auf der Seite Willkommen der Google Cloud Console mit der Projektauswahl das Hostprojekt aus.
Rufen Sie die IAM-Seite auf.
Klicken Sie auf
Zugriffsrechte erteilen. Der Bereich Zugriff gewähren wird geöffnet.Geben Sie im Feld Neue Hauptkonten die E-Mail-Adresse des Hauptkontos ein, dem Sie Zugriff auf App Hub gewähren möchten.
Klicken Sie auf Rolle auswählen und geben Sie App Hub in das Feld Filter ein.
Wählen Sie die App Hub-IAM-Rolle aus, die Sie dem Hauptkonto zuweisen möchten, und klicken Sie auf Speichern.
Wiederholen Sie in jedem der App Hub-Dienstprojekte, die Sie an das Hostprojekt angehängt haben, den vorherigen Vorgang, um denselben Nutzern dieselben Rollen zuzuweisen.
gcloud
Suchen Sie die Projekt-ID der einzelnen Google Cloud Projekte, die Sie als Host- und Dienstprojekte konfiguriert haben.
Gewähren Sie Zugriff auf Hauptkonten im Hostprojekt:
gcloud projects add-iam-policy-binding HOST_PROJECT_ID \ --member='user:EMAIL_ADDRESS' \ --role='ROLE_NAME'
Ersetzen Sie Folgendes:
HOST_PROJECT_ID
: die ID des Hostprojekts.EMAIL_ADDRESS
: die E-Mail-Adresse des Hauptkontos, das im Hostprojekt Zugriff auf App Hub benötigt. Dieser Wert muss das Formatusername@yourdomain
haben, z. B.my.user@example.com
.ROLE_NAME
: Die App Hub-IAM-Rolle, die Sie dem Hauptkonto zuweisen möchten, z. B.roles/apphub.admin
.
Weisen Sie in jedem der App Hub-Dienstprojekte, die Sie an das Hostprojekt angehängt haben, denselben Nutzern dieselben Rollen zu:
gcloud projects add-iam-policy-binding SERVICE_PROJECT_ID \ --member='user:EMAIL_ADDRESS' \ --role='ROLE_NAME'
Ersetzen Sie
SERVICE_PROJECT_ID
durch die ID des Dienstprojekts, für das Sie Zugriff gewähren.
VPC Service Controls einrichten
Wenn Sie Ihre Anwendungen mit einem VPC Service Controls-Perimeter schützen möchten, fügen Sie dem Perimeter Ihr App Hub-Host- und Dienstprojekt hinzu, bevor Sie Ihre Anwendungen erstellen. Weitere Informationen finden Sie unter VPC Service Controls mit App Hub verwenden.
Sie können jetzt vorhandene Ressourcen für eine Anwendung registrieren.
Optional: Messwertbereich konfigurieren
Wenn Sie Systemmesswerte für Anwendungen in Ihrem Hostprojekt in Cloud Monitoring aufrufen möchten, fügen Sie die angehängten Dienstprojekte dem Messwertbereich des Hostprojekts hinzu. Das Hostprojekt dient als Scoping-Projekt für Zeitachsendaten und ermöglicht die Darstellung und Überwachung von Daten. Weitere Informationen und eine detaillierte Konfigurationsanleitung finden Sie unter Messwertbereich konfigurieren und Messwertbereich mit der API konfigurieren.
Dienstprojekte entfernen
Sie können Dienstprojekten Anhänge hinzufügen, damit verschiedene Dienste und Arbeitslasten in einer Anwendung gruppiert werden können. Sie können entweder weitere Dienstprojekte an das Hostprojekt anhängen oder die folgenden Schritte ausführen, um die Verknüpfung eines Dienstprojekts mit einem Hostprojekt aufzuheben:
Console
Wählen Sie auf der Seite Willkommen der Google Cloud Console mit der Projektauswahl das Hostprojekt aus.
Rufen Sie die Seite Einstellungen im App Hub auf:
Klicken Sie die Kästchen der Dienstprojekte an, die Sie aus dem Hostprojekt entfernen möchten.
Klicken Sie auf Projekte trennen.
Die Tabelle Angehängte Dienstprojekte wird aktualisiert und enthält nur noch die Projekte, die weiterhin an das Hostprojekt angehängt sind.
gcloud
- Suchen Sie die Projekt-ID der einzelnen Dienstprojekte, die Sie aus dem Hostprojekt entfernen möchten.
Entfernen Sie jedes Dienstprojekt:
gcloud apphub service-projects remove SERVICE_PROJECT_ID \ --project=HOST_PROJECT_ID
Ersetzen Sie Folgendes:
SERVICE_PROJECT_ID
: die ID des zu entfernenden Dienstprojekts.HOST_PROJECT_ID
: die ID des Hostprojekts.
Wiederholen Sie den vorherigen Vorgang für jedes Dienstprojekt, das Sie aus dem Hostprojekt entfernen möchten.
Wenn Sie ein Dienstprojekt aus einem Hostprojekt entfernen, sollten Sie es auch aus dem Messwertbereich des Hostprojekts entfernen, falls Sie den Messwertbereich zuvor konfiguriert haben. Weitere Informationen finden Sie unter Projekte aus einem Messwertbereich entfernen.
Nächste Schritte
- Vorhandene Ressourcen für eine Anwendung registrieren
- Anwendungsmonitoring einrichten
- IAM-Rollen und -Berechtigungen für App Hub
- App Hub – Übersicht