Progettare modelli di applicazioni

Gli amministratori creano modelli di applicazioni per garantire che l'architettura preferita venga utilizzata da ogni team di sviluppo. In questo modo puoi controllare le risorse e le configurazioni che gli sviluppatori utilizzano nei deployment delle loro applicazioni.

Una volta creato un modello di applicazione, gli altri utenti dello spazio possono accedervi. Puoi anche aggiungere un modello a un catalogo da condividere con altri spazi.

Gli sviluppatori possono utilizzare il tuo modello per creare ed eseguire il deployment di un'applicazione. Quando gli sviluppatori creano un'applicazione, possono configurare ogni componente dal template, ma non possono aggiungere o rimuovere componenti. Il modello genera codice Terraform, che gli sviluppatori possono scaricare o eseguire il deployment da App Design Center.

Questo documento ti aiuta a progettare, configurare e condividere un modello di applicazione utilizzando App Design Center.

Prima di iniziare

Devi disporre di uno dei seguenti ruoli nella cartella abilitata per le app o nel progetto di gestione:

  • Application Design Center Admin (roles/designcenter.admin)
  • Utente di Application Design Center (roles/designcenter.user)

Creare un modello di applicazione

Crea modelli di applicazioni per condividere la progettazione dell'architettura con i team di sviluppo. Puoi aggiungere i seguenti componenti al design del modello:

  • Asset: risorse di alto livello che ti aiutano a controllare altre risorse. Ad esempio, service account.

  • Servizi: interfacce di rete o API utilizzate sulla rete. Alcuni esempi sono Cloud Storage e Vertex AI.

  • Workload: deployment binari che eseguono funzioni aziendali. Gli esempi includono Cloud Run e Compute Engine.

Puoi scegliere tra i seguenti componenti:

Man mano che progetti il modello, App Design Center genera codice Terraform per riflettere i dettagli di progettazione e configurazione.

Specifica i dettagli del modello

I dettagli del modello ti aiutano a classificarlo e a decidere se utilizzarlo.

Per inserire i dettagli del modello:

Canvas di progettazione

  1. Dal menu di navigazione, fai clic su Modelli.

    Vai ai Modelli

  2. Fai clic su Crea modello.

  3. Nel campo ID modello, inserisci un identificatore univoco per il modello. Questo campo è obbligatorio.

  4. Nel campo Nome modello, inserisci un identificatore leggibile da mostrare nella Google Cloud console.

    Se non fornisci un nome, in questo campo viene copiato l'ID modello.

  5. Nel campo Descrizione, inserisci una breve spiegazione dello scopo dell'applicazione.

  6. Fai clic su Crea modello. Viene visualizzato il canvas di progettazione.

Interfaccia a riga di comando gcloud

Crea un nuovo modello di applicazione.

gcloud design-center spaces application-templates create APPLICATION_TEMPLATE \
--project=PROJECT \
--location=LOCATION \
--space=SPACE \
--display-name=DISPLAY_NAME \
--description=DESCRIPTION

Sostituisci quanto segue:

  • APPLICATION_TEMPLATE: l'ID del modello per il modello di applicazione che vuoi creare.
  • PROJECT: l'ID progetto di gestione.
  • LOCATION: La regione del modello di applicazione.
  • SPACE: il tuo ID spazio.
  • DISPLAY_NAME: un nome da visualizzare nella console Google Cloud .
  • DESCRIPTION: una breve descrizione.

Per saperne di più, vedi gcloud design-center spaces application-templates create.

Progettare il modello

Progetta il modello aggiungendo e collegando i componenti nel canvas di progettazione. L'esempio seguente include tre componenti connessi.

Un'applicazione web a tre livelli nel canvas di progettazione. L'applicazione include componenti frontend, backend e database.

Puoi progettare il modello aggiungendo componenti ai seguenti punti di partenza:

Per progettare il modello:

Canvas di progettazione

  1. Nell'area di progettazione, assicurati che sia selezionato Progettazione.

  2. Per iniziare, esegui una delle seguenti operazioni:

    • Per iniziare da zero, nell'area Componenti, fai clic su un componente per aggiungerlo all'area del canvas.

    • Per iniziare da un modello fornito da Google, fai clic sul nome del modello.

    • Per utilizzare la chat in linguaggio naturale per generare un modello, fai clic su Applicazione personalizzata con Gemini.

  3. Per creare un canale di comunicazione tra i componenti, esegui una delle seguenti operazioni:

    • Per connettere due componenti sul canvas, trascina un punto blu di un componente a un punto blu di un altro componente.

    • Per aggiungere un componente esistente, fai clic su Aggiungi e seleziona il componente da aggiungere.

    Per i dettagli della connessione, consulta la documentazione di configurazione per ogni risorsa supportata.

  4. Per rimuovere un componente o una connessione:

    1. Nell'area di lavoro, fai clic sul componente o sulla connessione.

    2. Nell'area Configurazione, fai clic su Elimina.

    3. Nel campo, inserisci delete.

    4. Fai clic su Elimina.

