In diesem Dokument wird beschrieben, wie Sie ein Hostprojekt in App Hub einrichten und eine Grenze für mehrere Projekte erstellen.
Das Hostprojekt ist ein altes Anwendungsmodell, das für bestehende App Hub-Nutzer unterstützt wird. Wir empfehlen, für neue Implementierungen Grenzen auf Ordnerebene zu definieren, indem Sie einen für die Verwaltung von Anwendungen konfigurierten Ordner einrichten. Grenzen auf Ordnerebene bieten Zugriff auf alle anwendungsorientierten Google Cloud-Funktionen wie Application Design Center und Gemini Cloud Assist. Einen Vergleich der wichtigsten Unterschiede zwischen den verfügbaren Modellen für die Anwendungsverwaltung finden Sie unter Modell für die Einrichtung von Anwendungen auswählen.
Host- und Dienstprojekte – Übersicht
Ein Hostprojekt ist ein Google Cloud-Projekt, an das Sie andere Projekte anhängen, die die Dienste und Arbeitslasten enthalten, die Sie als App Hub-Anwendungen gruppieren möchten. Die Projekte, die Sie an das Hostprojekt anhängen, werden als Dienstprojekte bezeichnet. Durch das Anhängen des Hostprojekts und der Dienstprojekte wird eine Grenze für mehrere Projekte definiert.
Ein Hostprojekt kann seine eigenen Ressourcen direkt verwalten, indem es sich selbst anhängt. Für die Einrichtung eines einzelnen Projekts empfehlen wir jedoch, den Ansatz für ein einzelnes Projekt zu verwenden.
Hinweis
Bevor Sie ein Google Cloud Projekt als Hostprojekt einrichten und Dienstprojekte daran anhängen, führen Sie die folgenden Schritte aus:
- 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 angeben, 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. Für Serviceprojekte gelten die folgenden Anforderungen:
- 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.
- Wählen Sie ein Hostprojekt und Dienstprojekte aus, die keine untergeordneten Elemente von Ordnern sind, die Sie für die Anwendungsverwaltung konfiguriert haben. Durch diese Trennung wird sichergestellt, dass alle Ressourcen in einem Ordner mit demselben Einrichtungstyp verwaltet werden.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle App Hub-Administrator (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 Google Cloud -Projekt als Hostprojekt:
Console
Wählen Sie in der Google Cloud Console mit der Projektauswahl Ihr Projekt aus.
So rufen Sie die Seite Übersicht über App Hub auf:
Klicken Sie auf App Hub einrichten.
Wählen Sie auf der Seite App Hub aktivieren die Option Vollständige Einrichtung aus, um eine Grenze für mehrere Projekte zu erstellen.
Notieren Sie sich den Projektnamen und die Projekt-ID. Diese Informationen identifizieren das Hostprojekt. Sie verwenden diese Werte, um Zugriff zu gewähren.
Sehen Sie sich die Liste der APIs an, die aktiviert werden. Für einige APIs fallen möglicherweise Gebühren an. Weitere Informationen zu den Kosten von APIs Sie können auch auf die einzelnen APIs klicken, um die zugehörigen Kosten zu sehen.
Klicken Sie auf Weiter.
Prüfen Sie auf dem Tab Grenze definieren Ihre Projektinformationen.
Klicken Sie auf Projekt hinzufügen, um Dienstprojekte Ihrem Perimeter hinzuzufügen oder dies später zu tun.
Klicken Sie auf Weiter.
Wählen Sie auf dem Tab Zugriff gewähren die entsprechenden IAM-Rollen und -Berechtigungen für Administratoren im Projekt aus. Eine Liste der empfohlenen anwendungsbezogenen Rollen fürGoogle Cloud -Produkte finden Sie unter Nutzern anwendungsbezogene Rollen zuweisen.
Geben Sie im Feld Neue Hauptkonten die Nutzer, Gruppen oder Dienstkonten ein, die Administratorzugriff auf anwendungsbezogene Aufgaben im Projekt haben sollen.
Klicken Sie auf Rollen zuweisen und dann auf Fertigstellen.
Später können Sie Ihren Hauptkonten auf der Seite IAM zusätzliche IAM-Rollen zuweisen. Weitere Informationen finden Sie unter IAM-Rolle über die Google Cloud Console zuweisen.
gcloud
-
Aktivieren Sie Cloud Shell in der Google Cloud Console.
Unten in der Google Cloud Console wird eine Cloud Shell-Sitzung gestartet und eine Eingabeaufforderung angezeigt. Cloud Shell ist eine Shell-Umgebung, in der das Google Cloud CLI bereits installiert ist und Werte für Ihr aktuelles Projekt bereits festgelegt sind. Das Initialisieren der Sitzung kann einige Sekunden dauern.
Prüfen Sie, ob die neueste Version der Google Cloud CLI installiert ist:
gcloud components updateSuchen 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_IDErsetzen Sie
HOST_PROJECT_IDdurch 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 hinzufügen
Fügen Sie Ihrer Anwendungsverwaltungsgrenze Dienstprojekte hinzu, indem Sie sie an das Hostprojekt anhängen.
So hängen Sie Dienstprojekte an das Hostprojekt an und erstellen eine Projektgrenze für mehrere Projekte:
Console
Wählen Sie in der Google Cloud Console mit der Projektauswahl das Hostprojekt aus.
So rufen Sie die Seite Boundary settings (Grenzeinstellungen) über App Hub auf:
Klicken Sie auf Projekt hinzufügen.
Wählen Sie die Dienstprojekte aus, die Sie an das Hostprojekt anhängen und auf eine der folgenden Arten zu Ihrer Grenze hinzufügen möchten:
- 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 setzen Sie ein Häkchen in die entsprechenden Kästchen.
Klicken Sie auf Auswählen.
In der Tabelle Projekte in Ihrer Grenze werden die ausgewählten Dienstprojekte angezeigt. Das Anhängen kann einige Zeit dauern.
Prüfen Sie, ob die Liste der Dienstprojekte vollständig ist.
gcloud
- Suchen Sie die Projekt-ID der einzelnen 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_IDErsetzen 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 google_apphub_service_project_attachment-Ressource, 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"
}
Informationen zum Trennen eines Dienstprojekts von einem Hostprojekt finden Sie unter Dienstprojekte entfernen.
App Hub-Rollen und ‑Berechtigungen zuweisen
So weisen Sie App Hub-Nutzern im Hostprojekt und in Dienstprojekten die entsprechenden App Hub-Rollen und -Berechtigungen zu:
Console
Wählen Sie in der Google Cloud Console mit der Projektauswahl das Hostprojekt aus.
Rufen Sie die Seite IAM 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 im Feld Filter den Wert App Hub ein.
Wählen Sie die App Hub-IAM-Rolle aus, die Sie dem Hauptkonto zuweisen möchten, und klicken Sie auf Speichern.
Wiederholen Sie den vorherigen Vorgang in jedem der App Hub-Dienstprojekte, die Sie an das Hostprojekt angehängt haben, 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 Hauptkonten im Hostprojekt Zugriff:
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@yourdomainhaben, 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_IDdurch 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-Hostprojekt und Ihre Dienstprojekte hinzu, bevor Sie Ihre Anwendungen erstellen. Weitere Informationen finden Sie unter VPC Service Controls mit App Hub verwenden.
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 Projekt zur Festlegung des Bereichs für Zeitachsendaten und ermöglicht die Darstellung und Überwachung von Daten. Weitere Informationen und Konfigurationsanleitungen finden Sie unter Messwertbereich konfigurieren und Messwertbereich mit der API konfigurieren.
Dienstprojekte entfernen
Entfernen Sie Dienstprojekte aus Ihrer Begrenzung für die Anwendungsverwaltung, indem Sie sie vom Hostprojekt trennen.
So trennen Sie ein Dienstprojekt von einem Hostprojekt:
Console
Wählen Sie in der Google Cloud Console mit der Projektauswahl das Hostprojekt aus.
So rufen Sie die Seite Boundary settings (Grenzeinstellungen) über App Hub auf:
Klicken Sie die Kästchen der Dienstprojekte an, die Sie vom Hostprojekt trennen und aus Ihrem Perimeter entfernen möchten.
Klicken Sie auf Projekte trennen.
Die Tabelle Projekte in Ihrem Perimeter wird aktualisiert und enthält nur noch die Projekte, die weiterhin mit dem Hostprojekt verknüpft sind.
Prüfen Sie, ob die Liste der Dienstprojekte aktualisiert wurde.
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_IDErsetzen 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 bei einer Anwendung registrieren
- Anwendungsmonitoring einrichten
- IAM-Rollen und -Berechtigungen für App Hub
- App Hub – Übersicht