Panoramica di App Hub

Molte applicazioni cloud si evolvono per includere più risorse di infrastruttura di uno o più progetti Google Cloud, il che può complicare la gestione e la comprensione di queste risorse sia per gli sviluppatori sia per gli operatori. App Hub introduce un modo incentrato sulle applicazioni per organizzare queste risorse e aiutarti a comprendere le interazioni tra le risorse e supportare le funzioni aziendali.

Questo documento è rivolto alle persone che configurano, amministrano e utilizzano le applicazioni App Hub.

Organizzazione incentrata sulle applicazioni

App Hub è in linea con i tuoi obiettivi commerciali perché ti consente di organizzare le risorse Google Cloud in modo incentrato sulle applicazioni, allo stesso modo in cui pensi alle funzionalità aziendali. App Hub è completamente gestito da Google Cloud e non richiede l'installazione di alcuna infrastruttura aggiuntiva.

Gli amministratori di App Hub possono gestire facilmente le risorse di infrastruttura ricavate da uno o più progetti Google Cloud, semplificando le operazioni e la governance aziendali complesse su larga scala. App Hub aiuta a organizzare queste risorse di infrastruttura creando app App Hub che includono queste risorse come servizi e carichi di lavoro di App Hub. La registrazione di servizi e workload a un'applicazione può aiutarti a rispondere alle seguenti domande:

  • Quante applicazioni esistono in tutti i miei progetti?
  • In che modo i servizi e i carichi di lavoro delle mie applicazioni dipendono tra loro?
  • A chi appartengono queste applicazioni, questi servizi e questi workload?
  • Quante applicazioni sono fondamentali?
  • Quante applicazioni sono in produzione?

Ad esempio, potresti avere più team coinvolti nello sviluppo di applicazioni per la tua attività. Questi team possono creare centinaia o migliaia di risorse Google Cloud sparse in molti progetti Google Cloud. App Hub rileva automaticamente le risorse di infrastruttura e le rappresenta come astratti di servizi e carichi di lavoro. Puoi registrare questi servizi e carichi di lavoro nelle applicazioni, chiarendo la proprietà e la criticità delle risorse. Per ulteriori informazioni, consulta Concetti e modello di dati di App Hub.

Quando le risorse sono organizzate in applicazioni, puoi applicare criteri e logica di business a un'applicazione, sapendo che solo quella applicazione è interessata e quali persone della tua organizzazione sono responsabili di quell'applicazione. Ad esempio, puoi creare un'applicazione per un determinato ambiente, come la produzione, e fornire accesso con privilegi elevati ai relativi proprietari.

Se la tua attività subisce una modifica nella struttura del team, puoi trasferire facilmente la proprietà delle applicazioni con App Hub. Inoltre, quando utilizzi App Hub, puoi determinare più facilmente le dipendenze tra risorse e applicazioni diverse.

Casi d'uso

App Hub supporta i seguenti casi d'uso:

  • Organizza e categorizza le tue applicazioni: App Hub ti consente di organizzare e categorizzare le tue applicazioni utilizzando attributi come Owner, Criticality e Environment. In questo modo, è facile trovare e gestire applicazioni specifiche e le relative risorse associate.

  • Comprendere le risorse nell'applicazione: App Hub ti aiuta a comprendere la composizione delle tue applicazioni. In questo modo, sviluppatori e operatori possono capire come funzionano le tue applicazioni e quali sono le loro dipendenze.

  • Monitora le risorse nella tua applicazione (anteprima): App Hub fornisce una panoramica completa delle metriche relative ai seguenti indicatori di monitoraggio: traffico, percentuale di errori del server, latenza P95, utilizzo della CPU e utilizzo della memoria. Questi indicatori possono aiutare gli operatori a comprendere il rendimento delle applicazioni e identificare le dipendenze per risolvere i problemi.

Concetti e modello dei dati

App Hub si basa su tre concetti chiave:

  • Un'applicazione è un raggruppamento funzionale di servizi e carichi di lavoro che genera una funzionalità aziendale end-to-end.
  • Un carico di lavoro rappresenta un deployment binario che esegue il sottoinsieme logico più piccolo di una funzionalità aziendale, ad esempio un gruppo di istanze gestite (MIG) o un deployment di Google Kubernetes Engine (GKE).
  • Un servizio è un'interfaccia di rete o API che espone funzionalità ai clienti per il consumo sulla rete, ad esempio la regola di forwarding per un bilanciatore del carico.

App Hub si basa sul concetto di applicazione.

Puoi utilizzare le applicazioni e i relativi attributi associati per creare confini di governance e operativi attorno alle astrattive di servizi e carichi di lavoro. Puoi quindi utilizzare questi attributi per organizzare e individuare le applicazioni e i relativi servizi e carichi di lavoro associati durante l'esecuzione di attività come l'osservabilità, il controllo e la governance.