Interfaccia a riga di comando gcloud

  1. Identifica gli URI di revisione del modello per i componenti del catalogo Google che vuoi aggiungere al modello.

    gcloud design-center spaces shared-templates list \
    --google-catalog \
    --location=us-central1
    

    Per saperne di più, consulta gcloud design-center spaces shared-templates list.

  2. Aggiungi un componente al modello di applicazione.

    gcloud design-center spaces application-templates components create COMPONENT \
    --project=PROJECT \
    --location=LOCATION \
    --space=SPACE \
    --application-template=APPLICATION_TEMPLATE \
    --shared-template-revision-uri=SHARED_TEMPLATE_URI
    

    Sostituisci quanto segue:

    • COMPONENT: l'ID del componente che vuoi aggiungere al modello.
    • PROJECT: l'ID progetto di gestione.
    • LOCATION: La regione del modello di applicazione.
    • SPACE: il tuo ID spazio.
    • APPLICATION_TEMPLATE: l'ID del modello per il modello di applicazione in cui stai aggiungendo il componente.
    • SHARED_TEMPLATE_URI: l'URI del modello condiviso del componente. Ad esempio, projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1.

    Per saperne di più, consulta gcloud design-center spaces application-templates components create.

  3. Aggiungi un secondo componente al modello.

    gcloud design-center spaces application-templates components create COMPONENT_2 \
    --project=PROJECT \
    --location=LOCATION \
    --space=SPACE \
    --application-template=APPLICATION_TEMPLATE \
    --shared-template-revision-uri=SHARED_TEMPLATE_URI_2
    

    Sostituisci quanto segue:

    • COMPONENT_2: l'ID del secondo componente che vuoi aggiungere al modello.
    • PROJECT: l'ID progetto di gestione.
    • LOCATION: La regione del modello di applicazione.
    • SPACE: il tuo ID spazio.
    • APPLICATION_TEMPLATE: l'ID del modello per il modello di applicazione in cui stai aggiungendo il componente.
    • SHARED_TEMPLATE_URI_2: Il secondo componente dell'URI del modello condiviso. Ad esempio, projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1.

    Per saperne di più, consulta gcloud design-center spaces application-templates components create.

  4. Crea una connessione tra i due componenti.

    gcloud design-center spaces application-templates components connections create CONNECTION \
    --project=PROJECT \
    --location=LOCATION \
    --space=SPACE \
    --application-template=APPLICATION_TEMPLATE \
    --component=COMPONENT \
    --destination-component-uri=COMPONENT_2
    

    Sostituisci quanto segue:

    • CONNECTION: l'ID della connessione che vuoi aggiungere al modello.
    • PROJECT: l'ID progetto di gestione.
    • LOCATION: La regione del modello di applicazione.
    • SPACE: il tuo ID spazio.
    • APPLICATION_TEMPLATE: L'ID del modello per il modello di applicazione in cui stai aggiungendo la connessione.
    • COMPONENT: l'ID del componente di origine.
    • COMPONENT_2: l'ID componente di destinazione.

    Per saperne di più, consulta gcloud design-center spaces application-templates components connections create.

Configurare i valori predefiniti per i componenti

Per ogni componente che aggiungi al canvas, puoi specificare i dettagli di configurazione come il progetto in cui viene creata la risorsa e la posizione in cui viene eseguito il deployment. Se specifichi i dettagli di configurazione, Application Design Center li utilizza come valori predefiniti per le applicazioni.

Puoi anche modificare i dettagli della connessione se la configurazione predefinita non soddisfa i tuoi requisiti. Ad esempio, puoi modificare i nomi delle chiavi delle variabile di ambiente, cambiare le porte di connessione o aggiungere ruoli aggiuntivi ai service account.

Prima di eseguire il deployment di un'applicazione, gli sviluppatori possono visualizzare e modificare i valori predefiniti che hai configurato nel modello. Gli sviluppatori devono configurare i dettagli richiesti per ogni risorsa supportata.

Per configurare i componenti e le connessioni:

