Configurare App Hub per i progetti host

Questo documento fornisce istruzioni per configurare App Hub utilizzando un progetto host per creare, gestire e amministrare applicazioni su Google Cloud. Un progetto host è un progetto Google Cloud che può ospitare progetti di servizio che includono risorse che vuoi gestire utilizzando le applicazioni App Hub. Questo documento è destinato alle persone che configurano e amministrano App Hub.

Ti consigliamo di utilizzare le cartelle abilitate per le app per configurare App Hub e gestire le tue applicazioni. Le cartelle abilitate per le app forniscono la gestione delle applicazioni in tutti i progetti della cartella e l'accesso a funzionalità come Application Design Center e Gemini Cloud Assist. Per ulteriori informazioni, vedi Configurare App Hub per le cartelle abilitate per le app.

Servizi e workload

Utilizzando App Hub, le risorse dei progetti di servizio collegati al progetto host sono disponibili come servizi e workload. La registrazione dei servizi e dei workload a un'applicazione consente di osservare e monitorare le risorse. App Hub supporta le risorse globali e regionali. Per maggiori informazioni, consulta Risorse supportate da App Hub.

Procedura di configurazione complessiva

Il seguente elenco riepiloga i passaggi per configurare App Hub:

  1. Determina quali risorse esistenti includere nell'applicazione e a quali progetti appartengono.
  2. Crea un progetto host di App Hub o utilizza un progetto esistente come progetto host. Facoltativamente, in base alla struttura organizzativa della tua attività, crea più di un progetto host.
    • Se prevedi di avere più di un progetto host, ti consigliamo vivamente di crearli nella stessa cartella.
    • Un progetto host non può essere un progetto di servizio, se non per se stesso.
  3. Abilita l'API App Hub nel progetto host.
  4. Designa gli utenti di App Hub come amministratori, editor o visualizzatori di App Hub.
  5. Associa i progetti di servizio. Dopo aver configurato un progetto host, collega i progetti di servizio con le risorse sottostanti necessarie alle tue applicazioni al progetto host. Nota:
    1. I progetti di servizio devono appartenere alla stessa organizzazione del progetto host. Dopo aver collegato un progetto di servizio a un progetto host, non puoi spostarlo in un'altra organizzazione. Per spostare il progetto di servizio in un'altra organizzazione, devi seguire le istruzioni riportate in questo documento per rimuovere o scollegare l'allegato del progetto di servizio al progetto host. Puoi quindi collegare il progetto di servizio a un'altra organizzazione.
    2. Un progetto di servizio non può essere collegato a più di un progetto host.
    3. Un progetto host può essere un progetto di servizio, ma non può essere un progetto di servizio per un altro progetto host.
    4. Dopo aver collegato i progetti di servizio a un progetto host, l'interrogazione del progetto host per servizi o carichi di lavoro restituisce automaticamente tutti i servizi e i carichi di lavoro in tutti i progetti di servizio.
  6. Crea un'applicazione per organizzare più servizi e carichi di lavoro. Nota quanto segue:
    1. Assicurati che l'applicazione abbia un nome univoco nel progetto host e nella località.
    2. Un progetto di servizio può essere collegato a un progetto host con più applicazioni, ma le sue singole risorse possono essere registrate a una sola applicazione.
  7. Esegui query per servizi e workload e registrali nella tua applicazione. Dopo aver creato un'applicazione, esegui una query sul progetto host per i servizi e i carichi di lavoro disponibili. Le query vengono eseguite sul progetto host e su tutti i progetti di servizio collegati al progetto host. Restituiscono anche tutti i servizi e i carichi di lavoro in questi progetti. Nota:
    1. Puoi registrare un servizio o un workload in una sola applicazione.
    2. Devi registrare i servizi e i carichi di lavoro di una regione specifica in un'applicazione regionale nella stessa regione o in un'applicazione globale. Le istruzioni e i comandi che seguono presuppongono che tutte le risorse si trovino nella stessa regione. Per informazioni sulle regioni che puoi designare, vedi Località.
    3. I servizi e i workload registrati non sono interessati dagli aggiornamenti alla risorsa di infrastruttura sottostante. In altre parole, se elimini le risorse sottostanti che fungono da servizi e workload, App Hub non elimina i servizi e i workload associati dalla tua applicazione. Devi annullare separatamente la registrazione del carico di lavoro o del servizio.

Prerequisiti

Prima di configurare App Hub, completa le seguenti attività.

  1. Decidi quale progetto esistente sarà il progetto host o creane uno nuovo. Ti consigliamo vivamente di creare un nuovo progetto.
  2. Assicurati di aver deciso quali persone ricoprono i ruoli IAM (Identity and Access Management) per App Hub: amministratore App Hub, editor App Hub e visualizzatore App Hub.

Tieni presente che la persona che collega un progetto di servizio a un progetto host deve disporre del ruolo IAM Amministratore App Hub sia nel progetto di servizio che nel progetto host. Per ulteriori informazioni, consulta Ruoli e autorizzazioni di App Hub.

Configura App Hub

In questa sezione, crei un'architettura App Hub di esempio.

Nell'esempio, un'organizzazione ha tre progetti di servizio, con le relative risorse infrastrutturali implementate nei progetti nel seguente modo:

  • Il progetto di servizio 1 ha due risorse di infrastruttura, Servizio 1 e Servizio 2.
  • Il progetto di servizio 2 ha tre risorse dell'infrastruttura: Servizio 3, Workload 1 e Workload 2.
  • Il progetto di servizio 3 ha tre risorse di infrastruttura: Servizio 4, Workload 3 e Workload 4.

