Configura App Hub

Questo documento fornisce istruzioni per configurare App Hub per creare, utilizzare e gestire applicazioni su Google Cloud. È destinato a chi configura e amministra App Hub.

Se stai configurando App Hub, le attività principali sono le seguenti:

  1. Decidi se creare un nuovo progetto host App Hub o utilizzare un progetto esistente come progetto host.
    • Se prevedi di avere più di un progetto host, ti consigliamo vivamente di crearli nella stessa cartella.
    • I progetti host in App Hub non sono uguali ai progetti host VPC condiviso e non hanno gli stessi requisiti. Ad esempio, non è necessaria una rete VPC condiviso per utilizzare App Hub. In questo documento, tutti i riferimenti ai progetti host sono relativi a progetti host di App Hub.
    • Un progetto host non può essere un progetto di servizio diverso da se stesso.
  2. Abilitare l'API App Hub nel progetto host.
  3. Aggiungi uno o più progetti di servizio App Hub al progetto host.
    • I progetti di servizio in App Hub non sono uguali ai progetti di servizio VPC condiviso e non hanno gli stessi requisiti. In questo documento, tutti i riferimenti ai progetti di servizio si riferiscono a progetti di servizio App Hub.
  4. Specifica gli utenti di App Hub come amministratori, editor o visualizzatori di App Hub.
  5. Creare applicazioni.
  6. Registra servizi e carichi di lavoro nell'applicazione.

Servizi e carichi di lavoro

Con App Hub, le risorse dei progetti di servizio collegati al progetto host sono disponibili come servizi e carichi di lavoro. La registrazione di servizi e carichi di lavoro in un'applicazione consente di osservare e monitorare le risorse. Puoi designare le seguenti risorse come servizi App Hub e registrarle nelle applicazioni App Hub:

  • Regole di forwarding
  • Mappe URL
  • Servizi di backend

Puoi designare come carichi di lavoro gruppi di istanze gestite, ma non singole VM, e registrarli nelle applicazioni App Hub.

App Hub supporta i bilanciatori del carico delle applicazioni interni ed esterni L7 a livello di regione con traffico HTTP o HTTPS.

I carichi di lavoro e i servizi che registri devono trovarsi nella stessa regione dell'applicazione; pertanto, le istruzioni e i comandi che seguono presuppongono che tutte le risorse si trovino nella stessa regione. Per informazioni sulle regioni che puoi indicare, consulta la sezione Località.

Procedura di configurazione generale

Il seguente elenco riassume i passaggi per configurare App Hub:

  1. Determina quali risorse esistenti includere nell'applicazione e a quali progetti appartengono.
  2. Crea un progetto host App Hub e abilita l'API App Hub nel progetto. Facoltativamente, in base alla struttura organizzativa della tua azienda, puoi creare più di un progetto host. Se crei più progetti, ti consigliamo di crearli in una nuova cartella.
  3. Collega progetti di servizio. Dopo aver configurato un progetto host, collega i progetti di servizio alle risorse sottostanti necessarie per le tue applicazioni al progetto host. Nota:
    1. I progetti di servizio devono trovarsi nella 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 il collegamento 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 proprio progetto di servizio, ma non può essere per nessun altro progetto host.
    4. Dopo aver collegato i progetti di servizio a un progetto host, l'esecuzione di query sul progetto host per trovare servizi o carichi di lavoro restituisce automaticamente tutti i servizi e i carichi di lavoro di tutti i progetti di servizio.
  4. Crea un'applicazione per organizzare più carichi di lavoro e servizi. Tieni presente quanto segue:
    1. Assicurati che l'applicazione abbia un nome univoco nel progetto host e nella posizione.
    2. Un progetto di servizio può essere collegato a un progetto host con più applicazioni, ma le sue singole risorse possono essere registrate in una sola applicazione.
  5. Esegui query per servizi e carichi di lavoro e registrali nella tua applicazione. Dopo aver creato un'applicazione, esegui una query sul progetto host per verificare 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 inoltre tutti i servizi e i carichi di lavoro nei progetti. Nota:
    1. Puoi registrare un solo servizio o carico di lavoro in una singola applicazione.
    2. Tutti i carichi di lavoro e i servizi che registri devono trovarsi nella stessa regione dell'applicazione.
    3. I servizi e i carichi di lavoro registrati non sono interessati dagli aggiornamenti della risorsa dell'infrastruttura sottostante. In altre parole, se elimini le risorse sottostanti che agiscono come servizi e carichi di lavoro, App Hub non elimina i carichi di lavoro e i servizi associati dalla tua applicazione. Devi annullare separatamente la registrazione del carico di lavoro o del servizio.