Modello dei dati di App Hub
Figura 1. Modello di dati di App Hub.

Lo stato di registrazione di un servizio o di un carico di lavoro nel progetto host ha uno dei seguenti valori:

  • Rilevato: servizi e carichi di lavoro che puoi registrare in un'applicazione. I servizi e i carichi di lavoro rilevati includono anche i servizi o i carichi di lavoro che elimini o annulli la registrazione da un'applicazione.
  • Registrati: servizi e carichi di lavoro registrati in un'applicazione. Puoi registrare solo un servizio o un carico di lavoro rilevato. Dopo aver registrato il servizio o il workload, lo stato della registrazione viene aggiornato da rilevato a registrato.
  • Scollegato: servizi e workload registrati a un'applicazione le cui risorse sottostanti vengono eliminate. Ad esempio, se la regola di forwarding rappresentata da un servizio viene eliminata, Registration Status (Stato registrazione) del servizio viene aggiornato in Detached (Scollegato). I servizi e i workload scollegati rimangono nell'applicazione finché non li annulli la registrazione.

Progetti host

Un progetto host ospita le risorse di App Hub (applicazioni, servizi, workload). I servizi e i workload di App Hub fungono da astrazioni per le risorse che scopri nei progetti di servizio collegati al progetto host. Un progetto host funge da confine amministrativo con le applicazioni che fanno parte di questo confine. Puoi creare confini separati con più progetti e applicazioni host che soddisfano esigenze aziendali specifiche. I progetti host ti consentono anche di gestire applicazioni tra progetti, in cui i servizi e i workload di un'applicazione sono presenti in più progetti.

Ti consigliamo di creare un nuovo progetto Google Cloud come progetto host per distinguere le risorse di infrastruttura sottostanti dai concetti del modello dei dati di App Hub. Se hai bisogno di più progetti host, ad esempio un progetto host per ogni unità aziendale indipendente, ti consigliamo di creare una nuova cartella e di aggiungervi i progetti.

In base ai ruoli IAM (Identity and Access Management) concessi al progetto host (apphub.admin, apphub.editor e apphub.viewer), puoi creare applicazioni, assegnare attributi alle applicazioni e registrare o visualizzare servizi e carichi di lavoro. Per ulteriori informazioni, consulta la sezione Ruoli e autorizzazioni di App Hub.

Per ulteriori informazioni sulla creazione di progetti host, consulta la sezione Configurare App Hub.

Progetti di servizio

Un progetto di servizio è un progetto Google Cloud che contiene le risorse dell'infrastruttura sottostante. Collega un progetto di servizio al progetto host per mettere a disposizione le risorse di infrastruttura al fine di raggrupparle in un' applicazione.

Non puoi collegare un progetto di servizio a più di un progetto host. Un progetto host può essere un progetto di servizio per se stesso, ma non per un altro progetto host.

Proprietà e attributi

Il modello dei dati di App Hub offre anche proprietà e attributi che possono migliorare la funzionalità di applicazioni, servizi e carichi di lavoro.

Le proprietà sono campi che descrivono le risorse di infrastruttura sottostanti per un servizio o un workload. Le proprietà consentono di identificare informazioni significative nelle risorse dell'infrastruttura di base che possono essere utili per l'esperienza di registrazione per servizi o carichi di lavoro. Le proprietà sono immutabili tramite App Hub e si aggiornano solo con le modifiche alla risorsa sottostante. Alcuni esempi sono ID progetto, posizione e zona.

Gli attributi sono campi mutabili che possono essere impostati per applicazioni, servizi e carichi di lavoro per identificarli e organizzarli meglio. Gli attributi di App Hub supportati includono:

  • L'attributo Owners contiene i dati di contatto di un'applicazione, un servizio o un workload. I tipi di proprietario supportati sono i seguenti:
    • developer_owners: team di sviluppo responsabile dello sviluppo e della programmazione.
    • operator_owners: il team di operatori che garantisce l'integrità del runtime e delle operazioni.
    • business_owners: team aziendale che garantisce la qualità e che le aspettative degli utenti siano soddisfatte.
  • La criticità di un'applicazione, di un servizio o di un carico di lavoro indica la sua importanza per l'azienda. I valori supportati sono:

    • Mission critical
    • Alta
    • Medie
    • Bassa
  • L'ambiente di un'applicazione, di un servizio o di un carico di lavoro è la fase del ciclo di vita di un software, ad esempio produzione, gestione temporanea o sviluppo. I valori supportati sono:

    • Produzione
    • Gestione temporanea
    • Test
    • Sviluppo

API e riferimenti gcloud

Per ulteriori informazioni sulle proprietà di App Hub, consulta i seguenti riferimenti:

Passaggi successivi