Quando você quiser criar aplicativos complexos usando elementos menores e reutilizáveis, crie modelos compostos. Por exemplo, você pode criar um modelo composto que inclua vários modelos de aplicativo conectados.
Você também pode criar modelos compostos para modelar e empacotar unidades de implantação para uma oferta de SaaS que você implanta com o App Lifecycle Manager. Para mais informações, consulte Unidades de implantação de modelo e pacote.
Crie modelos compostos adicionando e conectando modelos de aplicativos padrão e componentes individuais. Essa abordagem modular ajuda você a:
- Acelerar o desenvolvimento: monte apps complexos com elementos menores. É possível reutilizar cada modelo de aplicativo padrão em vários modelos compostos.
- Ative o desenvolvimento paralelo: permita que equipes modulares se especializem em blocos de construção específicos. Por exemplo, uma equipe de banco de dados pode lidar com o armazenamento e a análise de dados com mínima dependência da equipe de lógica de aplicativos.
- Reduzir os impactos da vulnerabilidade: os desenvolvedores podem atualizar ou corrigir um bloco de construção sem reimplantar todo o aplicativo.
- Melhorar a postura de segurança: restrinja o acesso criando contas de serviço distintas para implantar cada elemento básico. Verifique se cada equipe tem permissões apenas para os blocos de construção que ela configura.
Este documento mostra como criar, verificar e compartilhar um modelo composto.
Antes de começar
Você precisa ter uma das seguintes funções na pasta ou no projeto de gerenciamento ativado para apps:
- Administrador do App Design Center (
roles/designcenter.admin) - Usuário do App Design Center (
roles/designcenter.user)
Para usar seus próprios modelos de aplicativos padrão como blocos de construção, defina variáveis de entrada e saída para estabelecer variáveis configuráveis e crie conexões entre os modelos de aplicativos. Para ver mais informações, consulte os seguintes tópicos:
Criar um modelo de aplicativo composto
Crie modelos compostos quando quiser projetar e compartilhar aplicativos complexos. É possível adicionar e conectar o seguinte no design do modelo:
Modelos de aplicativos padrão: selecione entre os seguintes modelos:
- Modelos projetados pelo Google, que incorporam Google Cloud práticas recomendadas e configurações de segurança padrão.
- Modelos que você criou antes e adicionou ao catálogo do seu espaço.
Componentes: selecione entre os seguintes recursos do Google Cloud :
- Componentes projetados pelo Google, incorporando Google Cloud práticas recomendadas e configurações de segurança padrão.
- Seus próprios componentes que você importa, com base nos seus módulos do Terraform.
Especificar detalhes do modelo
Os detalhes do modelo ajudam a categorizar o modelo e os desenvolvedores a decidir se devem usá-lo.
Para inserir detalhes do modelo, faça o seguinte:
Tela de design
No menu de navegação, clique em Modelos.
Na lista Criar modelo, selecione Modelo composto.
O campo ID do modelo é preenchido automaticamente. Ou insira um identificador exclusivo para o modelo. Este campo é obrigatório.
No campo Nome do modelo, insira um identificador legível para exibição no console Google Cloud .
Se você não fornecer um nome, o ID do modelo será copiado para esse campo.
No campo Descrição, insira uma breve explicação da finalidade do aplicativo.
Clique em Criar modelo. A tela de design é exibida.
CLI da gcloud
Crie um modelo de aplicativo composto.
gcloud design-center spaces application-templates create APPLICATION_TEMPLATE \
--project=PROJECT \
--location=LOCATION \
--space=SPACE \
--display-name=DISPLAY_NAME \
--description=DESCRIPTION \
--composition-type=COMPOSITE
Substitua:
APPLICATION_TEMPLATE: o ID do modelo de aplicativo que você quer criar.PROJECT: o ID do projeto de gerenciamento.LOCATION: a região do modelo de aplicativo.SPACE: o ID do seu espaço.DISPLAY_NAME: um nome a ser exibido no console do Google Cloud .DESCRIPTION: uma breve descrição.
Para mais informações, consulte gcloud design-center spaces application-templates create.
Criar um modelo
Projete seu modelo composto adicionando e conectando modelos e componentes de aplicativos padrão aos seguintes pontos de partida:
- Uma tela em branco.
- Um modelo fornecido pelo Google.
- Um modelo gerado com a ajuda do Gemini.
À medida que você cria o modelo, o App Design Center gera código Terraform para refletir os detalhes de design e configuração.
Para criar seu modelo, faça o seguinte:
Tela de design
Na tela de design, selecione Design para acessar a tela.
Para começar, faça o seguinte:
Para começar com um modelo fornecido pelo Google, na área Começar da tela, clique no nome do modelo.
Para começar do zero, siga para a próxima etapa.
Para adicionar um modelo de aplicativo padrão à tela, faça o seguinte:
Na área Componentes, clique em Incorporar modelos.
Para adicionar um modelo, clique em um deles em uma das seguintes listas:
- Modelos: modelos de aplicativos padrão que estão no catálogo do seu espaço ou foram compartilhados com ele.
- Modelos do Google: modelos de aplicativos padrão criados pelo Google e adicionados ao catálogo do Google.
Para adicionar o modelo selecionado à tela, clique em Selecionar.
Para criar um modelo de aplicativo padrão, clique em Criar um novo modelo. A página Criar novo modelo é aberta.
Para mais informações, consulte Criar modelos de aplicativos padrão.
Para adicionar um componente à tela, clique em um na área Componentes.
Para criar um canal de comunicação entre modelos e componentes, faça uma das seguintes ações:
Arraste de um ponto azul em um elemento básico para um ponto azul em outro elemento básico.
Para adicionar um componente conectado a um componente existente, clique em Adicionar e selecione o componente que você quer adicionar.
Para detalhes da conexão, consulte a documentação de configuração de cada recurso compatível.
Para remover um elemento básico ou uma conexão, faça o seguinte:
No quadro, clique no elemento básico ou na conexão.
Na área Configuração, clique em Excluir.
No campo, digite delete.
Clique em Excluir.
CLI da gcloud
Identifique os URIs de revisão de modelo para os elementos básicos no catálogo do seu espaço.
gcloud design-center spaces shared-templates list \ --project=PROJECT \ --location=LOCATION \ --space=SPACESubstitua:
PROJECT: o ID do projeto de gerenciamento.LOCATION: a região do modelo de aplicativo.SPACE: o ID do seu espaço.
Para mais informações, consulte gcloud design-center spaces shared-templates list.
Identifique os URIs de revisão do modelo para os elementos básicos do catálogo do Google que você quer adicionar ao modelo.
gcloud design-center spaces shared-templates list \ --google-catalog \ --location=us-central1Para mais informações, consulte gcloud design-center spaces shared-templates list.
Adicione um modelo ou componente de aplicativo padrão ao seu modelo composto.
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_URISubstitua:
COMPONENT: o ID do modelo ou componente de aplicativo padrão que você quer adicionar ao modelo.PROJECT: o ID do projeto de gerenciamento.LOCATION: a região do modelo de aplicativo.SPACE: o ID do seu espaço.APPLICATION_TEMPLATE: o ID do modelo do modelo de aplicativo composto em que você está adicionando o modelo de aplicativo ou componente padrão.SHARED_TEMPLATE_URI: o modelo de aplicativo padrão ou o URI do modelo compartilhado de componente. Por exemplo,projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1.
Para mais informações, consulte gcloud design-center spaces application-templates components create.
Adicione um segundo modelo ou componente de aplicativo padrão ao seu modelo.
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_2Substitua:
COMPONENT_2: o ID do segundo modelo de aplicativo padrão ou componente que você quer adicionar ao modelo.PROJECT: o ID do projeto de gerenciamento.LOCATION: a região do modelo de aplicativo.SPACE: o ID do seu espaço.APPLICATION_TEMPLATE: o ID do modelo composto em que você está adicionando o modelo ou componente de aplicativo padrão.SHARED_TEMPLATE_URI_2: o segundo modelo de aplicativo padrão ou URI de modelo compartilhado de componente. Por exemplo,projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1.
Para mais informações, consulte gcloud design-center spaces application-templates components create.
Crie uma conexão entre os modelos ou componentes de aplicativos padrão.
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_2Substitua:
CONNECTION: o ID da conexão que você quer adicionar ao modelo.PROJECT: o ID do projeto de gerenciamento.LOCATION: a região do modelo de aplicativo.SPACE: o ID do seu espaço.APPLICATION_TEMPLATE: o ID do modelo de aplicativo em que você está adicionando a conexão.COMPONENT: o ID do modelo ou componente de aplicativo padrão de origem.COMPONENT_2: o ID do modelo ou componente do aplicativo padrão de destino.
Para mais informações, consulte gcloud design-center spaces application-templates components connections create.
Configurar valores padrão para componentes
Para cada componente adicionado a um modelo, é possível especificar detalhes de configuração padrão, como o projeto e o local de implantação do recurso. O App Design Center aplica esses padrões quando um aplicativo é criado com base nesse modelo.
Os desenvolvedores de aplicativos também podem modificar os detalhes da conexão se a configuração padrão não atender aos requisitos deles. Por exemplo, você pode modificar nomes de chaves variável de ambiente, mudar portas de conexão ou adicionar mais papéis a contas de serviço ao criar um aplicativo.
Antes de implantar um aplicativo, os desenvolvedores podem ver e modificar os valores padrão configurados no modelo. Os desenvolvedores precisam configurar os detalhes obrigatórios para cada recurso compatível.
Para configurar componentes e conexões, faça o seguinte:
Tela de design
Na tela de design, clique em um componente.
Na área Configuração, na lista ID do projeto, selecione o projeto em que você quer implantar o recurso. Selecione um projeto com as seguintes qualificações:
O projeto precisa ser um descendente da pasta ativada para apps selecionada.
O projeto não pode ser um projeto de gerenciamento.
Defina outras configurações para o recurso. Por exemplo, para o Cloud SQL, você pode configurar o seguinte:
- Região
- Configuração de backup
- Sinalizações do banco de dados
- Configuração de IP
Para links da documentação de configuração de cada componente, consulte Recursos compatíveis.
Quando você conecta componentes na tela de design, os valores de configuração padrão são usados para criar a conexão. Para adicionar ou modificar detalhes da conexão, faça o seguinte:
Na tela de design, clique na conexão entre dois componentes. O painel Conexão é aberto e mostra os parâmetros de conexão.
Escolha uma destas opções:
Para modificar um parâmetro de conexão, clique em Editar.
Para adicionar um novo parâmetro de conexão, clique em Adicionar parâmetro.
Atualize os campos Chave e Valor. Por exemplo, você pode querer modificar os seguintes detalhes:
- Os nomes das chaves variável de ambiente para se alinhar aos requisitos do aplicativo.
- O valor da porta de conexão.
- Os papéis adicionados a uma conta de serviço.
Clique em Salvar.
CLI da gcloud
Descreva cada componente no modelo de aplicativo para ver os parâmetros dele.
gcloud design-center spaces application-templates components describe COMPONENT \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --application-template=APPLICATION_TEMPLATESubstitua:
COMPONENT: o ID do componente que você quer descrever.PROJECT: o ID do projeto de gerenciamento.LOCATION: a região do modelo de aplicativo.SPACE: o ID do seu espaço.APPLICATION_TEMPLATE: o ID do modelo de aplicativo.
Para mais informações, consulte gcloud design-center spaces application-templates components describe.
Para cada componente que você quer modificar, crie um arquivo JSON no seu diretório inicial com os valores de parâmetro.
Por exemplo, você pode criar o seguinte arquivo para um componente do Cloud Run:
[ { "key": "service_name", "value": "frontend-service" }, { "key": "project_id", "value": "DEPLOYMENT_PROJECT" } ]Atualize cada componente no modelo de aplicativo para configurar os parâmetros necessários.
gcloud design-center spaces application-templates components update COMPONENT \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --parameters=PARAMETERS_FILE_PATH \ --application-template=APPLICATION_TEMPLATESubstitua:
COMPONENT: o ID do componente que você quer atualizar.PROJECT: o ID do projeto de gerenciamento.LOCATION: a região do modelo de aplicativo.SPACE: o ID do seu espaço.PARAMETERS_FILE_PATH: um arquivo JSON que inclui parâmetros de componentes.APPLICATION_TEMPLATE: o ID do modelo de aplicativo.
Para mais informações, consulte gcloud design-center spaces application-templates components update.
Descreva as conexões dos componentes.
gcloud design-center spaces application-templates components connections describe CONNECTION \ --component=COMPONENT \ --application-template=APPLICATION_TEMPLATE \ --project=PROJECT \ --location=LOCATION \ --space=SPACESubstitua:
CONNECTION: o ID da conexão.COMPONENT: o ID do componente.APPLICATION_TEMPLATE: o ID do modelo.PROJECT: o ID do projeto de gerenciamento.LOCATION: a região do modelo de aplicativo.SPACE: o ID do seu espaço.
Para mais informações, consulte gcloud design-center spaces application-templates components connections describe.
Edite os parâmetros de conexão do componente.
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}]'Substitua:
CONNECTION: o ID da conexão.COMPONENT: o ID do componente.APPLICATION_TEMPLATE: o ID do modelo.PROJECT: o ID do projeto de gerenciamento.LOCATION: a região do modelo de aplicativo.SPACE: o ID do seu espaço.SOURCE_KEY: a nova chave de parâmetro.SOURCE_VALUE: o novo valor de parâmetro.
Para mais informações, consulte gcloud design-center spaces application-templates components connections update.
Configurar modelos de aplicativos padrão
Quando os desenvolvedores implantam seu modelo composto como um aplicativo, um aplicativo é criado para cada um dos seguintes itens:
- Cada grupo de modelos de aplicativos padrão.
- Cada grupo de componentes.
Você pode fornecer valores padrão para cada grupo. Por exemplo, você pode incluir o projeto de implantação, a região e os proprietários. Ao implantar o aplicativo no App Design Center, os desenvolvedores podem usar os valores padrão ou especificar os próprios detalhes para cada aplicativo.
Para fornecer detalhes padrão do aplicativo para cada grupo, faça o seguinte:
Tela de design
Na tela de design, clique em um modelo de aplicativo padrão.
O painel Modelo incorporado é aberto.
Na área Configuração, insira os detalhes do aplicativo.
Para mais informações, consulte Criar um rascunho de aplicativo.
CLI da gcloud
Para mais informações, consulte Projetar seu modelo.
Verificar seu modelo
Antes de compartilhar seu modelo composto com desenvolvedores, implante e verifique o modelo no App Design Center. Essa etapa ajuda a verificar a funcionalidade antes de uma implantação escalonada em várias máquinas.
Para verificar seu modelo, faça o seguinte:
Na tela de design, clique em Continuar e selecione Criar aplicativo para implantação.
O painel Criar um aplicativo é aberto.
Na área Detalhes do aplicativo composto, insira os detalhes do aplicativo.
Para mais informações, consulte Criar um rascunho de aplicativo.
Clique em Próxima.
Para cada elemento básico adicionado ao modelo composto, um aplicativo será criado quando você fizer a implantação. Configure cada aplicativo e clique em Próxima.
Para mais informações, consulte Criar um rascunho de aplicativo.
Teste o aplicativo implantado para garantir que ele atenda aos seus requisitos.
Para evitar custos recorrentes, exclua a implantação de teste.
Criar uma implantação escalonada
Para implantar e gerenciar várias instâncias do modelo composto, use o App Lifecycle Manager.
Verifique seu modelo no App Design Center.
Na tela de design, clique em Continuar e selecione Implantar em grande escala com o App Lifecycle Manager.
A página Unidades do App Lifecycle Manager é aberta.
Para saber as etapas de implantação, consulte Implantar uma oferta de SaaS.
Compartilhar seu modelo
Para disponibilizar seu modelo aos desenvolvedores, adicione-o a um catálogo e compartilhe. Quando você adiciona um modelo a um catálogo, ele fica disponível como uma fonte de aplicativo nos espaços em que o catálogo é compartilhado.
Para compartilhar o modelo, faça o seguinte:
Na tela de design, clique em Adicionar ao catálogo.
Para gerenciar os espaços em que o catálogo é compartilhado, consulte Gerenciar catálogos.
Revisar e compartilhar novamente seu modelo
À medida que você ganha experiência com o aplicativo e as necessidades da sua empresa evoluem, talvez seja necessário atualizar o modelo. Por exemplo, você pode decidir melhorar a performance de um serviço de back-end adicionando um serviço do Memorystore para armazenamento em cache.
Ao modificar um modelo, você cria uma revisão dele. Para aplicar as mudanças aos aplicativos atuais, os desenvolvedores precisam implantar os apps usando a revisão.
O App Design Center não publica automaticamente revisões de modelos em catálogos. Para compartilhar a revisão mais recente, publique o modelo no catálogo novamente.
Para criar uma nova revisão, faça o seguinte:
No menu de navegação, clique em Modelos.
Selecione o modelo de aplicativo que você quer revisar. A tela é aberta.
Modifique o modelo para atender aos novos requisitos. Por exemplo, adicione e configure um novo componente.
Para compartilhar a revisão mais recente com outros espaços, adicione o modelo ao catálogo novamente.
Excluir um modelo
Se você não precisar mais de um modelo, poderá excluí-lo.
Tela de design
- Na tela de design, clique em Ações.
- Clique em Excluir.
CLI da gcloud
Exclua um modelo de aplicativo.
```sh
gcloud design-center spaces application-templates delete APPLICATION_TEMPLATE \
--project=PROJECT \
--location=LOCATION \
--space=SPACE
```
Substitua:
APPLICATION_TEMPLATE: o ID do modelo do aplicativo que você quer excluir.PROJECT: o ID do projeto de gerenciamento.LOCATION: a região do modelo de aplicativo.SPACE: o ID do seu espaço.
Para mais informações, consulte gcloud design-center spaces application-templates delete.
A seguir
Para implantar seu modelo composto com o App Lifecycle Manager, consulte Implantar uma oferta de SaaS.
Para compartilhar modelos com outros espaços, crie e compartilhe um catálogo.
Para usar seus próprios módulos do Terraform no design do modelo de aplicativo, importe componentes.