Assicurati che i progetti che scegli per creare l'esempio contengano le risorse descritte in questa sezione o preparati a modificare l'esempio man mano che segui le istruzioni.

Le seguenti sezioni contengono le istruzioni per creare un esempio di hub app. Crea un progetto host e aggiungi progetti di servizio al progetto host, quindi crea un'applicazione e collega servizi e carichi di lavoro all'applicazione. L'esempio include tre progetti di servizio, ma puoi aggiungerne di meno o di più.

L'esempio presuppone che tutti i progetti di servizio che aggiungi esistano già e contengano servizi e carichi di lavoro che aggiungi alla tua applicazione. Prima di creare l'esempio, determina quali progetti di servizio contengono i servizi e i carichi di lavoro che vuoi includere nell'applicazione.

Abilita App Hub

In questa sezione, seleziona o crea un nuovo progetto host, attiva l'API App Hub e concedi ruoli e autorizzazioni appropriati alle persone della tua organizzazione. Collega anche i progetti di servizio al progetto host.

Console

  1. Nella console Google Cloud , vai alla pagina di selezione del progetto.

    Vai al selettore dei progetti

  2. Seleziona o crea un Google Cloud progetto, che sarà il progetto host di App Hub.

  3. Enable the required API.

    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. Assicurati che sia installata la versione più recente di Google Cloud CLI. Esegui questo comando da Cloud Shell:

    gcloud components update
  3. Crea o seleziona un nuovo progetto, HOST_PROJECT_ID, che sarà il progetto host per App Hub.

    • Creare un progetto Google Cloud :
      gcloud projects create HOST_PROJECT_ID
    • Seleziona il progetto Google Cloud che hai creato:
      gcloud config set project HOST_PROJECT_ID
  4. Abilita l'API App Hub nel progetto host che hai appena creato.

    gcloud services enable apphub.googleapis.com \
        --project=HOST_PROJECT_ID
    

Designare gli utenti App Hub

Se hai creato il progetto, ti viene concesso il ruolo di base Proprietario (roles/owner). Per impostazione predefinita, questo ruolo IAM include le autorizzazioni necessarie per l'accesso completo alla maggior parte delle risorse Google Cloud .

Se non sei l'autore del progetto, le autorizzazioni richieste devono essere concesse al principal appropriato. Ad esempio, un'entità può essere un Account Google (per gli utenti finali) o un service account (per applicazioni e carichi di lavoro di calcolo). Per ottenere le autorizzazioni necessarie per completare questo tutorial, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto:

Console

  1. Nella console Google Cloud , vai alla pagina IAM.

    Vai a IAM

  2. Fai clic su Concedi l'accesso. Viene visualizzato il riquadro Concedi l'accesso.

  3. Nel campo Nuove entità, inserisci l'indirizzo email della persona che amministrerà App Hub, ovvero il ruolo Amministratore App Hub nel progetto host.

  4. Fai clic su Seleziona un ruolo e nel campo Filtro inserisci App Hub.

  5. Seleziona il ruolo Amministratore hub app e fai clic su Salva.

  6. In ciascuno dei progetti di servizio App Hub, concedi il ruolo Amministratore App Hub allo stesso utente.

gcloud

  1. (Facoltativo) Concedi alle persone che amministreranno App Hub il ruolo di amministratore di App Hub nel progetto host. Ripeti il seguente comando per ogni amministratore.

    gcloud projects add-iam-policy-binding HOST_PROJECT_ID \
        --member='user:HOST_PROJECT_ADMIN' \
        --role='roles/apphub.admin'
    

    Sostituisci HOST_PROJECT_ADMIN con l'utente che ha il ruolo di amministratore di App Hub nel progetto host. Questo valore ha il formato username@yourdomain, ad esempio, robert.smith@example.com.

  2. Concedi il ruolo di amministratore di App Hub nei progetti di servizio alle persone che amministrano App Hub. Per aggiungere progetti di servizio al progetto host, devono disporre del ruolo di amministratore di App Hub. Per ogni progetto di servizio è necessaria almeno una persona con questo ruolo. Una singola persona può avere il ruolo in più progetti di assistenza.

    gcloud projects add-iam-policy-binding SERVICE_PROJECT_1 \
        --member='user:HOST_PROJECT_ADMIN' \
        --role='roles/apphub.admin'
    
    gcloud projects add-iam-policy-binding SERVICE_PROJECT_2 \
        --member='user:HOST_PROJECT_ADMIN' \
        --role='roles/apphub.admin'
    
    gcloud projects add-iam-policy-binding SERVICE_PROJECT_3 \
        --member='user:HOST_PROJECT_ADMIN' \
        --role='roles/apphub.admin'
    

    Sostituisci quanto segue:

    • SERVICE_PROJECT_1: il primo dei tre progetti di servizio in questo esempio.
    • SERVICE_PROJECT_2: il secondo dei tre service project in questo esempio.
    • SERVICE_PROJECT_3: il terzo dei tre service project in questo esempio.

Aggiungere progetti di servizio al progetto host

Aggiungi i progetti di servizio con le risorse sottostanti che vuoi gestire al progetto host di App Hub.

Console

  1. Nella Google Cloud console, vai alla pagina Impostazioni di App Hub.

    Vai alle impostazioni

  2. Nella pagina Impostazioni, fai clic su Allega progetti.

  3. Esegui una di queste operazioni:

    • Dall'elenco dei progetti, seleziona le caselle di controllo per i progetti che vuoi aggiungere come progetti di servizio.
    • Cerca i progetti e poi seleziona quelli da aggiungere come progetti di servizio.
  4. Fai clic su Seleziona. La tabella Progetti di servizio collegati mostra i progetti di servizio selezionati.

  5. Fai clic su Chiudi.