Canvas di progettazione

  1. Nell'area di progettazione, fai clic su un componente.

  2. Nell'area Configurazione, seleziona il progetto in cui vuoi eseguire il deployment della risorsa dall'elenco ID progetto. Seleziona un progetto con le seguenti qualifiche:

  3. Configura le impostazioni aggiuntive per la risorsa. Ad esempio, per Cloud SQL, potresti configurare quanto segue:

    • Regione
    • Configurazione del backup
    • Flag di database
    • Configurazione IP

    Per i link alla documentazione di configurazione di ciascun componente, consulta Risorse supportate.

  4. Quando colleghi i componenti nel canvas di progettazione, vengono utilizzati i valori di configurazione predefiniti per creare la connessione. Per aggiungere o modificare i dettagli della connessione:

    1. Nel canvas di progettazione, fai clic sulla connessione tra due componenti. Si apre il riquadro Connessione, che mostra i parametri di connessione.

    2. Esegui una delle seguenti operazioni:

      • Per modificare un parametro di connessione esistente, fai clic su Modifica.

      • Per aggiungere un nuovo parametro di connessione, fai clic su Aggiungi parametro.

    3. Aggiorna i campi Chiave e Valore. Ad esempio, potresti voler modificare i seguenti dettagli:

      • I nomi delle chiavi variabile di ambiente da allineare ai requisiti dell'applicazione.
      • Il valore della porta di connessione.
      • I ruoli aggiunti a un account di servizio.
  5. Fai clic su Salva.

Interfaccia a riga di comando gcloud

  1. Descrivi ogni componente nel modello di applicazione per visualizzare i parametri dei componenti.

     gcloud design-center spaces application-templates components describe COMPONENT \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --application-template=APPLICATION_TEMPLATE
    

    Sostituisci quanto segue:

    • COMPONENT: l'ID del componente che vuoi descrivere.
    • PROJECT: l'ID progetto di gestione.
    • LOCATION: La regione del modello di applicazione.
    • SPACE: il tuo ID spazio.
    • APPLICATION_TEMPLATE: l'ID del modello per il modello di applicazione.

    Per maggiori informazioni, vedi gcloud design-center spaces application-templates components describe.

  2. Per ogni componente che vuoi modificare, nella directory principale crea un file JSON che contenga i valori dei parametri.

    Ad esempio, potresti creare il seguente file per un componente Cloud Run:

      [
          {
            "key": "service_name",
            "value": "frontend-service"
          },
          {
            "key": "project_id",
            "value": "DEPLOYMENT_PROJECT"
          }
      ]
    
  3. Aggiorna ogni componente nel modello di applicazione per configurare i parametri richiesti.

     gcloud design-center spaces application-templates components update COMPONENT \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --parameters=PARAMETERS_FILE_PATH_1 \
     --application-template=APPLICATION_TEMPLATE
    

    Sostituisci quanto segue:

    • COMPONENT: l'ID del componente da aggiornare.
    • PROJECT: l'ID progetto di gestione.
    • LOCATION: La regione del modello di applicazione.
    • SPACE: il tuo ID spazio.
    • PARAMETERS_FILE_PATH_1: un file JSON che include i parametri del componente.
    • APPLICATION_TEMPLATE: l'ID del modello per il modello di applicazione.

    Per saperne di più, consulta gcloud design-center spaces application-templates components update.

  4. Descrivi i collegamenti dei componenti.

     gcloud design-center spaces application-templates components connections describe CONNECTION \
     --component=COMPONENT \
     --application-template=APPLICATION_TEMPLATE \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE
    

    Sostituisci quanto segue:

    • CONNECTION: l'ID connessione.
    • COMPONENT: l'ID componente.
    • APPLICATION_TEMPLATE: l'ID del modello.
    • PROJECT: l'ID progetto di gestione.
    • LOCATION: La regione del modello di applicazione.
    • SPACE: il tuo ID spazio.

    Per ulteriori informazioni, vedi gcloud design-center spaces application-templates components connections describe.

  5. Modifica i parametri di connessione dei componenti.

     gcloud design-center spaces application-templates components connections update CONNECTION \
     --component=COMPONENT \
     --application-template=APPLICATION_TEMPLATE \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --source-component-parameters='[{"key": SOURCE_KEY, "value": SOURCE_VALUE}]'
    

    Sostituisci quanto segue:

    • CONNECTION: l'ID connessione.
    • COMPONENT: l'ID componente.
    • APPLICATION_TEMPLATE: l'ID del modello.
    • PROJECT: l'ID progetto di gestione.
    • LOCATION: La regione del modello di applicazione.
    • SPACE: il tuo ID spazio.
    • SOURCE_KEY: La nuova chiave del parametro.
    • SOURCE_VALUE: il nuovo valore parametro.

    Per saperne di più, consulta gcloud design-center spaces application-templates components connections update.

Modifica il codice Terraform

Man mano che progetti il modello di applicazione, Application Design Center genera il codice Terraform per riflettere i dettagli di progettazione e configurazione. Puoi modificare Terraform per specificare i dettagli di configurazione dei componenti.

