Se stai configurando App Hub, le attività principali sono:
- Decidi se creare un nuovo progetto host di 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 abbi bisogno di una rete VPC condiviso per utilizzare App Hub. In questo documento, tutti i riferimenti ai progetti host si riferiscono ai progetti host di App Hub.
- Un progetto host non può essere un progetto di servizio, tranne che per se stesso.
- Abilita l'API App Hub nel progetto host.
- 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 ai progetti di servizio App Hub.
- Designa gli utenti di App Hub come amministratori, editor o visualizzatori di App Hub.
- Creare applicazioni.
- Registra i servizi e i carichi di lavoro nell'applicazione.
Servizi e workload
Con App Hub, le risorse dei progetti di servizio collegati al progetto host sono disponibili come servizi e workload. La registrazione dei tuoi servizi e carichi di lavoro a un'applicazione ti consente di osservare e monitorare le risorse. Puoi designare le seguenti risorse come servizi App Hub e registrarle alle applicazioni App Hub:
- Regole di forwarding
- Mappe URL
- Servizi di backend
Puoi designare i gruppi di istanze gestite (MIG), ma non le singole VM, come carichi di lavoro e registrarli alle applicazioni App Hub.
App Hub supporta le risorse globali (Anteprima) e regionali. Per maggiori informazioni, consulta le risorse supportate di App Hub.
Procedura di configurazione complessiva
Il seguente elenco riepiloga i passaggi per configurare App Hub:
- Determina quali risorse esistenti includere nella tua applicazione e a quali progetti appartengono.
- Crea un progetto host App Hub e abilita l'API App Hub nel progetto. Facoltativamente, in base alla struttura organizzativa della tua attività, puoi creare più di un progetto host. Se crei più progetti, ti consigliamo di farlo in una nuova cartella.
- Collega i progetti di servizio. Dopo aver configurato un progetto host, collega al progetto host i progetti di servizio con le risorse di base necessarie per le tue applicazioni. Tieni presente quanto segue:
- I progetti di servizio devono trovarsi nella stessa organizzazione del progetto host. Dopo aver associato 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.
- Un progetto di servizio non può essere collegato a più di un progetto host.
- Un progetto host può essere un progetto di servizio autonomo, ma non può essere un progetto di servizio per qualsiasi altro progetto host.
- Dopo aver associato i progetti di servizio a un progetto host, eseguire una query sul progetto host per i servizi o i carichi di lavoro restituisce automaticamente tutti i servizi e i carichi di lavoro in tutti i progetti di servizio.
- Crea un'applicazione per organizzare più servizi e carichi di lavoro. Tieni presente quanto segue:
- Assicurati che l'applicazione abbia un nome univoco nel progetto e nella posizione host.
- Un progetto di servizio può essere associato a un progetto host con più applicazioni, ma le sue singole risorse possono essere registrate in una sola applicazione.
- Esegui query su servizi e carichi di lavoro e registrali nella tua applicazione.
Dopo aver creato un'applicazione, esegui una query sul progetto host per trovare i servizi e i carichi di lavoro disponibili. Le query vengono eseguite nel progetto host e in tutti i progetti di servizio collegati al progetto host. Inoltre, restituiscono tutti i servizi e i carichi di lavoro in questi progetti. Tieni presente quanto segue:
- Puoi registrare un servizio o un carico di lavoro solo in una singola applicazione.
- 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, consulta Località.
- I servizi e i workload registrati non sono interessati dagli aggiornamenti della risorsa dell'infrastruttura di base. In altre parole, se elimini le risorse di base che fungono da servizi e carichi di lavoro, App Hub non elimina i carichi di lavoro e i servizi associati dalla tua applicazione. Devi annullare la registrazione del workload o del servizio separatamente.
Prerequisiti
Prima di configurare App Hub, completa le seguenti attività.
- Decidi quale progetto esistente deve essere il progetto host o creane uno nuovo. Ti consigliamo vivamente di creare un nuovo progetto.
- Assicurati di aver deciso chi detiene i ruoli IAM (Identity and Access Management) per App Hub: amministratore di App Hub, editor di App Hub e visualizzatore di 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 disporre del ruolo IAM App Hub Admin sia nel progetto di servizio sia nel progetto host. Per ulteriori informazioni, consulta Ruoli e autorizzazioni di App Hub.
Configurare App Hub
In questa sezione, crei un'architettura di App Hub di esempio.
Nell'esempio, un'organizzazione ha tre progetti di servizio, con le relative risorse di infrastruttura implementate nei progetti come segue:
- Il progetto di servizio 1 ha due risorse di infrastruttura, Servizio 1 e Servizio 2.
- Il progetto di servizio 2 ha tre risorse di 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 ad aggiustare l'esempio man mano che segui le istruzioni.
Le sezioni seguenti contengono le istruzioni per creare un exampleApp Hub. Creando un progetto host e aggiungendo progetti di servizio al progetto host, puoi creare un'applicazione e collegare servizi e carichi di lavoro all'applicazione. L'esempio contiene tre progetti di servizio, ma puoi aggiungerne meno o di più.
L'esempio presuppone che tutti i progetti di servizio aggiunti esistano già e contengono servizi e carichi di lavoro che aggiungi all'applicazione. Prima di creare l'esempio, determina quali progetti di servizi contengono i servizi e i carichi di lavoro da includere nell'applicazione.
Attivare App Hub
In questa sezione, seleziona o crea un nuovo progetto host, attiva l'API App Hub e concedi i ruoli e le autorizzazioni appropriati alle persone della tua organizzazione. Collega anche i progetti di servizio al progetto host.
Console
Nella console Google Cloud, vai alla pagina di selezione del progetto.
Seleziona o crea un progetto Google Cloud, che sarà il progetto host di App Hub.
-
Enable the required API.
Se sei il creator del progetto, ti viene assegnato il ruolo di proprietario di base (
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 il creator del progetto, le autorizzazioni richieste devono essere concesse al principale appropriato nel progetto. Ad esempio, un'entità può essere un Account Google (per gli utenti finali) o un account di servizio (per le applicazioni e i 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:
Nella console Google Cloud, vai alla pagina IAM.
Fai clic su
Concedi accesso. Viene visualizzato il riquadro Concedi l'accesso.Nel campo Nuove entità, inserisci l'indirizzo email della persona che amministrerà App Hub, ovvero il ruolo Amministratore App Hub nel progetto host.
Fai clic su Seleziona un ruolo e nel campo Filtro, inserisci App Hub.
Seleziona il ruolo Amministratore App Hub e fai clic su Salva.
In ogni progetto di servizio App Hub, concedi allo stesso utente il ruolo Amministratore App Hub.
Nella console Google Cloud, vai alla pagina Impostazioni di App Hub.
Nella pagina Impostazioni, fai clic su Allega progetti.
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 seleziona quelli da aggiungere come progetti di servizio.
Fai clic su Seleziona. La tabella Progetti di servizio collegati mostra i progetti di servizio selezionati.
Fai clic su Chiudi.
gcloud
-
In the Google Cloud console, 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.
Assicurati che sia installata la versione più recente di Google Cloud CLI. Esegui il seguente comando da Cloud Shell:
gcloud components update
Crea o seleziona un nuovo progetto,
HOST_PROJECT_ID
, da utilizzare 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
- Crea un progetto Google Cloud:
Abilita l'API App Hub nel progetto host appena creato.
gcloud services enable apphub.googleapis.com \ --project=HOST_PROJECT_ID
Se sei il creator del progetto, ti viene assegnato il ruolo di proprietario di base (
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 il creator del progetto, le autorizzazioni richieste devono essere concesse al principale appropriato nel progetto. Ad esempio, un'entità può essere un Account Google (per gli utenti finali) o un account di servizio (per le applicazioni e i 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:
Facoltativamente, concedi alle persone che amministreranno App Hub il ruolo di amministratore 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 Amministratore App Hub nel progetto host. Questo valore ha il formatousername@yourdomain
, ad esempiorobert.smith@example.com
.Concedi il ruolo Amministratore di App Hub nei progetti di servizio alle persone che amministrano App Hub. Deve disporre del ruolo di amministratore di App Hub per aggiungere progetti di servizio al progetto host. Per ogni progetto di servizio è necessaria almeno una persona con questo ruolo. Una singola persona può avere il ruolo in più progetti di servizi.
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 di tre progetti di servizi in questo esempio.SERVICE_PROJECT_2
: il secondo di tre progetti di servizi in questo esempio.SERVICE_PROJECT_3
: il terzo dei tre progetti di servizio in questo esempio.
Aggiungi i progetti di servizio al progetto host 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
(Facoltativo) Aggiungi i 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 i set di contenitori di risorse i cui dati delle serie temporali possono essere tracciati e monitorati dal progetto host. Per ulteriori informazioni su contenitori di risorse, ambito delle metriche e progetti di ambito, consulta Cloud Monitoring: modello di dati.
Per visualizzare le metriche di sistema di un'applicazione, devi aggiungere o eliminare manualmente i progetti di servizi monitorati, se necessario, dai progetti host. Tuttavia, se utilizzi il progetto host come progetto di servizio autonomo, 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:
- Per ottenere le autorizzazioni necessarie per visualizzare le metriche per le applicazioni App Hub, chiedi all'amministratore di concedere il ruolo IAM Visualizzatore monitoraggio (
roles/monitoring.viewer
) alle entità. Per ulteriori informazioni, consulta Concedere l'accesso al monitoraggio. Per ottenere le autorizzazioni necessarie per configurare un ambito delle metriche, chiedi all'amministratore di concederti il ruolo IAM Amministratore monitoraggio (
roles/monitoring.admin
) nel progetto di definizione dell'ambito e in ogni contenitore di risorse che vuoi aggiungere all'ambito delle metriche. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Console
-
Nella console Google Cloud, vai alla pagina settings Impostazioni:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
Seleziona Ambito delle metriche.
La scheda Ambito delle metriche elenca le risorse monitorate dal progetto Google Cloud corrente. Vengono elencati anche i progetti Google Cloud il cui ambito delle metriche include il progetto Google Cloud corrente.
Per aggiungere progetti Google Cloud all'ambito delle metriche:
- Nel riquadro Progetti Google Cloud, fai clic su Aggiungi progetti.
- Nella finestra di dialogo Aggiungi progetti Google Cloud, fai clic su Seleziona progetti e poi seleziona le caselle di controllo per i progetti di servizi richiesti che vuoi monitorare.
Per salvare le modifiche, fai clic su Aggiungi progetti.
Viene visualizzata la pagina Impostazioni con la tabella aggiornata in modo da elencare le tue selezioni.
Dopo aver aggiunto i progetti a un ambito delle metriche, sono necessari circa 60 secondi per la propagazione delle modifiche in tutti i sistemi di monitoraggio.
Per scoprire di più sulla configurazione degli ambiti delle metriche utilizzando la console Google Cloud, consulta Configurare un ambito delle metriche.
gcloud
Per aggiungere i progetti di servizio come contenitore di risorsa monitorata al progetto host 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 ulteriori informazioni 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 ancora una, crea un'applicazione che fungerà da contenitore per i tuoi servizi e carichi di lavoro. In base all'ambito dei servizi e dei carichi di lavoro dei tuoi progetti di servizi, crea un'applicazione globale (Anteprima) o regionale.
- Un'applicazione globale (anteprima) ti consente di registrare i servizi e i carichi di lavoro rilevati dalle risorse Google Cloud regionali e globali.
- Un'applicazione regionale ti consente di registrare i servizi e i carichi di lavoro rilevati dalle risorse Google Cloud regionali.
Tieni presente che dopo aver creato un'applicazione, non puoi modificarne l'ambito. Per ulteriori informazioni sulle applicazioni globali e regionali, consulta App Hub: applicazioni globali e regionali.
Console
- Assicurati di essere nel progetto host.
Nella console Google Cloud, vai alla pagina Applications (Applicazioni) di App Hub.
Fai clic su Crea applicazione.
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 carichi di lavoro da una posizione globale, seleziona Globale (anteprima).
Per creare un'applicazione che ti consenta di registrare servizi e workload da un'unica posizione:
- Seleziona Regionale.
- Seleziona una Regione.
Inserisci il nome dell'applicazione e fai clic su Continua.
Se vuoi, aggiungi altri dettagli per la richiesta nei campi che seguono. Per ulteriori informazioni, consulta Aggiornare un'applicazione App Hub esistente in questo documento.
Fai clic su Crea.
gcloud
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 dell'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
(Anteprima)
REGION
: la regione dell'applicazione. A seconda del valore di--scope-type
, assegna il valoreus-east1
oglobal
(Anteprima).
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
Visualizza 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 dell'applicazione dopo la sua creazione.
Console
Nella console Google Cloud, vai alla pagina Applications (Applicazioni) di App Hub.
Nell'elenco delle applicazioni, fai clic su
Modifica in corrispondenza dell'applicazione che vuoi aggiornare.Modifica i campi in base alle esigenze e fai clic su Salva.
(Facoltativo) Nell'elenco Criticità, per indicare l'importanza dell'applicazione, seleziona una delle seguenti opzioni:
- Mission critical
- Alta
- Medio
- Bassa
(Facoltativo) Nell'elenco Ambiente, per indicare la fase del ciclo di vita del software, seleziona una delle seguenti opzioni:
- Produzione
- Staging
- Sviluppo
- Test
(Facoltativo) Aggiungi i seguenti dettagli come richiesto per i proprietari sviluppatori, proprietari operatori e proprietari di attività. Tieni presente che devi inserire l'indirizzo email del proprietario se aggiungi un nome visualizzato.
- Inserisci il nome visualizzato di un proprietario.
- Inserisci l'indirizzo email del proprietario. Questo valore deve avere il formato
username@yourdomain
, ad esempio222larabrown@gmail.com
.
Ripeti questi passaggi per ogni sviluppatore, operatore e proprietario dell'attività.
Fai clic su Salva.
gcloud
Aggiorna l'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 sia critica un'applicazione, un servizio o un carico di lavoro per le 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
eDISPLAY-NAME-BUSINESS
: nomi visualizzati rispettivamente dello sviluppatore, dell'operatore e dei proprietari dell'attività.EMAIL-NAME-DEVELOPER
,EMAIL-NAME-OPERATOR
eEMAIL-NAME-BUSINESS
: indirizzi email dello sviluppatore, dell'operatore e dei proprietari dell'attività, rispettivamente. Questi valori devono avere il formatousername@yourdomain
, ad esempio222larabrown@gmail.com
.
Elenca le applicazioni in cui l'attributo
environment-type
ha il valorePRODUCTION
.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 carichi di lavoro di infrastruttura a un'applicazione, questi vengono registrati come risorse di App Hub. Utilizza un'applicazione globale (Anteprima) per registrare risorse globali o distribuite su più regioni. Utilizza un'applicazione regionale per registrare le risorse della stessa regione dell'applicazione. 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 ha tre risorse di 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.
Console
Nella console Google Cloud, vai alla pagina Applications (Applicazioni) di App Hub.
Fai clic sul nome dell'applicazione. La scheda Servizi e workload mostra un elenco di servizi e workload registrati nei tuoi progetti di servizi.
Per ogni servizio o carico di lavoro da registrare:
- Nella scheda Servizi e workload, fai clic su Registra servizio/workload.
- 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.
- Nel riquadro Seleziona risorsa, scegli un servizio o un carico di lavoro e fai clic su Seleziona.
- Nel riquadro Seleziona risorsa, inserisci un Nome per il servizio o il carico di lavoro e fai clic su Continua.
- Se vuoi, nel riquadro Aggiungi attributi, aggiungi ulteriori dettagli per il servizio o il carico di lavoro nei campi che seguono. Per ulteriori informazioni, consulta la sezione Aggiornare un'applicazione App Hub esistente in questo documento. Tieni presente che puoi selezionare valori per i campi Criticità e Ambiente diversi da quelli impostati quando crei l'applicazione.
- Fai clic su Continua.
- Se vuoi, nella sezione Aggiungi proprietari, aggiungi ulteriori dettagli sui proprietari del servizio o del workload nei campi che seguono. Per ulteriori informazioni, consulta la sezione Aggiornare un'applicazione App Hub esistente in questo documento.
- Fai clic su Registrati.
La scheda Servizi e carichi di lavoro mostra il servizio o il workload registrato. Per ulteriori informazioni sugli stati di registrazione, consulta le proprietà e gli attributi di App Hub.
gcloud
Aggiungi una persona con 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 che ha il ruolo Editor di App Hub nel progetto host. Questo valore ha il formatousername@yourdomain
, ad esempiorobert.smith@example.com
.Elenca i carichi di lavoro rilevati dal progetto di servizio 2, collegato al progetto host. Questo comando restituisce i workload disponibili per essere registrati a 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 del carico di lavoro dall'output da utilizzare nel passaggio successivo.
Registra un carico di lavoro dal passaggio precedente alla 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 del workload dall'output del passaggio precedente.
Ripeti i due passaggi precedenti per filtrare e registrare i carichi di lavoro che ti interessano dal progetto di servizio 3.
(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
eenvironment-type
, ma il valore può essere diverso da quelli impostati durante la creazione dell'applicazione.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 carichi di lavoro registrati, ma scollegati, sono indicati da un valore vuoto nel
WORKLOAD_REFERENCE
campo. Per ulteriori informazioni sugli stati di registrazione, consulta le proprietà e gli attributi di App Hub.Elenca i servizi rilevati con regole di inoltro nel progetto di servizio 1 collegato al progetto host. Questo comando restituisce i servizi disponibili per la registrazione 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.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 ricavato dall'output del passaggio precedente.
Ripeti i passaggi precedenti per elencare i servizi, filtrarli e registrarli nei progetti di servizi 1, 2 e 3.
Aggiorna un servizio con l'attributo
criticality-type
e l'attributoenvironment-type
.gcloud apphub applications services update SERVICE_NAME \ --criticality-type='CRITICALITY_LEVEL' \ --environment-type='ENVIRONMENT' \ --application=APPLICATION_NAME \ --project=HOST_PROJECT_ID \ --location=REGION
Elenca i servizi registrati nell'
APPLICATION_NAME
applicazione e nelHOST_PROJECT_ID
progetto host.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 scollegati, sono indicati da un valore vuoto nel
SERVICE_REFERENCE
.Filtra i servizi nell'
APPLICATION_NAME
applicazione e nel progetto hostHOST_PROJECT_ID
in base a quelli in cui l'attributoenvironment-type
è impostato suPRODUCTION
.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 è completata.
Aggiungere o rimuovere progetti di servizi
Puoi modificare i collegamenti dei progetti di servizi per rendere disponibili diverse risorse di 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 ulteriori informazioni, consulta la sezione Aggiungere progetti di servizio all'ambito delle metriche del progetto host in 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 ulteriori informazioni, consulta in questo documento la procedura per rimuovere i progetti di servizio dall'ambito delle metriche del progetto host.
Console
Per aggiungere un progetto di servizio a un progetto host:
Nella console Google Cloud, vai alla pagina Impostazioni di App Hub.
Nella pagina Impostazioni, fai clic su Allega progetti.
Nel riquadro visualizzato, cerca i progetti nell'elenco visualizzato e seleziona le caselle di controllo per i progetti da aggiungere come progetti di servizi.
Fai clic su Seleziona. La tabella Progetti di servizio collegati mostra i progetti selezionati come progetti di servizio per il progetto host.
Fai clic su Chiudi.
Per rimuovere un progetto di servizio da un progetto host:
Nella console Google Cloud, vai alla pagina Impostazioni di App Hub.
Nella pagina Impostazioni, seleziona le caselle di controllo per i progetti da rimuovere come progetti di servizio.
Fai clic su Scollega progetti. La tabella Progetti di servizio collegati viene aggiornata in modo da mostrare 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
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 le applicazioni, i servizi e i workload esistenti
Puoi visualizzare le applicazioni in un progetto ed elencare i servizi e i carichi di lavoro in un'applicazione.
Console
Per visualizzare le applicazioni in un progetto:
Nella console Google Cloud, vai alla pagina App di App Hub.
(Facoltativo) Per filtrare l'applicazione:
- Nel campo Filtro, seleziona un filtro come Criticità.
- Seleziona Alto come valore.
Viene visualizzato un elenco di applicazioni di elevata criticità create nel progetto host.
Per elencare i servizi e i workload:
Applicazioni
Nella console Google Cloud, vai alla pagina Applications (Applicazioni) di App Hub.
Fai clic sul nome di un'applicazione. Viene visualizzata una pagina con un elenco di servizi e carichi di lavoro registrati per la tua applicazione.
(Facoltativo) Per filtrare i servizi o i workload:
- Nel campo Filtro, seleziona un filtro come Criticità.
- Seleziona Alto come valore.
Viene visualizzato un elenco di servizi e carichi di lavoro di elevata criticità registrati per l'applicazione.
Servizi e workload
Nella console Google Cloud, vai alla pagina Servizi e carichi di lavoro di App Hub.
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.(Facoltativo) Per filtrare i servizi o i workload:
- Nel campo Filtro, seleziona un filtro, ad esempio Ambiente.
- Seleziona Produzione come valore.
Viene visualizzato un elenco di servizi e carichi di lavoro 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
filter
flag di comando ai comandi precedenti. Ad esempio, per elencare tutti i carichi di lavoro registrati in cui l'attributocriticality-type
è impostato suHIGH
:gcloud apphub applications workloads list \ --application=APPLICATION_NAME \ --filter='attributes.criticality.type=HIGH' \ --project=HOST_PROJECT_ID \ --location=REGION
Per ulteriori informazioni sugli attributi con cui puoi filtrare, consulta Aggiornare un'applicazione App Hub esistente in questa pagina.
(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 finali (traffico, errori, latenza e saturazione) che aiutano a monitorare le prestazioni e lo stato dell'applicazione.
Nella console Google Cloud, vai alla pagina Applications (Applicazioni) di App Hub.
Fai clic sul nome di un'applicazione.
La scheda Servizi e workload viene visualizzata con i metadati dei servizi e dei workload registrati nella tua applicazione.
(Facoltativo) Per modificare il periodo di tempo per il quale vengono visualizzate le metriche, utilizza il selettore dell'intervallo di tempo. L'intervallo di tempo predefinito è 1 ora.
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 ideali:
- 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 della latenza per una richiesta di servizio aggregata nel periodo di tempo selezionato, in millisecondi.
- Utilizzo della 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) Esplora le metriche utilizzando i grafici
Per creare grafici delle metriche per i progetti App Hub, utilizza Metrics Explorer. Puoi limitare i dati visualizzati nel grafico applicando filtri basati su etichette. Per ulteriori informazioni, consulta Creare grafici con Metrics Explorer.
Puoi filtrare i dati in base alle seguenti etichette dei metadati di sistema di App Hub (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 in un grafico, segui queste istruzioni. Puoi seguire la stessa procedura per le altre etichette dei metadati di sistema e le metriche di App Hub.
-
Nella console Google Cloud, vai alla pagina leaderboard Esplora metriche:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- 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:- Nel menu Risorse attive, seleziona Istanza VM.
- Nel menu Categorie di metriche attive, seleziona Metriche più utilizzate.
- Nel menu Metriche attive, seleziona Utilizzo CPU.
- Fai clic su Applica.
compute.googleapis.com/instance/cpu/utilization
. - Configura la modalità di visualizzazione dei dati. Per visualizzare solo le metriche relative a un'etichetta specifica, segui questi passaggi:
- Nell'elemento Filtro, fai clic su Aggiungi filtro e poi seleziona apphub_application_id. Per il valore, inserisci un nome specifico per il centro app.
- Nella voce Aggregazione, imposta il primo menu su Nessuna aggregazione.
Per ulteriori informazioni sulla configurazione di un grafico, consulta Selezionare le metriche durante l'utilizzo di Metrics Explorer.
Esegui la pulizia
Ripulisci un'applicazione esistente e rimuovi un allegato del progetto di servizio dal progetto host per rimuovere le risorse associate al progetto. In questo modo viene interrotta la rilevamento automatico delle risorse nel progetto di servizio.
Per farlo, devi prima eliminare i carichi di lavoro e i servizi registrati nell'applicazione.
Console
Nella console Google Cloud, vai alla pagina App di App Hub.
Fai clic sul nome di un'applicazione. Viene visualizzato un elenco di servizi e carichi di lavoro registrati nell'applicazione.
Annullare la registrazione di un servizio o di un workload.
- Nella scheda Servizi e carichi di lavoro, fai clic sul nome del servizio o del carico di lavoro di cui vuoi annullare la registrazione nella sezione Servizi e carichi di lavoro registrati.
- Nella scheda Dettagli, fai clic su Disregistra per aggiornare il servizio o il carico di lavoro come risorsa Riscoperta.
Nella scheda Servizi e workload, un avviso indica che il workload non è registrato. - Ripeti queste istruzioni per ogni servizio e carico di lavoro.
Vai alla pagina Applicazioni di App Hub.
Fai clic sul nome di un'applicazione.
Nella pagina con i dettagli dell'applicazione, fai clic su Elimina.
Per rimuovere i progetti di servizio dal progetto host, consulta la sezione Aggiungere o rimuovere progetti di servizio di questo documento.
Per rimuovere i progetti di servizio dall'ambito delle metriche del progetto host:
-
Nella console Google Cloud, vai alla pagina settings Impostazioni:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Seleziona Ambito delle metriche.
- Nel riquadro Progetti Google Cloud, fai clic su Rimuovi progetto e completa la finestra di dialogo di conferma.
-
gcloud
Elenca i workload registrati nell'applicazione:
gcloud apphub applications workloads list \ --application=APPLICATION_NAME --project=HOST_PROJECT_ID \ --location=REGION
Annullare la registrazione del carico di lavoro dall'applicazione:
gcloud apphub applications workloads delete WORKLOAD_NAME \ --application=APPLICATION_NAME \ --project=HOST_PROJECT_ID \ --location=REGION
Il carico di lavoro ora è un carico di lavoro rilevato che può essere registrato nell'applicazione.
Ripeti il comando precedente per eliminare i restanti carichi di lavoro registrati dall'applicazione.
Elenca i servizi registrati nell'applicazione:
gcloud apphub applications services list \ --application=APPLICATION_NAME \ --project=HOST_PROJECT_ID \ --location=REGION
Annullare 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.
Ripeti il comando precedente per annullare la registrazione dei servizi registrati rimanenti dall'applicazione.
Elimina l'applicazione:
gcloud apphub applications delete APPLICATION_NAME \ --project=HOST_PROJECT_ID \ --location=REGION
Rimuovi un progetto di servizio dal progetto host:
gcloud apphub service-projects remove SERVICE_PROJECT_ID \ --project=HOST_PROJECT_ID
Ripeti il comando precedente per rimuovere tutti i progetti di servizio dal progetto host.
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
Ripeti il comando precedente per rimuovere tutti i progetti di servizio dal progetto host dell'ambito delle metriche.