gcloud

gcloud apphub service-projects add SERVICE_PROJECT_1 \
    --project=HOST_PROJECT_ID
gcloud apphub service-projects add SERVICE_PROJECT_2 \
    --project=HOST_PROJECT_ID
gcloud apphub service-projects add SERVICE_PROJECT_3 \
    --project=HOST_PROJECT_ID

(Facoltativo) Aggiungi progetti di servizio all'ambito delle metriche del progetto host

Puoi visualizzare le metriche di sistema per le applicazioni nel progetto host aggiungendo i progetti di servizio come contenitori di risorse all'ambito delle metriche del progetto host. Un progetto host di App Hub funge da progetto di definizione dell'ambito che ospita un ambito delle metriche. L'ambito delle metriche di un progetto Google Cloud definisce l'insieme di contenitori di risorse i cui dati delle serie temporali possono essere rappresentati graficamente e monitorati dal progetto host. Per ulteriori informazioni sui container di risorse, sull'ambito delle metriche e sui progetti di scoping, consulta Cloud Monitoring: modello di dati. Per ulteriori informazioni sulle risorse dell'infrastruttura disponibili con le metriche di sistema e l'etichetta dei metadati di sistema dell'applicazione App Hub, consulta Risorse supportate.

Per visualizzare le metriche di sistema per un'applicazione, devi aggiungere o eliminare manualmente i progetti di servizio monitorati, in base alle esigenze, dai progetti host. Tuttavia, se utilizzi il progetto host come progetto di servizio, poiché le applicazioni App Hub si trovano nello stesso progetto, non aggiungere il progetto all'ambito delle metriche.

Assicurati di disporre dei seguenti ruoli IAM:

Console

  1. Nella console Google Cloud , vai alla pagina  Impostazioni:

    Vai a Impostazioni

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

  2. Seleziona Ambito metrica.

    La scheda Ambito delle metriche elenca le risorse monitorate dal Google Cloud progetto attuale. Elenca anche i Google Cloud progetti il cui ambito delle metriche include il progetto Google Cloud corrente.

  3. Per aggiungere Google Cloud progetti all'ambito delle metriche:

    1. Nel riquadro Progetti Google Cloud, fai clic su Aggiungi progetti.
    2. Nella finestra di dialogo Aggiungi progetti Google Cloud, fai clic su Seleziona progetti, quindi seleziona le caselle di controllo per i progetti di servizio richiesti che vuoi monitorare.
    3. Per salvare le modifiche, fai clic su Aggiungi progetti.

      Viene visualizzata la pagina Impostazioni con la tabella aggiornata per elencare le tue selezioni.

Dopo aver aggiunto progetti a un ambito delle metriche, sono necessari circa 60 secondi perché le modifiche si propaghino a tutti i sistemi di Monitoring.

Per ulteriori informazioni sulla configurazione degli ambiti delle metriche utilizzando la consoleGoogle Cloud , consulta Configurare un ambito delle metriche.

gcloud

Per aggiungere i tuoi progetti di servizio come container di risorsa monitorata al progetto host di App Hub:

gcloud beta monitoring metrics-scopes create projects/SERVICE_PROJECT_1 \
    --project=HOST_PROJECT_ID
gcloud beta monitoring metrics-scopes create projects/SERVICE_PROJECT_2 \
    --project=HOST_PROJECT_ID
gcloud beta monitoring metrics-scopes create projects/SERVICE_PROJECT_3 \
    --project=HOST_PROJECT_ID

Per saperne di più sulla configurazione degli ambiti delle metriche utilizzando Google Cloud CLI, consulta Configurare un ambito delle metriche utilizzando l'API.

Crea un'applicazione

Se non ne hai già una, crea un'applicazione che funga da contenitore per i tuoi servizi e carichi di lavoro. In base all'ambito dei tuoi servizi e workload nei tuoi progetti di servizio, crea un'applicazione globale o regionale.

  • Un'applicazione globale ti consente di registrare servizi e carichi di lavoro rilevati da risorse regionali e globali. Google Cloud
  • Un'applicazione regionale ti consente di registrare servizi e workload rilevati da risorse Google Cloud regionali.

Tieni presente che dopo aver creato un'applicazione, non puoi modificare l'ambito dell'applicazione. Per saperne di più sulle applicazioni globali e regionali, consulta Applicazioni globali e regionali di App Hub.

Console

  1. Assicurati di essere nel progetto host.
  2. Nella console Google Cloud , vai alla pagina Applicazioni di App Hub.

    Vai a Applicazioni

  3. Fai clic su Crea applicazione.

  4. Nella pagina Crea applicazione, nel riquadro Scegli la regione e il nome dell'applicazione, in base all'ambito dei servizi e dei carichi di lavoro che vuoi registrare nell'applicazione, esegui una delle seguenti operazioni:

    • Per creare un'applicazione che ti consenta di registrare servizi e workload da una località globale, seleziona Globale.

    • Per creare un'applicazione che ti consenta di registrare servizi e workload da un'unica posizione:

      1. Seleziona A livello di regione.
      2. Seleziona una Regione.
  5. Inserisci il nome dell'applicazione e fai clic su Continua.

  6. Se vuoi, aggiungi ulteriori dettagli per la richiesta nei campi che seguono. Per ulteriori informazioni, consulta la sezione Aggiornare un'applicazione App Hub esistente di questo documento.

  7. Fai clic su Crea.