Prerequisiti

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

  1. Decidi quale progetto esistente è il progetto host o creane uno nuovo come progetto host. Ti consigliamo vivamente di creare un nuovo progetto.
  2. Assicurati di aver deciso di quali utenti detengono i ruoli IAM (Identity and Access Management) per App Hub: Amministratore App Hub, Editor App Hub e Visualizzatore App Hub.

Tieni presente quanto segue:

  • I progetti host possono avere uno o più progetti di servizio collegati.
  • Un progetto di servizio non può essere collegato a più di un progetto host.
  • La persona che collega un progetto di servizio a un progetto host deve avere il ruolo IAM Amministratore App Hub sia nel progetto di servizio sia nel progetto host. Per ulteriori informazioni, consulta Ruoli e autorizzazioni di App Hub.

Configura App Hub

In questa sezione creerai un'architettura di App Hub di esempio.

Nell'esempio, un'organizzazione ha tre progetti di servizio di cui è stato eseguito il deployment delle risorse di infrastruttura 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 include tre risorse di infrastruttura: Servizio 3, Carico di lavoro 1 e Carico di lavoro 2.
  • Il progetto di servizio 3 include tre risorse di infrastruttura: Servizio 4, Carico di lavoro 3 e Carico di lavoro 4.

Assicurati che i progetti scelti per la creazione dell'esempio contengano le risorse descritte in questa sezione oppure preparati a modificare l'esempio man mano che segui le istruzioni.

Le seguenti sezioni contengono le istruzioni per creare un esempio di App Hub. Crei un progetto host e aggiungi progetti di servizio al progetto host, quindi crei un'applicazione e colleghi servizi e carichi di lavoro all'applicazione. L'esempio include tre progetti di servizio, ma puoi aggiungerne meno o più.

L'esempio presuppone che esista già qualsiasi progetto di servizio che aggiungi e che contenga i servizi e i carichi di lavoro aggiunti all'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 puoi selezionare o creare un nuovo progetto host, abilitare l'API App Hub e concedere i ruoli e le autorizzazioni appropriati alle persone della tua organizzazione. Puoi anche collegare i progetti di servizio al progetto host.

Console

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

    Vai al selettore progetti

  2. Seleziona o crea un progetto Google Cloud da utilizzare come progetto host di App Hub.

  3. Attiva l'API richiesta.

    Abilita l'API

  4. Se sei l'autore del progetto, ti viene concesso il ruolo Proprietario di base (roles/owner). Per impostazione predefinita, questo ruolo IAM (Identity and Access Management) 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 per il progetto all'entità appropriata. Ad esempio, un'entità può essere un Account Google (per gli utenti finali) o un account di servizio (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 sul tuo progetto:

    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 e 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 App Hub e fai clic su Salva.

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

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

    Vai alle Impostazioni

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

  7. Esegui una di queste operazioni:

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

  9. Fai clic su Chiudi.

