Hostprojekt einrichten (Legacy)

In diesem Dokument wird beschrieben, wie Sie ein Hostprojekt in App Hub einrichten.

Das Hostprojekt ist ein altes Anwendungsmodell, das für bestehende App Hub-Nutzer unterstützt wird. Wir empfehlen, für neue Implementierungen Grenzen auf Ordner-Ebene festzulegen, indem Sie einen für Apps aktivierten Ordner einrichten. Grenzen auf Ordnerebene 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 Modellen für die Anwendungsverwaltung finden Sie unter Modell für die Anwendungsinstallation 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.

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.

Hinweise

Bevor Sie ein Google Cloud Projekt als Hostprojekt einrichten und Dienstprojekte daran anhängen, führen Sie die folgenden Schritte aus:

  1. 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.
  2. 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. Für Dienstprojekte 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.

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 Google Cloud -Projekt als Hostprojekt:

Console

  1. Wählen Sie in der Google Cloud Console mit der Projektauswahl das Projekt aus, das Sie als Hostprojekt konfigurieren möchten.

    Zur Begrüßungsseite

  2. 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 the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    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.

  2. Prüfen Sie, ob die neueste Version der Google Cloud CLI installiert ist:

    gcloud components update
    
  3. Suchen Sie die Projekt-ID des Google Cloud -Projekts, das Sie als Hostprojekt konfigurieren möchten.

  4. 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.

  5. 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, die die Dienste und Arbeitslasten enthalten, die Sie in App Hub-Anwendungen registrieren möchten, an das Hostprojekt an:

Console

  1. Wählen Sie in der Google Cloud Console mit der Projektauswahl das Hostprojekt aus.

    Zur Begrüßungsseite

  2. So rufen Sie die Seite Einstellungen in App Hub auf:

    Einstellungen aufrufen

  3. Klicken Sie auf Projekte anhängen.

  4. 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.
  5. Klicken Sie auf Auswählen.

    In der Tabelle Angehängte(s) Dienstprojekt(e) werden die ausgewählten Dienstprojekte angezeigt.

  6. Klicken Sie auf Schließen.

gcloud

  1. Suchen Sie die Projekt-ID für jedes der Google Cloud Projekte, die Sie als Dienstprojekte konfigurieren möchten.
  2. 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.
  3. 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"
}

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 den Dienstprojekten die entsprechenden App Hub-Rollen und -Berechtigungen zu:

Console

  1. Wählen Sie in der Google Cloud Console mit der Projektauswahl das Hostprojekt aus.

    Zur Begrüßungsseite

  2. Rufen Sie die Seite IAM auf:

    IAM aufrufen

  3. Klicken Sie auf Zugriffsrechte erteilen. Der Bereich Zugriff gewähren wird geöffnet.

  4. Geben Sie im Feld Neue Hauptkonten die E-Mail-Adresse des Hauptkontos ein, dem Sie Zugriff auf App Hub gewähren möchten.

  5. Klicken Sie auf Rolle auswählen und geben Sie App Hub in das Feld Filter ein.

  6. Wählen Sie die App Hub-IAM-Rolle aus, die Sie dem Hauptkonto zuweisen möchten, und klicken Sie auf Speichern.

  7. 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

  1. Suchen Sie die Projekt-ID der einzelnen Google Cloud Projekte, die Sie als Host- und Dienstprojekte konfiguriert haben.

  2. 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 Format username@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.
  3. 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-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 Scoping-Projekt für Zeitreihendaten und ermöglicht die Darstellung und Überwachung von Daten. Weitere Informationen und Konfigurationsanleitungen finden Sie unter Messwertbereich konfigurieren und Messwertbereich mithilfe der API konfigurieren.

Dienstprojekte entfernen

So trennen Sie ein Dienstprojekt von einem Hostprojekt:

Console

  1. Wählen Sie in der Google Cloud Console mit der Projektauswahl das Hostprojekt aus.

    Zur Begrüßungsseite

  2. So rufen Sie die Seite Einstellungen in App Hub auf:

    Einstellungen aufrufen

  3. Klicken Sie die Kästchen der Dienstprojekte an, die Sie aus dem Hostprojekt entfernen möchten.

  4. Klicken Sie auf Projekte trennen.

    Die Tabelle Angehängte Dienstprojekte wird aktualisiert und zeigt nur die Projekte an, die weiterhin an das Hostprojekt angehängt sind.

gcloud

  1. Suchen Sie die Projekt-ID der einzelnen Dienstprojekte, die Sie aus dem Hostprojekt entfernen möchten.
  2. 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.
  3. 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