gcloud

  1. Crea una nuova applicazione chiamata APPLICATION_NAME e assegnale un nome visualizzato, APPLICATION_DISPLAY_NAME.

    gcloud apphub applications create APPLICATION_NAME \
      --scope-type=SCOPE_TYPE \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Sostituisci quanto segue:

    • APPLICATION_NAME: il nome della tua applicazione. Il nome deve includere solo caratteri alfanumerici minuscoli senza spazi.
    • SCOPE_TYPE: l'ambito della tua applicazione che definisce quali servizi e carichi di lavoro sono disponibili per la registrazione all'applicazione. Utilizza uno dei seguenti valori:
      • REGIONAL
      • GLOBAL
    • REGION: la regione dell'applicazione. A seconda di --scope-type, assegna a questo il valore us-east1 o global.
  2. Elenca le applicazioni nel progetto host.

    gcloud apphub applications list \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    L'output è simile al seguente:

    ID                DISPLAY_NAME              CREATE_TIME
    APPLICATION_NAME  APPLICATION_DISPLAY_NAME  2023-10-31T18:33:48
    
  3. Recupera i dettagli dell'applicazione che hai creato.

    gcloud apphub applications describe APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Il comando restituisce informazioni in formato YAML, simili a quelle riportate di seguito.

    createTime: '2023-10-31T18:33:48.199394108Z'
    displayName: APPLICATION_DISPLAY_NAME
    name: projects/HOST_PROJECT_ID/locations/REGION/applications/APPLICATION_NAME
    scope:
      type: SCOPE_TYPE
    state: ACTIVE
    uid: [APPLICATION_UID]
    updateTime: '2023-10-31T18:33:48.343303819Z'
    
    

Aggiornare un'applicazione App Hub esistente

Puoi anche aggiornare gli attributi della tua applicazione dopo la sua creazione.

Console

  1. Nella console Google Cloud , vai alla pagina Applicazioni di App Hub.

    Vai a Applicazioni

  2. Nell'elenco delle applicazioni, fai clic su Modifica per l'applicazione che vuoi aggiornare.

  3. Modifica i campi in base alle necessità e fai clic su Salva.

  4. (Facoltativo) Nell'elenco Criticità, per indicare l'importanza dell'applicazione, seleziona una delle seguenti opzioni:

    • Mission critical
    • Alta
    • Medio
    • Bassa
  5. (Facoltativo) Nell'elenco Ambiente, per indicare la fase del ciclo di vita del software, seleziona una delle seguenti opzioni:

    • Produzione
    • Staging
    • Sviluppo
    • Test
  6. (Facoltativo) Aggiungi i seguenti dettagli in base alle esigenze per Proprietari sviluppatori, Proprietari operatori e Proprietari attività. Tieni presente che devi inserire l'indirizzo email del proprietario se aggiungi un nome visualizzato.

    1. Inserisci un nome visualizzato del proprietario.
    2. Inserisci l'indirizzo email del proprietario. Questo valore deve avere il formato username@yourdomain, ad esempio 222larabrown@gmail.com.
  7. Ripeti questi passaggi per ogni sviluppatore, operatore e proprietario dell'attività.

  8. Fai clic su Salva.

gcloud

  1. Aggiorna la tua applicazione con gli attributi criticality-type, environment-type e tipo di proprietario:

    gcloud apphub applications update APPLICATION_NAME \
      --display-name='APPLICATION_DISPLAY_NAME' \
      --criticality-type='CRITICALITY_LEVEL' \
      --environment-type='ENVIRONMENT' \
      --developer-owners=display-name=DISPLAY-NAME-DEVELOPER,email=EMAIL-DEVELOPER \
      --operator-owners=display-name=DISPLAY-NAME-OPERATOR,email=EMAIL-OPERATOR \
      --business-owners=display-name=DISPLAY-NAME-BUSINESS,email=EMAIL-BUSINESS \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Sostituisci quanto segue:

    • APPLICATION_DISPLAY_NAME: il nome visualizzato della tua applicazione.
    • CRITICALITY_LEVEL: indica quanto è critica un'applicazione, un servizio o un workload per le tue operazioni aziendali. Fornisci uno dei seguenti valori:
      • MISSION_CRITICAL
      • HIGH
      • MEDIUM
      • LOW
    • ENVIRONMENT: indica le fasi del ciclo di vita del software. Fornisci uno dei seguenti valori:
      • PRODUCTION
      • STAGING
      • DEVELOPMENT
      • TEST
    • DISPLAY-NAME-DEVELOPER, DISPLAY-NAME-OPERATOR e DISPLAY-NAME-BUSINESS: nomi visualizzati dello sviluppatore, dell'operatore e dei proprietari dell'attività, rispettivamente.
    • EMAIL-NAME-DEVELOPER, EMAIL-NAME-OPERATOR e EMAIL-NAME-BUSINESS: indirizzi email dello sviluppatore, dell'operatore e dei proprietari dell'attività, rispettivamente. Questi valori devono avere il formato username@yourdomain, ad esempio, 222larabrown@gmail.com.
  2. Elenca le applicazioni in cui l'attributo environment-type ha il valore PRODUCTION.

    gcloud apphub applications list \
        --filter='attributes.environment.type=PRODUCTION' \
        --project=HOST_PROJECT_ID \
        --location=REGION
    

    L'output è simile al seguente:

    ID                DISPLAY_NAME              CREATE_TIME
    APPLICATION_NAME  APPLICATION_DISPLAY_NAME  2023-10-31T18:33:48
    