gcloud

  1. Nella console Google Cloud, attiva Cloud Shell.

    Attiva Cloud Shell

    Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell che mostra un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installato e con valori già impostati per il progetto attuale. L'inizializzazione della sessione può richiedere alcuni secondi.

  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, come progetto host per App Hub.

    • Crea 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
    
  5. Se sei l'autore del progetto, ti viene concesso il ruolo Proprietario di base (roles/owner). Per impostazione predefinita, questo ruolo IAM (Identity and Access Management) 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 per il progetto all'entità appropriata. Ad esempio, un'entità può essere un Account Google (per gli utenti finali) o un account di servizio (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 sul tuo progetto:

    1. Se vuoi, concedi alle persone che amministreranno App Hub il ruolo Amministratore di App Hub nel progetto host. Ripeti il seguente comando per ciascun 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 Amministratore App Hub nel progetto host. Questo valore ha il formato username@yourdomain, ad esempio robert.smith@example.com.

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

      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 progetti di servizio in questo esempio.
      • SERVICE_PROJECT_3: il terzo dei tre progetti di servizio in questo esempio.
  6. Aggiungi i progetti di servizio al progetto host di App Hub.

    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
    

Crea un'applicazione

Se non ne hai già una, crea un'applicazione che funga da container per i tuoi servizi e carichi di lavoro.

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. Viene visualizzato il riquadro Crea applicazione.

  4. Seleziona una Regione.

  5. Inserisci il Nome applicazione e fai clic su Continua.

  6. Nella sezione Aggiungi attributi, inserisci il Nome visualizzato.

  7. Se vuoi, aggiungi altri dettagli sull'applicazione nei campi che seguono. Per ulteriori informazioni, in questo documento, vedi Aggiornare un'applicazione App Hub esistente.

  8. Fai clic su Crea.

gcloud

  1. Crea una nuova applicazione denominata APPLICATION_NAME e assegnale un nome visualizzato, APPLICATION_DISPLAY_NAME. Il flag --scope-type definisce quali servizi e carichi di lavoro possono essere registrati in un'applicazione. È supportato solo REGIONAL, il che significa che è possibile registrare solo i servizi e i carichi di lavoro della stessa regione dell'applicazione.

    gcloud apphub applications create APPLICATION_NAME \
      --display-name='APPLICATION_DISPLAY_NAME' \
      --scope-type=REGIONAL \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Sostituisci quanto segue:

    • APPLICATION_NAME: il nome della tua applicazione. Il nome deve includere caratteri alfanumerici minuscoli senza spazi.
    • APPLICATION_DISPLAY_NAME: il nome visualizzato della tua applicazione.
    • REGION: la regione dell'applicazione. Assegna il valore us-east1.
  2. Elenca le applicazioni nel tuo progetto host.

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

    L'output è simile al seguente:

    ID: APPLICATION_NAME
    DISPLAY_NAME: APPLICATION_DISPLAY_NAME
    CREATE_TIME: 2023-10-31T18:33:48
    
  3. Ottieni 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 all'esempio seguente.

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

Aggiorna un'applicazione App Hub esistente

Puoi aggiornare gli attributi dell'applicazione anche dopo averla creata.

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 in corrispondenza dell'applicazione che vuoi aggiornare.

  3. Modifica i campi come richiesto e fai clic su Salva.

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

    • Missione critica
    • Alta
    • Medio
    • Bassa
  5. (Facoltativo) Nel campo Ambiente, per indicare la fase del ciclo di vita del software, seleziona una delle seguenti opzioni:

    • Produzione
    • Gestione temporanea
    • Sviluppo
    • Test
  6. (Facoltativo) Aggiungi i dettagli seguenti come richiesto per Proprietari sviluppatori, Proprietari degli operatori e Proprietari di attività. Tieni presente che devi inserire l'indirizzo email del proprietario se aggiungi un nome visualizzato.

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

  8. Fai clic su Salva.

gcloud

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

    gcloud apphub applications update 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
    

    Sostituisci quanto segue:

    • CRITICALITY_LEVEL: indica il livello di importanza di un'applicazione, un servizio o un carico di lavoro per le operazioni aziendali. Specifica uno dei seguenti valori:
      • MISSION_CRITICAL
      • HIGH
      • MEDIUM
      • LOW
    • ENVIRONMENT: indica le fasi del ciclo di vita del software. Specifica uno dei seguenti valori:
      • PRODUCTION
      • STAGING
      • DEVELOPMENT
      • TEST
    • DISPLAY-NAME-DEVELOPER, DISPLAY-NAME-OPERATOR e DISPLAY-NAME-BUSINESS: i 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 robert.smith@example.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: APPLICATION_NAME
    DISPLAY_NAME: APPLICATION_DISPLAY_NAME
    CREATE_TIME: 2023-10-31T18:33:48
    

