Wenn Sie Ihre vorhandenen Dienste und Arbeitslasten in einer Anwendung registrieren, können Sie die Verwaltung vereinfachen, indem Sie Ressourcen nach ihrem geschäftlichen Zweck organisieren. Dieser Ansatz bietet einheitliche Transparenz, Überwachung, Governance und operative Kontrolle.
In dieser Anleitung erfahren Sie, wie Sie vorhandene Dienste und Arbeitslasten, die inGoogle Cloud ausgeführt werden und noch nicht offiziell als Anwendung definiert sind, gruppieren.
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:
- Anwendungsverwaltung einrichten Konfigurieren Sie einen für die Verwaltung von Anwendungen aktivierten Ordner oder ein Hostprojekt als administrative Grenze für Ihre Anwendungen.
- Erforderliche APIs aktivieren. Aktivieren Sie APIs für alle 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 je nach Einrichtungsmodell den für die App aktivierten Ordner oder das Hostprojekt.
Anwendung erstellen
Erstellen Sie in App Hub eine Anwendung, die als logischer Container für Ihre vorhandenen Dienste und Arbeitslasten dient:
Console
- Wählen Sie in der Google Cloud Console mit der Projektauswahl Ihr Hostprojekt oder das Verwaltungsprojekt des app-fähigen Ordners aus, je nach Einrichtungsmodell.
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.
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.
- 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@yourdomain
haben, 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_EMAIL
Ersetzen Sie
APPLICATION_NAME
durch den Namen der Anwendung. Der Name darf nur kleingeschriebene alphanumerische Zeichen ohne Leerzeichen enthalten.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 Hostprojekts oder Verwaltungsprojekts, je nach Einrichtungsmodell. Erforderlich:
LOCATION
: Der Standort für Ihre Anwendung basierend auf Ihren Anforderungen an die geografische Verteilung. Verwenden Sie einen der folgenden Werte:REGIONAL
für regionale Anwendungen.GLOBAL
fü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 aufREGIONAL
festgelegt ist, geben Sie einen von App Hub unterstützten Regionsnamen an. - Wenn der
--scope-type
-Standort für Ihre Anwendung aufGLOBAL
festgelegt ist, verwenden Sieglobal
.
- Wenn der
Optional:
DISPLAY_NAME
: Der Anzeigename Ihrer Anwendung.Optional:
CRITICALITY
: der Wichtigkeitsgrad der Anwendung für Ihre Abläufe. Verwende einen der folgenden Werte:MISSION_CRITICAL
HIGH
MEDIUM
LOW
Optional:
ENVIRONMENT
: die Phase des Softwarelebenszyklus. Verwenden Sie einen der folgenden Werte:PRODUCTION
STAGING
DEVELOPMENT
TEST
Optional:
DEV_NAME
undDEV_EMAIL
: der Anzeigename bzw. die E-Mail-Adresse des Entwicklerinhabers.Optional:
OPERATOR_NAME
undOPERATOR_EMAIL
: der Anzeigename bzw. die E-Mail-Adresse des Betreiberinhabers.Optional:
BUSINESS_NAME
undBUSINESS_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=REGION
Die 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
Nachdem Sie eine Anwendung erstellt haben, registrieren Sie Ihre vorhandenen Dienste und Arbeitslasten dafür:
Console
- Wählen Sie in der Google Cloud Console mit der Projektauswahl Ihr Hostprojekt oder das Verwaltungsprojekt des app-fähigen Ordners aus, je nach Einrichtungsmodell.
Rufen Sie die Seite Anwendungen im App Hub auf:
Klicken Sie auf den Namen der Anwendung, für die Sie vorhandene Dienste und Arbeitslasten registrieren möchten.
Wählen Sie auf der Detailseite der Anwendung den Tab Services and workloads (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 in Ihrer Ressourcenhierarchie als Dienste und 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 in Ihrer Ressourcenhierarchie als Dienste und 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
Listen Sie die verfügbaren services auf, die Sie für eine Anwendung registrieren können:
gcloud apphub discovered-services list \ --project=PROJECT_ID \ --location=REGION \ --filter=FILTER_EXPRESSION
Ersetzen Sie für erforderliche und optionale Flags Folgendes:
- Erforderlich:
PROJECT_ID
: die ID des Hostprojekts oder Verwaltungsprojekts, je nach Einrichtungsmodell. 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 oder mit einer bestimmten Eigenschaft anzuzeigen, z. B.:service_properties.gcp_project=projects/PROJECT_ID
service_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_ID
aus 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_EMAIL
Ersetzen Sie
SERVICE_NAME
durch den Namen, den Sie für die Registrierung des Dienstes in der Anwendung verwenden möchten.Verwenden Sie optionale Flags wie
--criticality-type
, um die Attribute der obersten Ebene des Dienstes 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 Hostprojekts oder Verwaltungsprojekts, je nach Einrichtungsmodell. 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_CRITICAL
HIGH
MEDIUM
LOW
Optional:
ENVIRONMENT
: die Phase des Softwarelebenszyklus. Verwenden Sie einen der folgenden Werte:PRODUCTION
STAGING
DEVELOPMENT
TEST
Optional:
DEV_NAME
undDEV_EMAIL
: der Anzeigename bzw. die E-Mail-Adresse des Entwicklerinhabers.Optional:
OPERATOR_NAME
undOPERATOR_EMAIL
: der Anzeigename bzw. die E-Mail-Adresse des Betreiberinhabers.Optional:
BUSINESS_NAME
undBUSINESS_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=REGION
Sie 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
Lassen Sie sich die verfügbaren Arbeitslasten auflisten, die Sie für eine Anwendung registrieren können:
gcloud apphub discovered-workloads list \ --project=PROJECT_ID \ --location=REGION \ --filter=FILTER_EXPRESSION
Ersetzen Sie für erforderliche und optionale Flags Folgendes:
- Erforderlich:
PROJECT_ID
: Die ID des Hostprojekts oder Verwaltungsprojekts, je nach Einrichtungsmodell. 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 Workloads aus einem bestimmten Projekt 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_ID
aus 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_EMAIL
Ersetzen Sie
WORKLOAD_NAME
durch 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 der Arbeitslast 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 Hostprojekts oder Verwaltungsprojekts, je nach Einrichtungsmodell. 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
.
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_CRITICAL
HIGH
MEDIUM
LOW
Optional:
ENVIRONMENT
: die Phase des Softwarelebenszyklus. Verwenden Sie einen der folgenden Werte:PRODUCTION
STAGING
DEVELOPMENT
TEST
Optional:
DEV_NAME
undDEV_EMAIL
: der Anzeigename bzw. die E-Mail-Adresse des Entwicklerinhabers.Optional:
OPERATOR_NAME
undOPERATOR_EMAIL
: der Anzeigename bzw. die E-Mail-Adresse des Betreiberinhabers.Optional:
BUSINESS_NAME
undBUSINESS_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=REGION
Sie 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 Dienste oder Arbeitslasten mit Terraform für eine Anwendung registrieren möchten, 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 die Organisationsstruktur IhrerGoogle Cloud -Ressourcen ändern oder die zugrunde liegende Ressource löschen. Abgetrennte Dienste und Arbeitslasten verbleiben in der Anwendung, bis Sie sie abmelden. Weitere Informationen finden Sie unter Registrierungsstatus von Diensten und Arbeitslasten.
Berechtigungen erteilen und Vorgänge starten
Nachdem Sie eine Anwendung erstellt und Ihre Ressourcen in App Hub registriert haben, gewähren Sie den Nutzerzugriff basierend auf Verantwortlichkeiten und verwalten diese logische Gruppierung als eine Einheit:
- Je nach Ihren Anforderungen können Sie Ihrer Anwendung Berechtigungen erteilen. Eine Liste der empfohlenen Rollen finden Sie unter Nutzern anwendungsbezogene Rollen zuweisen.
- Rufen Sie Cloud Hub auf, um ein einheitliches Betriebs-Dashboard für Ihre definierte Anwendung aufzurufen, einschließlich Daten zu Zustand, Leistung und Kosten.