Registra servizi e workload

Quando registri servizi e workload dell'infrastruttura in un'applicazione, i servizi e i workload vengono registrati come risorse App Hub. Utilizza un'applicazione globale per registrare risorse globali o distribuite in più regioni. Utilizza un'applicazione regionale per registrare le risorse della stessa regione dell'applicazione.

Console

  1. Nella console Google Cloud , vai alla pagina Applicazioni di App Hub.

    Vai a Applicazioni

  2. Fai clic sul nome dell'applicazione. Viene visualizzata la scheda Servizi e workload con un elenco di servizi e workload registrati nei tuoi progetti di servizio.

  3. Per ogni servizio o carico di lavoro che vuoi registrare, procedi nel seguente modo:

    1. Nella scheda Servizi e workload, fai clic su Registra servizio/workload.
    2. Nella pagina Registra servizio o carico di lavoro, nel riquadro Seleziona risorsa, fai clic su Sfoglia per selezionare il servizio o il carico di lavoro come Risorsa.
    3. Nel riquadro Seleziona risorsa, scegli un servizio o un workload e fai clic su Seleziona.
    4. Nel riquadro Seleziona risorsa, inserisci un Nome per il servizio o il carico di lavoro e fai clic su Continua.
    5. (Facoltativo) Nel riquadro Aggiungi attributi, aggiungi ulteriori dettagli per il servizio o il carico di lavoro nei campi seguenti. Per ulteriori informazioni, in questo documento, consulta Aggiornare un'applicazione App Hub esistente. Tieni presente che puoi selezionare valori per i campi Criticità e Ambiente diversi da quelli impostati quando crei l'applicazione.
    6. Fai clic su Continua.
    7. (Facoltativo) Nella sezione Aggiungi proprietari, aggiungi ulteriori dettagli sui proprietari del servizio o del workload nei campi seguenti. Per ulteriori informazioni, consulta la sezione Aggiornare un'applicazione App Hub esistente di questo documento.
    8. Fai clic su Register (Registrati).

La scheda Servizi e workload mostra il servizio o il workload registrato. Per ulteriori informazioni sugli stati di registrazione, consulta le proprietà e gli attributi di App Hub.