Il sistema genera i seguenti file Terraform:

  • main.tf: codice dell'infrastruttura che include un modulo per ogni componente nel modello.
  • outputs.tf: espone informazioni sui componenti dell'infrastruttura di cui è stato eseguito il deployment.
  • variables.tf: dichiara il nome, il tipo e la descrizione delle variabili utilizzate nel file main.tf.
  • input.tfvars: definisce i valori delle variabili utilizzate nel file main.tf.
  • providers.tf: definisce le etichette che aiutano Terraform a interagire con le API e le risorse di Google Cloud .

Per informazioni di base, consulta Panoramica di Terraform su Google Cloud.

Per modificare il codice Terraform:

  1. Nell'area di progettazione, fai clic su Codice. Il sistema mostra i file Terraform generati.

  2. Fai clic su main.tf. Il sistema mostra il modulo Terraform per ogni componente.

  3. Modifica i dettagli di configurazione. Per ulteriori informazioni, consulta la documentazione di configurazione per ogni risorsa supportata.

    Il sistema convalida automaticamente le modifiche e mostra gli errori se le modifiche non sono valide.

  4. Per evidenziare e confrontare le modifiche:

    1. Fai clic su Visualizza diff.

    2. Per ripristinare una modifica, fai clic su Fai clic per ripristinare la modifica nel margine.

    3. Fai clic su Visualizza diff per chiudere la visualizzazione del confronto.

  5. Per salvare le modifiche, fai clic su Salva modifiche al codice.

  6. Per verificare le modifiche, procedi nel seguente modo.

    1. Fai clic su Design.
    2. Fai clic su un componente ed esamina i dettagli della configurazione.

Eliminare un modello

Se non hai più bisogno di un modello, puoi eliminarlo.

Canvas di progettazione

  1. Nell'area di progettazione, fai clic su Azioni.
  2. Fai clic su Elimina.

Interfaccia a riga di comando gcloud

Elimina un modello di applicazione.

```sh
gcloud design-center spaces application-templates delete APPLICATION_TEMPLATE \
--project=PROJECT \
--location=LOCATION \
--space=SPACE
```

Sostituisci quanto segue:

  • APPLICATION_TEMPLATE: l'ID del modello per il modello di applicazione che vuoi eliminare.
  • PROJECT: l'ID progetto di gestione.
  • LOCATION: La regione del modello di applicazione.
  • SPACE: il tuo ID spazio.

Per saperne di più, consulta gcloud design-center spaces application-templates delete.

Verifica il modello

Prima di condividere il modello con gli sviluppatori, assicurati che funzioni come previsto. Per verificare il modello:

  1. Crea un'applicazione con le seguenti impostazioni:
    1. Dall'elenco Environment (Ambiente), seleziona TEST.
    2. Nell'elenco Criticalità, seleziona BASSA.
  2. Esegui il deployment dell'applicazione. Per i passaggi per il deployment, vedi Deployment di un'applicazione dalla console.
  3. Testa la tua infrastruttura per assicurarti che soddisfi i tuoi requisiti.
  4. Per evitare costi ricorrenti, elimina il deployment di test.

Condividere un modello in un catalogo

Una volta verificato il modello, puoi pubblicarlo in un catalogo. Il modello può essere utilizzato dagli sviluppatori di applicazioni che hanno accesso a uno spazio in cui è condiviso il catalogo.

  1. Nell'area di progettazione, fai clic su Aggiungi al catalogo.
  2. Per gestire gli spazi in cui viene condiviso il catalogo, vedi Gestire i cataloghi.

Rivedi e condividi nuovamente il modello

Man mano che acquisisci esperienza con l'applicazione e le tue esigenze aziendali si evolvono, potresti voler aggiornare il modello di applicazione. Ad esempio, potresti decidere di migliorare le prestazioni di un servizio di backend aggiungendo un servizio Memorystore per la memorizzazione nella cache.

Quando modifichi un modello, crei una revisione del modello. Per applicare le modifiche alle applicazioni esistenti, gli sviluppatori devono eseguire il deployment delle applicazioni utilizzando la revisione.

App Design Center non pubblica automaticamente le revisioni dei modelli nei cataloghi. Per condividere l'ultima revisione, pubblica di nuovo il modello nel catalogo.

Per creare una nuova revisione:

  1. Dal menu di navigazione, fai clic su Modelli.

    Vai ai Modelli

  2. Seleziona il modello di richiesta che vuoi rivedere. Si apre il canvas.

  3. Modifica il modello in base ai nuovi requisiti. Ad esempio, aggiungi e configura un nuovo componente.

  4. Per condividere l'ultima revisione con altri spazi, aggiungi di nuovo il modello ai cataloghi pertinenti.

Passaggi successivi