Registra servizi e carichi di lavoro

Quando registri i servizi e i carichi di lavoro di infrastruttura in un'applicazione, questi vengono registrati come risorse App Hub. Se utilizzi i segnaposto per creare l'applicazione con gcloud CLI, i servizi e i carichi di lavoro nei tre progetti di servizio sono i seguenti:

  • Il progetto di servizio 1 ha due risorse di infrastruttura: Servizio 1 e Servizio 2.
  • Il progetto di servizio 2 include tre risorse di infrastruttura: Servizio 3, Carico di lavoro 1 e Carico di lavoro 2.
  • Il progetto di servizio 3 include tre risorse di infrastruttura: Servizio 4, Carico di lavoro 3 e Carico di lavoro 4.

Console

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

    Vai a Applicazioni

  2. Fai clic sul nome della tua applicazione. Viene visualizzata la scheda Servizi e carichi di lavoro con un elenco di servizi e carichi di lavoro registrati che si trovano nei tuoi progetti di servizio.

  3. Per ogni servizio o carico di lavoro che vuoi registrare:

    1. Nella scheda Servizi e carichi di lavoro, fai clic su Registra servizio/carico di lavoro.
    2. Nel riquadro Registra servizio o carico di lavoro, nella sezione Scegli servizio o carico di lavoro, seleziona il servizio o il carico di lavoro e fai clic su Continua.
    3. Nella sezione Aggiungi attributi, inserisci un nome per il servizio o il carico di lavoro.
    4. Facoltativamente, aggiungi ulteriori dettagli sul servizio o sul carico di lavoro nei campi che seguono. Per maggiori informazioni, in questo documento, consulta Aggiornare un'applicazione App Hub esistente. Tieni presente che devi fornire uno dei valori specificati per i campi Criticità e Ambiente, ma il valore può essere diverso da quelli impostati al momento della creazione dell'applicazione.
    5. Fai clic su Registrati.
    6. Aggiorna la pagina per vedere lo stato di registrazione del servizio o del carico di lavoro aggiornato a Registrato. Per ulteriori informazioni sugli stati di registrazione, consulta le proprietà e gli attributi di App Hub.

gcloud

  1. Aggiungi una persona con le autorizzazioni di 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 con il ruolo Editor App Hub nel progetto host. Questo valore ha il formato username@yourdomain, ad esempio robert.smith@example.com.

  2. Elenca i carichi di lavoro rilevati dal progetto di servizio 2, collegato al progetto host. Questo comando restituisce i carichi di lavoro 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 gruppi di istanze gestite non registrate:

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

    Copia l'ID carico di lavoro dall'output per utilizzarlo nel passaggio successivo.

  3. Registra un carico di lavoro dal passaggio precedente all'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 carico di lavoro dell'output del passaggio precedente.
  4. Ripeti i due passaggi precedenti per filtrare e registrare i carichi di lavoro che vuoi nel 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 dai valori impostati quando crei l'applicazione.

  6. Elenca i carichi di lavoro registrati nell'applicazione.

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

    L'output è simile al seguente:

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

    I carichi di lavoro registrati, ma scollegati 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 in 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: [DISCOVERED_SERVICE_ID_1]
    SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/REGION/forwardingRules/testing-forwarding-rule-1'}
    SERVICE_PROPERTIES: {'gcpProject': 'projects/SERVICE_PROJECT_1', 'location': 'REGION'}
    
    ID: [DISCOVERED_SERVICE_ID_2]
    SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/REGION/forwardingRules/testing-forwarding-rule-2'}
    SERVICE_PROPERTIES: {'gcpProject': 'projects/SERVICE_PROJECT_1', 'location': 'REGION'}
    

    Copia l'ID servizio DISCOVERED_SERVICE_ID_2 dall'output per utilizzarlo 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 dell'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 gli attributi criticality-type e 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: SERVICE_NAME
    DISPLAY_NAME: mywebserver-service1
    SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/REGION/forwardingRules/testing-forwarding-rule-2'}
    CREATE_TIME: 2023-11-01T21:38:08
    

    I servizi registrati, ma scollegati 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 con 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.

