Wenn Sie Ihre vorhandenen Google Cloud Ressourcen als Dienste und Arbeitslasten in einer App Hub-Anwendung registrieren, können Sie die Verwaltung vereinfachen, indem Sie Ressourcen nach ihrem geschäftlichen Zweck organisieren. Dieser Ansatz bietet einheitliche Transparenz, einheitliches Monitoring, einheitliche Governance und einheitliche operative Kontrolle.
In diesem Leitfaden wird beschrieben, wie Sie vorhandene Google Cloud Ressourcen gruppieren, die noch nicht offiziell als Anwendung definiert sind.
Hinweise
Sie müssen die Ersteinrichtung für die Anwendungsverwaltung abschließen, bevor Sie Ressourcen in Anwendungen organisieren. Dieser Prozess umfasst in der Regel die folgenden Rollen und Schritte:
Für Administratoren:
- Wählen Sie Ihr Anwendungs-Setup-Modell aus. Sie müssen ein Verwaltungsprojekt konfigurieren und eine Grenze für die Anwendungsverwaltung definieren, die die Google Cloud Ressourcen enthält, die Sie organisieren möchten.
- Aktivieren Sie die erforderlichen APIs für alle Google Cloud Ressourcen, die Sie verwenden möchten.
- Nutzern Zugriff gewähren Weisen Sie basierend auf den Verantwortlichkeiten des Nutzers im Anwendungslebenszyklus die entsprechenden IAM-Rollen zu.
Für Entwickler und Betreiber:
- Fragen Sie Ihren Administrator, ob die Ersteinrichtung abgeschlossen ist.
- Prüfen Sie, ob Sie die erforderlichen IAM-Rollen für die Aufgaben haben, die Sie ausführen möchten.
- Öffnen Sie Ihr Verwaltungsprojekt in der Google Cloud Console oder suchen Sie die Projekt-ID des Verwaltungsprojekts für Terraform- oder Google Cloud CLI-Interaktionen.
Anwendung erstellen
Erstellen Sie in App Hub eine Anwendung, die als logischer Container für Ihre vorhandenen Google Cloud Ressourcen dient:
Console
- Wählen Sie in der Google Cloud -Console mit der Projektauswahl Ihr Verwaltungsprojekt aus.
Rufen Sie die Seite Anwendungen im App Hub auf:
Klicken Sie auf Anwendung erstellen.
Wählen Sie im Bereich Region und Name der Anwendung auswählen den besten Standort für Ihre Anwendung basierend auf Ihren Anforderungen an die geografische Verteilung aus:
- Wählen Sie Regional aus, um eine regionale Anwendung zu erstellen. Wählen Sie dann die spezifische Region für Ihre Anwendung basierend auf den von App Hub unterstützten Regionen aus.
- Wählen Sie Global aus, um eine globale Anwendung zu erstellen.
Weitere Informationen zum besten Standort für Ihre Anwendung finden Sie unter Globale und regionale Anwendungen.
Geben Sie den Anwendungsnamen ein und klicken Sie auf Weiter. Dieser Name ist eine eindeutige Kennung, die nur Kleinbuchstaben, Zahlen oder Bindestriche enthalten darf. Sie können diesen Namen nach dem Erstellen der Anwendung nicht mehr ändern.
Optional: Definieren Sie die Attribute der obersten Ebene der Anwendung, um die Auffindbarkeit und Governance zu unterstützen:
- Geben Sie im Bereich Attribute hinzufügen den Anzeigenamen ein. Der Anzeigename ist keine eindeutige Kennung und kann nach dem Erstellen der Anwendung geändert werden.
- Wählen Sie in der Liste Schweregrad einen Wert aus, um die Wichtigkeit der Anwendung anzugeben.
- Wählen Sie in der Liste Umgebung einen Wert aus, um die Phase des Softwarelebenszyklus anzugeben.
- Fügen Sie Kontaktdaten für Inhaber hinzu, einschließlich Anzeigename und E-Mail-Adresse. E-Mail-Adressen müssen das Format
username@yourdomainhaben, z. B.jane-doe@gmail.com.
Klicken Sie auf Erstellen.
gcloud
So erstellen Sie eine Anwendung über Ihr Terminal oder Cloud Shell mit der Google Cloud CLI:
gcloud apphub applications create APPLICATION_NAME \ --project=PROJECT_ID \ --scope-type=LOCATION \ --location=REGION \ --display-name=DISPLAY_NAME \ --criticality-type=CRITICALITY \ --environment-type=ENVIRONMENT \ --developer-owners=display-name=DEV_NAME,email=DEV_EMAIL \ --operator-owners=display-name=OPERATOR_NAME,email=OPERATOR_EMAIL \ --business-owners=display-name=BUSINESS_NAME,email=BUSINESS_EMAILErsetzen Sie
APPLICATION_NAMEdurch den Namen der Anwendung. Dieser Name ist eine eindeutige Kennung, die nur Kleinbuchstaben, Zahlen oder Bindestriche enthalten darf.Verwenden Sie optionale Flags wie
--criticality-type, um die Attribute der obersten Ebene der Anwendung zu definieren und die Auffindbarkeit und Governance zu unterstützen.Ersetzen Sie für erforderliche und optionale Flags Folgendes:
- Erforderlich:
PROJECT_ID: die ID des Verwaltungsprojekts. Erforderlich:
LOCATION: Der Standort für Ihre Anwendung basierend auf Ihren Anforderungen an die geografische Verteilung. Verwenden Sie einen der folgenden Werte:REGIONALfür regionale Anwendungen.GLOBALfür globale Anwendungen.
Weitere Informationen zum besten Standort für Ihre Anwendung finden Sie unter Globale und regionale Anwendungen.
Erforderlich:
REGION: die spezifische Region für Ihre Anwendung. Verwenden Sie einen der folgenden Werte:- Wenn der
--scope-type-Standort für Ihre Anwendung aufREGIONALfestgelegt ist, geben Sie einen von App Hub unterstützten Regionsnamen an. - Wenn der
--scope-type-Standort für Ihre Anwendung aufGLOBALfestgelegt ist, verwenden Sieglobal.
- Wenn der
Optional:
DISPLAY_NAME: Der Anzeigename Ihrer Anwendung. Der Anzeigename ist keine eindeutige Kennung und kann nach dem Erstellen der Anwendung geändert werden.Optional:
CRITICALITY: Der Wichtigkeitsgrad der Anwendung für Ihre Abläufe. Verwende einen der folgenden Werte:MISSION_CRITICALHIGHMEDIUMLOW
Optional:
ENVIRONMENT: die Phase des Softwarelebenszyklus. Verwenden Sie einen der folgenden Werte:PRODUCTIONSTAGINGDEVELOPMENTTEST
Optional:
DEV_NAMEundDEV_EMAIL: der Anzeigename bzw. die E-Mail-Adresse des Entwicklerinhabers.Optional:
OPERATOR_NAMEundOPERATOR_EMAIL: der Anzeigename bzw. die E-Mail-Adresse des Betreiberinhabers.Optional:
BUSINESS_NAMEundBUSINESS_EMAIL: der Anzeigename bzw. die E-Mail-Adresse des Geschäftsinhabers.
- Erforderlich:
So listen Sie die Anwendungen in Ihrem Projekt auf:
gcloud apphub applications list \ --project=PROJECT_ID \ --location=REGIONDie Ausgabe sollte in etwa so aussehen:
ID DISPLAY_NAME CREATE_TIME APPLICATION_NAME DISPLAY_NAME 2023-10-31T18:33:48
Terraform
Verwenden Sie zum Erstellen einer Anwendung mit Terraform die Ressource google_apphub_application.
Mit dieser Ressource können Sie die Attribute der Anwendung definieren, z. B. Name, Standort und Attribute.
Im folgenden Beispiel wird eine regionale Anwendung in us-central1 mit definierten Attributen für Kritikalität, Umgebung und Inhaber erstellt:
resource "google_apphub_application" "example" {
project = "my-project-id"
location = "us-central1"
application_id = "my-application"
display_name = "My Application"
description = "This application represents our platform."
scope {
type = "REGIONAL"
}
attributes {
criticality {
type = "MISSION_CRITICAL"
}
environment {
type = "PRODUCTION"
}
business_owners {
display_name = "Alice"
email = "alice@example.com"
}
developer_owners {
display_name = "Bob"
email = "bob@example.com"
}
operator_owners {
display_name = "Charlie"
email = "charlie@example.com"
}
}
}
Dienste und Arbeitslasten registrieren
In App Hub können Sie unterstützte Ressourcen auswählen, die sich innerhalb der Verwaltungsgrenze Ihrer Anwendung befinden, um sie als Dienste und Arbeitslasten zu registrieren. Nachdem Sie eine Anwendung erstellt haben, registrieren Sie Ihre vorhandenenGoogle Cloud -Ressourcen als Dienste und Arbeitslasten darin.
Sie können exklusive Dienste nur für eine Anwendung registrieren. Gemeinsam genutzte Dienste können jedoch für mehrere Anwendungen registriert werden. App Hub erkennt freigegebene Dienste, wenn Sie sie für eine Anwendung registrieren, auch wenn sie bereits für eine andere Anwendung registriert sind. Möglicherweise können Sie ihre Attribute jedoch nicht ändern.
Console
- Wählen Sie in der Google Cloud -Console mit der Projektauswahl Ihr Verwaltungsprojekt aus.
Rufen Sie die Seite Anwendungen im App Hub auf:
Klicken Sie auf den Namen der Anwendung, für die Sie vorhandene Google Cloud Ressourcen als Dienste und Arbeitslasten registrieren möchten.
Wählen Sie auf der Detailseite der Anwendung den Tab Dienste und Arbeitslasten aus. Auf diesem Tab wird die Liste der vorhandenen Ressourcen angezeigt, die Sie für die Anwendung registrieren können. In App Hub können Sie unterstützte Ressourcen, die sich innerhalb Ihres Anwendungsverwaltungsbereichs befinden, als Dienste oder Arbeitslasten auswählen.
Gehen Sie für jeden Dienst oder jede Arbeitslast, die Sie registrieren möchten, so vor:
- Klicken Sie auf dem Tab Dienste und Arbeitslasten auf Dienst/Arbeitslast registrieren.
- Rufen Sie den Bereich Ressource auswählen auf und klicken Sie auf Durchsuchen, um den Dienst oder die Arbeitslast zu finden, die Sie registrieren möchten.
- Wählen Sie den Dienst oder die Arbeitslast aus und klicken Sie auf Auswählen.
- Geben Sie im Bereich Ressource auswählen einen Namen für den Dienst oder die Arbeitslast ein und klicken Sie auf Weiter.
Optional: Definieren Sie im Bereich Attribute hinzufügen die Attribute der obersten Ebene der Ressource, um die Auffindbarkeit und Governance zu unterstützen.
Klicken Sie auf Weiter.
Optional: Fügen Sie im Abschnitt Inhaber hinzufügen weitere Details zu den Inhabern des Dienstes oder der Arbeitslast hinzu.
Klicken Sie auf Registrieren.
Auf dem Tab Dienste und Arbeitslasten wird der registrierte Dienst oder die registrierte Arbeitslast angezeigt.
gcloud
In App Hub können Sie unterstützte Ressourcen innerhalb der Grenzen der Anwendungsverwaltung als Dienste oder Arbeitslasten auswählen. Verwenden Sie die Google Cloud CLI, um Dienste oder Arbeitslasten aufzulisten, die Sie über Ihr Terminal oder Cloud Shell in der Anwendung registrieren können. Die Befehle für Dienste und Arbeitslasten unterscheiden sich geringfügig:
Registrierungsdienste
So listen Sie die verfügbaren Dienste auf, die Sie für eine Anwendung registrieren können:
gcloud apphub discovered-services list \ --project=PROJECT_ID \ --location=REGION \ --filter=FILTER_EXPRESSIONErsetzen Sie für erforderliche und optionale Flags Folgendes:
- Erforderlich:
PROJECT_ID: die ID des Verwaltungsprojekts. Erforderlich:
REGION: die spezifische Region Ihres Dienstes basierend auf Ihrer geografischen Verteilung. Verwenden Sie einen der folgenden Werte:- Wenn der Dienst regional ist, geben Sie den von App Hub unterstützten Regionsnamen an.
- Wenn der Dienst global ist, verwenden Sie
global.
Optional:
FILTER_EXPRESSION: Der Filterausdruck für das--filter-Flag, um nur Dienste aus einem bestimmten Projekt innerhalb der Verwaltungsgrenze der Anwendung oder mit einer bestimmten Eigenschaft anzuzeigen, z. B.:service_properties.gcp_project=projects/PROJECT_IDservice_properties.gcp_project=projects/PROJECT_ID AND service_reference.uri~"forwardingRules"
Die Ausgabe sieht etwa so aus wie im folgenden Beispiel.
ID SERVICE_REFERENCE SERVICE_PROPERTIES SERVICE_ID {'uri': '//compute.googleapis.com/projects/PROJECT_NUMBER/regions/REGION/forwardingRules/forwarding-rule'} {'gcpProject': 'projects/PROJECT_ID', 'location': 'REGION'}- Erforderlich:
Kopieren Sie die Dienst-ID
SERVICE_IDaus der Ausgabe.Registrieren Sie den Dienst für Ihre Anwendung:
gcloud apphub applications services create SERVICE_NAME \ --project=PROJECT_ID \ --location=REGION \ --application=APPLICATION_NAME \ --discovered-service=projects/PROJECT_ID/locations/REGION/discoveredServices/SERVICE_ID \ --display-name=SERVICE_DISPLAY_NAME \ --criticality-type=CRITICALITY \ --environment-type=ENVIRONMENT \ --developer-owners=display-name=DEV_NAME,email=DEV_EMAIL \ --operator-owners=display-name=OPERATOR_NAME,email=OPERATOR_EMAIL \ --business-owners=display-name=BUSINESS_NAME,email=BUSINESS_EMAILErsetzen Sie
SERVICE_NAMEdurch den Namen, den Sie für die Registrierung des Dienstes in der Anwendung verwenden möchten.Mit optionalen Flags wie
--criticality-typekönnen Sie die Attribute der obersten Ebene des Dienstes definieren und die Auffindbarkeit und Governance unterstützen.Ersetzen Sie für erforderliche und optionale Flags Folgendes:
- Erforderlich:
PROJECT_ID: die ID des Verwaltungsprojekts. Erforderlich:
REGION: die spezifische Region Ihres Dienstes basierend auf Ihrer geografischen Verteilung. Verwenden Sie einen der folgenden Werte:- Wenn der Dienst regional ist, geben Sie den von App Hub unterstützten Regionsnamen an.
- Wenn der Dienst global ist, verwenden Sie
global.
Erforderlich:
APPLICATION_NAME: der Name der Anwendung, für die Sie den Dienst registrieren möchten.Erforderlich:
SERVICE_ID: die Dienst-ID, die Sie aus der vorherigen Ausgabe kopiert haben.Optional:
SERVICE_DISPLAY_NAME: der Anzeigename Ihres Dienstes.Optional:
CRITICALITY: die Wichtigkeit des Dienstes für Ihre Abläufe. Verwenden Sie einen der folgenden Werte:MISSION_CRITICALHIGHMEDIUMLOW
Optional:
ENVIRONMENT: die Phase des Softwarelebenszyklus. Verwenden Sie einen der folgenden Werte:PRODUCTIONSTAGINGDEVELOPMENTTEST
Optional:
DEV_NAMEundDEV_EMAIL: der Anzeigename bzw. die E-Mail-Adresse des Entwicklerinhabers.Optional:
OPERATOR_NAMEundOPERATOR_EMAIL: der Anzeigename bzw. die E-Mail-Adresse des Betreiberinhabers.Optional:
BUSINESS_NAMEundBUSINESS_EMAIL: der Anzeigename bzw. die E-Mail-Adresse des Geschäftsinhabers.
- Erforderlich:
Registrierte Dienste in Ihrer Anwendung auflisten:
gcloud apphub applications services list \ --application=APPLICATION_NAME --project=PROJECT_ID \ --location=REGIONSie müssen für jeden registrierten Dienst eine ähnliche Ausgabe wie die folgende erhalten:
ID DISPLAY_NAME SERVICE_REFERENCE CREATE_TIME SERVICE_NAME SERVICE_DISPLAY_NAME {'uri': '//compute.googleapis.com/projects/PROJECT_NUMBER/regions/REGION/forwardingRules/forwarding-rule'} 2023-11-01T21:38:08
Arbeitslasten registrieren
Rufen Sie eine Liste der verfügbaren Arbeitslasten auf, die Sie für eine Anwendung registrieren können:
gcloud apphub discovered-workloads list \ --project=PROJECT_ID \ --location=REGION \ --filter=FILTER_EXPRESSIONErsetzen Sie für erforderliche und optionale Flags Folgendes:
- Erforderlich:
PROJECT_ID: die ID des Verwaltungsprojekts. Erforderlich:
REGION: die spezifische Region Ihrer Arbeitslast basierend auf Ihrer geografischen Verteilung. Verwenden Sie einen der folgenden Werte:- Wenn die Arbeitslast regional ist, geben Sie den Namen der von App Hub unterstützten Region an.
- Wenn die Arbeitslast global ist, verwenden Sie
global.
Optional:
FILTER_EXPRESSION: Der Filterausdruck für das--filter-Flag, um nur Arbeitslasten aus einem bestimmten Projekt innerhalb der Anwendungsverwaltungsbegrenzung oder mit einer bestimmten Eigenschaft anzuzeigen, z. B.workload_properties.gcp_project=projects/PROJECT_ID.
Die Ausgabe sieht etwa so aus wie im folgenden Beispiel.
ID WORKLOAD_REFERENCE WORKLOAD_PROPERTIES WORKLOAD_ID {'uri': '//compute.googleapis.com/projects/PROJECT_NUMBER/regions/REGION/instanceGroups/mig-name'} {'gcpProject': 'projects/PROJECT_ID', 'location': 'REGION'}- Erforderlich:
Kopieren Sie die Workload-ID
WORKLOAD_IDaus der Ausgabe.Registrieren Sie die Arbeitslast für Ihre Anwendung:
gcloud apphub applications workloads create WORKLOAD_NAME \ --project=PROJECT_ID \ --location=REGION \ --application=APPLICATION_NAME \ --discovered-workload=projects/PROJECT_ID/locations/REGION/discoveredWorkloads/WORKLOAD_ID \ --display-name=WORKLOAD_DISPLAY_NAME \ --criticality-type=CRITICALITY \ --environment-type=ENVIRONMENT \ --developer-owners=display-name=DEV_NAME,email=DEV_EMAIL \ --operator-owners=display-name=OPERATOR_NAME,email=OPERATOR_EMAIL \ --business-owners=display-name=BUSINESS_NAME,email=BUSINESS_EMAILErsetzen Sie
WORKLOAD_NAMEdurch den Namen, den Sie für die Registrierung des Arbeitsbereichs für die Anwendung verwenden möchten.Verwenden Sie optionale Flags wie
--criticality-type, um die Attribute der obersten Ebene des Workloads zu definieren und die Auffindbarkeit und Governance zu unterstützen.Ersetzen Sie für erforderliche und optionale Flags Folgendes:
- Erforderlich:
PROJECT_ID: die ID des Verwaltungsprojekts. Erforderlich:
REGION: die spezifische Region Ihrer Arbeitslast basierend auf Ihrer geografischen Verteilung. Verwenden Sie einen der folgenden Werte:- Wenn die Arbeitslast regional ist, geben Sie den von App Hub unterstützten Regionsnamen an.
- Wenn die Arbeitslast global ist, verwenden Sie
global.
Erforderlich:
APPLICATION_NAME: der Name der Anwendung, für die Sie die Arbeitslast registrieren möchten.Erforderlich:
WORKLOAD_ID: die Arbeitslast-ID, die Sie aus der vorherigen Ausgabe kopiert haben.Optional:
WORKLOAD_DISPLAY_NAME: der Anzeigename Ihrer Arbeitslast.Optional:
CRITICALITY: die Wichtigkeit der Arbeitslast für Ihre Abläufe. Verwenden Sie einen der folgenden Werte:MISSION_CRITICALHIGHMEDIUMLOW
Optional:
ENVIRONMENT: die Phase des Softwarelebenszyklus. Verwenden Sie einen der folgenden Werte:PRODUCTIONSTAGINGDEVELOPMENTTEST
Optional:
DEV_NAMEundDEV_EMAIL: der Anzeigename bzw. die E-Mail-Adresse des Entwicklerinhabers.Optional:
OPERATOR_NAMEundOPERATOR_EMAIL: der Anzeigename bzw. die E-Mail-Adresse des Betreiberinhabers.Optional:
BUSINESS_NAMEundBUSINESS_EMAIL: der Anzeigename bzw. die E-Mail-Adresse des Geschäftsinhabers.
- Erforderlich:
So listen Sie die registrierten Arbeitslasten in Ihrer Anwendung auf:
gcloud apphub applications workloads list \ --application=APPLICATION_NAME --project=PROJECT_ID \ --location=REGIONSie müssen für jede registrierte Arbeitslast eine ähnliche Ausgabe wie die folgende erhalten:
ID DISPLAY_NAME WORKLOAD_REFERENCE CREATE_TIME WORKLOAD_NAME WORKLOAD_DISPLAY_NAME {'uri': '//compute.googleapis.com/projects/PROJECT_NUMBER/regions/REGION/instanceGroups/mig-name'} 2023-11-01T21:38:08
Terraform
Wenn Sie Terraform verwenden möchten, um Google Cloud Ressourcen innerhalb Ihres Anwendungsverwaltungsbereichs als Dienste oder Arbeitslasten in einer Anwendung zu registrieren, verwenden Sie die Datenquellen google_apphub_discovered_service und google_apphub_discovered_workload, um Informationen zu den Ressourcen, die Sie registrieren möchten, dynamisch abzurufen.
Verwenden Sie dann die Ressourcen google_apphub_service oder google_apphub_workload, um Dienste bzw. Arbeitslasten zu registrieren.
Registrierungsdienste
Informationen zu einem Dienst anhand seines URI abrufen:
data "google_apphub_discovered_service" "my-service" { location = "REGION" service_uri = "SERVICE_URI" }Registrieren Sie den erkannten Dienst in Ihrer Anwendung, z. B.:
resource "google_apphub_service" "example" { project = "my-project-id" location = "us-central1" application_id = google_apphub_application.example.application_id service_id = "frontend-load-balancer" discovered_service = data.google_apphub_discovered_service.my-forwarding-rule.name display_name = "Frontend Load Balancer" description = "The primary load balancer for the frontend." }
Arbeitslasten registrieren
Informationen zu einer Arbeitslast anhand ihres URI abrufen:
data "google_apphub_discovered_workload" "my-workload" { location = "REGION" workload_uri = "WORKLOAD_URI" }Registrieren Sie die erkannte Arbeitslast für Ihre Anwendung. Beispiel:
resource "google_apphub_workload" "example" { project = "my-project-id" location = "us-central1" application_id = google_apphub_application.example.application_id workload_id = "frontend-instance-group" discovered_workload = data.google_apphub_discovered_workload.my-mig.name display_name = "Frontend Instance Group" description = "The managed instance group for the frontend." }
Der Registrierungsstatus von Diensten und Arbeitslasten, die für eine Anwendung registriert sind, kann sich in getrennt ändern, wenn Sie ein Projekt oder einen Ordner aus dem Anwendungsverwaltungsbereich verschieben oder die zugrunde liegende Ressource löschen. Abgetrennte Dienste und Arbeitslasten verbleiben in der Anwendung, bis Sie die Registrierung aufheben. App Hub kann sie dann aber nicht mehr verwalten oder überwachen. Weitere Informationen finden Sie unter Registrierungsstatus von Diensten und Arbeitslasten.
Wenn Sie Dienste oder Arbeitslasten wieder an eine Anwendung anhängen möchten, müssen Sie sie noch einmal registrieren.
Berechtigungen erteilen und Vorgänge starten
Nachdem Sie eine Anwendung erstellt und Dienste und Arbeitslasten in App Hub registriert haben, müssen Sie den Nutzerzugriff basierend auf den Verantwortlichkeiten für den Lebenszyklus gewähren, um diese logische Gruppierung als eine Einheit zu verwalten:
- Je nach Ihren Anforderungen können Sie Berechtigungen für einzelne oder alle Anwendungen erteilen. Eine Liste der empfohlenen Rollen finden Sie unter Nutzern anwendungsbezogene Rollen zuweisen.
- Optional können Sie zu Cloud Hub wechseln, um ein einheitliches Betriebs-Dashboard für Ihre definierte Anwendung aufzurufen, das Daten zu Zustand, Leistung und Kosten enthält.