gcloud

  1. Aggiungi un utente con le autorizzazioni Editor di App Hub.

    gcloud projects add-iam-policy-binding HOST_PROJECT_ID \
      --member='user:APP_HUB_EDITOR' \
      --role='roles/apphub.editor'
    

    Sostituisci APP_HUB_EDITOR con l'utente che ha il ruolo Editor di App Hub nel progetto host. Questo valore ha il formato username@yourdomain, ad esempio robert.smith@example.com.

  2. Elenca i workload rilevati dal progetto di servizio 2, che è collegato al progetto host. Questo comando restituisce i workload che possono essere registrati in un'applicazione.

    gcloud apphub discovered-workloads list \
      --filter='workload_properties.gcp_project=projects/SERVICE_PROJECT_2' \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    L'output è simile al seguente, che include i MIG non registrati:

    ID                           WORKLOAD_REFERENCE                                                                                                      WORKLOAD_PROPERTIES
    [DISCOVERED_WORKLOAD_ID_1]   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/regions/REGION/instanceGroups/testing-mig-1'}     {'gcpProject': 'projects/SERVICE_PROJECT_2', 'location': 'REGION'}
    [DISCOVERED_WORKLOAD_ID_2]   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/regions/REGION/instanceGroups/testing-mig-2'}     {'gcpProject': 'projects/SERVICE_PROJECT_2', 'location': 'REGION'}
    

    Copia l'ID carico di lavoro dall'output da utilizzare nel passaggio successivo.

  3. Registra un workload del passaggio precedente nella tua applicazione.

    gcloud apphub applications workloads create WORKLOAD_NAME \
      --discovered-workload='projects/HOST_PROJECT_ID/locations/REGION/discoveredWorkloads/DISCOVERED_WORKLOAD_ID_2' \
      --display-name='mywebserver-deployment1' \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Sostituisci quanto segue:

    • WORKLOAD_NAME: un nome con cui registrare il carico di lavoro.
    • DISCOVERED_WORKLOAD_ID_2: l'ID workload dall'output del passaggio precedente.
  4. Ripeti i due passaggi precedenti per filtrare e registrare i carichi di lavoro che vuoi dal progetto di servizio 3.

  5. (Facoltativo) Puoi aggiornare i carichi di lavoro con gli attributi criticality-type, environment-type e proprietario.

    gcloud apphub applications workloads update WORKLOAD_NAME \
      --application=APPLICATION_NAME \
      --criticality-type='CRITICALITY_LEVEL' \
      --environment-type='ENVIRONMENT' \
      --developer-owners=display-name=DISPLAY-NAME-DEVELOPER,email=EMAIL-DEVELOPER \
      --operator-owners=display-name=DISPLAY-NAME-OPERATOR,email=EMAIL-OPERATOR \
      --business-owners=display-name=DISPLAY-NAME-BUSINESS,email=EMAIL-BUSINESS \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Tieni presente che devi fornire uno dei valori specificati per criticality-type e environment-type, ma il valore può essere diverso da quelli impostati durante la creazione dell'applicazione.

  6. Elenca i workload registrati nell'applicazione.

    gcloud apphub applications workloads list \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    L'output è simile al seguente:

    ID                DISPLAY_NAME                 WORKLOAD_REFERENCE                                                                                                    CREATE_TIME
    WORKLOAD_NAME     mywebserver-deployment1      {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/regions/REGION/instanceGroups/testing-mig-2'}   2023-10-31T18:34:23
    

    I workload registrati, ma separati, sono indicati da un valore vuoto nel campo WORKLOAD_REFERENCE. Per ulteriori informazioni sugli stati di registrazione, consulta le proprietà e gli attributi di App Hub.

  7. Elenca i servizi rilevati con regole di forwarding nel progetto di servizio 1 collegato al progetto host. Questo comando restituisce i servizi che possono essere registrati a un'applicazione.

    gcloud apphub discovered-services list \
      --filter='service_properties.gcp_project=projects/SERVICE_PROJECT_1 AND service_reference.uri~"forwardingRules"' \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    L'output è simile al seguente:

    ID                           SERVICE_REFERENCE                                                                                                                    SERVICE_PROPERTIES
    [DISCOVERED_SERVICE_ID_1]    {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/REGION/forwardingRules/testing-forwarding-rule-1'}     {'gcpProject': 'projects/SERVICE_PROJECT_1', 'location': 'REGION'}
    [DISCOVERED_SERVICE_ID_2]    {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/REGION/forwardingRules/testing-forwarding-rule-2'}     {'gcpProject': 'projects/SERVICE_PROJECT_1', 'location': 'REGION'}
    

    Copia l'ID servizio, DISCOVERED_SERVICE_ID_2, dall'output da utilizzare nel passaggio successivo.

  8. Registra la regola di forwarding, testing-forwarding-rule-2 nel progetto di servizio 1 come servizio.

    gcloud apphub applications services create SERVICE_NAME \
      --discovered-service='projects/HOST_PROJECT_ID/locations/REGION/discoveredServices/DISCOVERED_SERVICE_ID_2' \
      --display-name='mywebserver-service1' \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Sostituisci quanto segue:

    • SERVICE_NAME: un nome con cui registrare il servizio.
    • DISCOVERED_SERVICE_ID_2: l'ID servizio dall'output del passaggio precedente.
  9. Ripeti i passaggi precedenti per elencare i servizi, filtrarli e registrarli nei progetti di servizio 1, 2 e 3.

  10. Aggiorna un servizio con l'attributo criticality-type e l'attributo environment-type.

    gcloud apphub applications services update SERVICE_NAME \
      --criticality-type='CRITICALITY_LEVEL' \
      --environment-type='ENVIRONMENT' \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID  \
      --location=REGION
    
  11. Elenca i servizi registrati nell'applicazione APPLICATION_NAME e nel progetto host HOST_PROJECT_ID.

    gcloud apphub applications services list \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    L'output è simile al seguente per ogni servizio:

    ID                DISPLAY_NAME                 SERVICE_REFERENCE                                                                                                                  CREATE_TIME
    SERVICE_NAME      mywebserver-service1         {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/REGION/forwardingRules/testing-forwarding-rule-2'}   2023-11-01T21:38:08
    

    I servizi registrati, ma separati, sono indicati da un valore vuoto nel campo SERVICE_REFERENCE.

  12. Filtra i servizi nell'applicazione APPLICATION_NAME e nel progetto host HOST_PROJECT_ID in modo che vengano visualizzati solo quelli in cui l'attributo environment-type è impostato su PRODUCTION.

    gcloud apphub applications services list \
      --filter='attributes.environment.type=PRODUCTION' \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

La procedura di configurazione di App Hub è stata completata.

Aggiungere o rimuovere progetti di servizio

Puoi modificare gli allegati del progetto di servizio per rendere disponibili diverse risorse dell'infrastruttura da raggruppare in un'applicazione.

Per visualizzare le metriche di sistema per le applicazioni nel progetto host, dopo aver aggiunto un progetto di servizio a un progetto host, aggiungi i progetti di servizio come contenitori di risorse all'ambito delle metriche del progetto host. Per saperne di più, consulta la sezione Aggiungere progetti di servizio all'ambito delle metriche del progetto host di questo documento. Quando rimuovi un progetto di servizio da un progetto host, valuta la possibilità di rimuovere i progetti di servizio come contenitori di risorse dall'ambito delle metriche del progetto host (se in precedenza avevi scelto di visualizzare le metriche di sistema delle applicazioni nel progetto host). Per saperne di più, in questo documento, consulta i passaggi per rimuovere i progetti di servizio dall'ambito delle metriche del progetto host.

Console

Per aggiungere un progetto di servizio a un progetto host:

  1. Nella Google Cloud console, vai alla pagina Impostazioni di App Hub.

    Vai alle impostazioni

  2. Nella pagina Impostazioni, fai clic su Allega progetti.

  3. Nel riquadro che si apre, cerca i progetti nell'elenco visualizzato e seleziona le caselle di controllo per i progetti che vuoi aggiungere come progetti di servizio.

  4. Fai clic su Seleziona. La tabella Progetti di servizio collegati mostra i progetti selezionati come progetti di servizio per il progetto host.

  5. Fai clic su Chiudi.

Per rimuovere un progetto di servizio da un progetto host:

  1. Nella Google Cloud console, vai alla pagina Impostazioni di App Hub.

    Vai alle impostazioni

  2. Nella pagina Impostazioni, seleziona le caselle di controllo per i progetti che vuoi rimuovere come progetti di servizio.

  3. Fai clic su Scollega progetti. La tabella Progetti di servizio collegati viene aggiornata in modo da visualizzare solo i progetti che rimangono collegati al progetto host.

gcloud

Per aggiungere un progetto di servizio a un progetto host:

gcloud apphub service-projects add SERVICE_PROJECT_ID \
   --project=HOST_PROJECT_ID
Sostituisci SERVICE_PROJECT_ID con il nome del progetto di servizio che vuoi aggiungere al progetto host.
Per rimuovere un progetto di servizio dal progetto host:
gcloud apphub service-projects remove SERVICE_PROJECT_ID \
   --project=HOST_PROJECT_ID

Visualizzare applicazioni, servizi e workload esistenti

Puoi visualizzare le applicazioni in un progetto ed elencare i servizi e i workload in un'applicazione.

Console

  • Per visualizzare le applicazioni in un progetto:

    1. Nella console Google Cloud , vai alla pagina Applicazioni di App Hub.

      Vai a Applicazioni

    2. (Facoltativo) Per filtrare l'applicazione:

      1. Nel campo Filtro, seleziona un filtro come Criticità.
      2. Seleziona Alto come valore.
        Viene visualizzato un elenco di applicazioni di elevata criticità create nel progetto host.
  • Per elencare servizi e workload:

    Applicazioni

    1. Nella console Google Cloud , vai alla pagina Applicazioni di App Hub.

      Vai a Applicazioni

    2. Fai clic sul nome di un'applicazione. Viene visualizzata una pagina con un elenco di servizi e workload registrati nella tua applicazione.

    3. (Facoltativo) Per filtrare i servizi o i workload:

      1. Nel campo Filtro, seleziona un filtro come Criticità.
      2. Seleziona Alto come valore.
        Viene visualizzato un elenco di servizi e workload di criticità elevata registrati nell'applicazione.

    Servizi e workload

    1. Nella console Google Cloud , vai alla pagina Servizi e workload di App Hub.

      Vai a Servizi e carichi di lavoro

    2. Nell'elenco Regione, seleziona le regioni da cui vuoi visualizzare i servizi e i carichi di lavoro. Ad esempio, seleziona us-east1.
      La pagina Servizi e carichi di lavoro mostra tutti i servizi e i carichi di lavoro dei progetti di servizio collegati associati a us-east1.

    3. (Facoltativo) Per filtrare i servizi o i workload:

      1. Nel campo Filtro, seleziona un filtro come Ambiente.
      2. Seleziona Produzione come valore.
        Viene visualizzato un elenco di servizi e workload nell'ambiente di produzione registrati a un'applicazione.

gcloud

  • Per visualizzare le applicazioni in un progetto:

    gcloud apphub applications list \
      --project=HOST_PROJECT_ID \
      --location=REGION
    
  • Per elencare i servizi registrati in un'applicazione:

    gcloud apphub applications services list \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    
  • Per elencare i carichi di lavoro registrati in un'applicazione:

    gcloud apphub applications workloads list \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    
  • (Facoltativo) Per filtrare le risorse in base agli attributi delle variabili, aggiungi un flag di comando filter ai comandi precedenti. Ad esempio, per elencare tutti i workload registrati in cui l'attributo criticality-type è impostato su HIGH:

    gcloud apphub applications workloads list \
      --application=APPLICATION_NAME \
      --filter='attributes.criticality.type=HIGH' \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Per ulteriori informazioni sugli attributi che puoi filtrare in questa pagina, consulta Aggiornare un'applicazione App Hub esistente.

(Facoltativo) Visualizza le metriche delle applicazioni

Puoi visualizzare le metriche di sistema per le applicazioni create nel progetto host di App Hub. Queste metriche corrispondono ai segnali d'oro (traffico, errori, latenza e saturazione) che aiutano a monitorare le prestazioni e l'integrità dell'applicazione.

  1. Nella console Google Cloud , vai alla pagina Applicazioni di App Hub.

    Vai a Applicazioni

  2. Fai clic sul nome di un'applicazione.

    Viene visualizzata la scheda Servizi e workload con i metadati dei servizi e dei workload registrati nella tua applicazione.

  3. (Facoltativo) Per modificare il periodo di tempo per il quale vengono visualizzate le metriche, utilizza il selettore intervallo di tempo. L'intervallo di tempo predefinito è 1 ora.

  4. Per visualizzare le metriche di sistema dei servizi e dei carichi di lavoro registrati, fai clic su bar_chart Metriche.

    Viene visualizzata una tabella con i seguenti indicatori golden:

    • Traffico: tassi di richieste in entrata sulla risorsa nel periodo di tempo selezionato.
    • Percentuale di errori del server: percentuale media di richieste in entrata che generano codici di errore HTTP della serie 5xx nel periodo di tempo selezionato.
    • Latenza P95: il 95° percentile di latenza per una richiesta di servizio aggregato nel periodo di tempo selezionato, in millisecondi.
    • Utilizzo CPU: la percentuale media di utilizzo della CPU per un workload, aggregata nel periodo di tempo specificato. I valori sono in genere numeri compresi tra 0,0 e 100,0, ma possono superare 100,0.
    • Utilizzo della memoria: la percentuale media di utilizzo della memoria per un workload, aggregata nel periodo di tempo specificato.

(Facoltativo) Esplorare le metriche utilizzando i grafici

Per rappresentare graficamente le metriche per i tuoi progetti App Hub, utilizza Metrics Explorer. Puoi limitare i dati rappresentati nel grafico applicando filtri basati sulle etichette. Per ulteriori informazioni, consulta Crea grafici con Esplora metriche.

Le seguenti etichette metadati di sistema di App Hub sono disponibili per il filtro (anteprima):

  • apphub_application_host_project_id
  • apphub_application_id
  • apphub_application_location
  • apphub_workload_criticality_type
  • apphub_workload_environment_type
  • apphub_workload_id

Per visualizzare le etichette dei metadati di App Hub su un grafico, segui queste istruzioni. Puoi seguire la stessa procedura per le altre etichette dei metadati di sistema e per le metriche di App Hub.

  1. Nella console Google Cloud , vai alla pagina  Esplora metriche:

    Vai a Esplora metriche

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

  2. Nella barra degli strumenti della console Google Cloud , seleziona il tuo progetto Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host di App Hub o il progetto di gestione della cartella app.
  3. Nell'elemento Metrica, espandi il menu Seleziona una metrica, digita VM Instance nella barra dei filtri e poi utilizza i sottomenu per selezionare un tipo di risorsa e una metrica specifici:
    1. Nel menu Risorse attive, seleziona Istanza VM.
    2. Nel menu Categorie di metriche attive, seleziona Metriche più utilizzate.
    3. Nel menu Metriche attive, seleziona Utilizzo CPU.
    4. Fai clic su Applica.
    Il nome completo di questa metrica è compute.googleapis.com/instance/cpu/utilization.
  4. Per aggiungere filtri, che rimuovono le serie temporali dai risultati della query, utilizza l'elemento Filtro.

  5. Configura la modalità di visualizzazione dei dati. Per visualizzare solo le metriche per un'etichetta specifica, segui questi passaggi:
    1. Nell'elemento Filtro, fai clic su Aggiungi filtro, quindi seleziona apphub_application_id. Per il valore, inserisci un nome App Hub specifico.
    2. Nella voce Aggregazione, imposta il primo menu su Nessuna aggregazione.

    Per ulteriori informazioni sulla configurazione di un grafico, consulta Seleziona le metriche durante l'utilizzo di Esplora metriche.

Esegui la pulizia

Pulisci un'applicazione esistente e rimuovi un progetto di servizio collegato dal progetto host per rimuovere le risorse associate al progetto. In questo modo si interrompe il rilevamento automatico delle risorse nel progetto di servizio.

Per farlo, devi prima eliminare i servizi e i carichi di lavoro registrati nell'applicazione.

Console

  1. Nella console Google Cloud , vai alla pagina Applicazioni di App Hub.

    Vai a Applicazioni

  2. Fai clic sul nome di un'applicazione. Viene visualizzato un elenco di servizi e workload registrati nell'applicazione.

  3. Annulla la registrazione di un servizio o di un workload.

    1. Nella scheda Servizi e carichi di lavoro, nella sezione Servizi e carichi di lavoro registrati, fai clic sul nome del servizio o del carico di lavoro di cui vuoi annullare la registrazione.
    2. Nella scheda Dettagli, fai clic su Annulla registrazione per aggiornare il servizio o il carico di lavoro come risorsa Rilevata.
      Nella scheda Servizi e workload, un avviso indica che il workload non è registrato.
    3. Ripeti queste istruzioni per ogni servizio e carico di lavoro.
  4. Vai alla pagina Applicazioni di App Hub.

    Vai a Applicazioni

  5. Fai clic sul nome di un'applicazione.

  6. Nella pagina con i dettagli dell'applicazione, fai clic su Elimina.

  7. Per rimuovere i progetti di servizio dal progetto host, consulta la sezione Aggiungere o rimuovere progetti di servizio di questo documento.

  8. Per rimuovere i progetti di servizio dall'ambito delle metriche del progetto host:

    1. Nella console Google Cloud , vai alla pagina  Impostazioni:

      Vai a Impostazioni

      Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

    2. Seleziona Ambito metrica.
    3. Nel riquadro Progetti Google Cloud, fai clic su Rimuovi progetto e poi completa la finestra di dialogo di conferma.

gcloud

  1. Elenca i workload registrati nell'applicazione:

    gcloud apphub applications workloads list \
      --application=APPLICATION_NAME --project=HOST_PROJECT_ID \
      --location=REGION
    
  2. Annulla la registrazione del workload dall'applicazione:

    gcloud apphub applications workloads delete WORKLOAD_NAME \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Il workload è ora un workload rilevato che può essere registrato nell'applicazione.

  3. Ripeti il comando precedente per eliminare i carichi di lavoro registrati rimanenti dall'applicazione.

  4. Elenca i servizi registrati nell'applicazione:

    gcloud apphub applications services list \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    
  5. Annulla la registrazione del servizio dall'applicazione:

    gcloud apphub applications services delete SERVICE_NAME \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Il servizio è ora un servizio rilevato che può essere registrato nell'applicazione.

  6. Ripeti il comando precedente per annullare la registrazione dei servizi registrati rimanenti dall'applicazione.

  7. Elimina l'applicazione:

    gcloud apphub applications delete APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    
  8. Rimuovi un progetto di servizio dal progetto host:

    gcloud apphub service-projects remove SERVICE_PROJECT_ID \
      --project=HOST_PROJECT_ID
    
  9. Ripeti il comando precedente per rimuovere tutti i progetti di servizio dal progetto host.

  10. Rimuovi i progetti di servizio dall'ambito delle metriche del progetto host (anteprima):

    gcloud beta monitoring metrics-scopes delete projects/SERVICE_PROJECT_ID \
      --project=HOST_PROJECT_ID
    
  11. Ripeti il comando precedente per rimuovere tutti i progetti di servizio dal progetto host dell'ambito delle metriche.

Passaggi successivi