Aggiungi o rimuovi progetti di servizio

Puoi modificare i collegamenti del progetto di servizio per rendere disponibili diverse risorse di infrastruttura per il raggruppamento in un'applicazione.

Console

Per aggiungere un progetto di servizio a un progetto host:

  1. Nella console Google Cloud, 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 oppure, nell'elenco visualizzato, seleziona le caselle di controllo relative ai 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 console Google Cloud, vai alla pagina Impostazioni di App Hub.

    Vai alle Impostazioni

  2. Nella pagina Impostazioni, seleziona le caselle di controllo relative ai 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

Visualizza applicazioni, servizi e carichi di lavoro esistenti

Puoi visualizzare le applicazioni in un progetto ed elencare servizi e carichi di lavoro in un'applicazione.

Console

  • Per visualizzare le applicazioni in un progetto, vai alla pagina Applicazioni della console Google Cloud.

    Vai a Applicazioni

  • Per elencare servizi e carichi di lavoro:

    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 carichi di lavoro registrati nella tua applicazione.

    3. (Facoltativo) Per filtrare i servizi o i carichi di lavoro:

      1. Nel campo Filtro, seleziona un filtro, ad esempio Criticità.
      2. Seleziona Alto come valore.
        Viene visualizzato un elenco di servizi e carichi di lavoro ad alta criticità registrati nell'applicazione.

    Servizi e carichi di lavoro

    1. Nella console Google Cloud, vai alla pagina Servizi e carichi di lavoro 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 associati associati a us-east1.

    3. (Facoltativo) Per filtrare i servizi o i carichi di lavoro:

      1. Nel campo Filtro, seleziona un filtro, ad esempio Ambiente.
      2. Seleziona Produzione come valore.
        Viene visualizzato un elenco di servizi e carichi di lavoro nell'ambiente di produzione registrati in 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

Esegui la pulizia

Eseguire la pulizia di un'applicazione esistente e rimuovere il collegamento a un progetto di servizio dal progetto host per rimuovere le risorse associate al progetto. Ciò interrompe il rilevamento automatico delle risorse nel progetto di servizio.

Per farlo, devi prima eliminare i carichi di lavoro e i servizi 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 carichi di lavoro registrati nell'applicazione.

  3. Annulla la registrazione di un servizio o di un carico di lavoro.

    1. Nella sezione Servizi e carichi di lavoro registrati della scheda Servizi e carichi di lavoro, fai clic sul nome del servizio o del carico di lavoro di cui vuoi annullare la registrazione.
    2. Nella pagina visualizzata per il servizio o il carico di lavoro registrato, fai clic su Annulla registrazione per aggiornare il servizio o il carico di lavoro come risorsa rilevata.
      Nella scheda Servizi e carichi di lavoro, un avviso segnala che il carico di lavoro 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. In questo documento, utilizza le istruzioni riportate in Aggiungere o rimuovere progetti di servizio per rimuovere i progetti di servizio dal progetto host.

gcloud

  1. Elenca i carichi di lavoro registrati nell'applicazione:

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

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

    Ora il carico di lavoro è un carico di lavoro rilevato che può essere registrato nell'applicazione.

  3. Ripeti il comando precedente per eliminare i restanti carichi di lavoro registrati 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
    

    Ora il servizio è un servizio rilevato che può essere registrato nell'applicazione.

  6. Ripeti il comando precedente per annullare la registrazione dei restanti servizi registrati 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.

Passaggi successivi