Início Rápido: provisionar o Azure Spring Apps usando a CLI do Azure
Observação
Os planos Básico, Standard e Enterprise serão preteridos a partir de meados de março de 2025, com um período de desativação de 3 anos. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para mais informações, confira o anúncio de desativação dos Aplicativos Spring do Azure.
O plano consumo e dedicado Standard será preterido a partir de 30 de setembro de 2024, com um desligamento completo após seis meses. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para mais informações, confira Migrar o plano dedicado e consumo Standard dos Aplicativos Spring do Azure para os Aplicativos de Contêiner do Azure.
Este artigo se aplica a: ❎ Básico ✅ Standard ✅ Enterprise
Este início rápido descreve como usar a CLI do Azure para implantar um cluster do Azure Spring Apps em uma rede virtual existente.
O Azure Spring Apps facilita a implantação de aplicativos Spring no Azure sem nenhuma alteração de código. O serviço gerencia a infraestrutura dos aplicativos do Spring para que os desenvolvedores possam se concentrar no código. O Azure Spring Apps fornece gerenciamento de ciclo de vida usando monitoramento e diagnóstico abrangentes, gerenciamento de configuração, descoberta de serviços, integração de CI/CD, implantações em “blue-green” e muito mais.
O plano de implantação Enterprise inclui os seguintes componentes do Tanzu:
- Serviço de build
- Serviço de Configuração do Aplicativo
- Registro do Serviço
- Spring Cloud Gateway
- Portal de API
Pré-requisitos
- Uma assinatura do Azure. Caso não tenha uma assinatura, crie uma conta gratuita antes de começar.
- Duas sub-redes dedicadas para o cluster do Azure Spring Apps: uma para o runtime de serviço e outra para os aplicativos Spring. Para obter os requisitos detalhados da rede virtual, confira a seção Requisitos de rede virtual de Implantar o Azure Spring Apps em uma rede virtual.
- Um workspace do Log Analytics existente para configurações de diagnóstico do Azure Spring Apps e um recurso do Application Insights baseado em espaço de trabalho. Para obter mais informações, confira Analisar logs e métricas com configurações de diagnóstico e Agente em processo de Java do Application Insights no Azure Spring Apps.
- Três intervalos internos do CIDR (Roteamento entre Domínios sem Classificação) (pelo menos /16 cada) que você identificou para uso pelo cluster do Azure Spring Apps. Esses intervalos CIDR não serão diretamente roteáveis e só serão usados internamente pelo cluster do Azure Spring Apps. Os clusters não podem usar 169.254.0.0/16, 172.30.0.0/16, 172.31.0.0/16 ou 192.0.2.0/24 para os intervalos internos do CIDR do aplicativo Spring ou quaisquer intervalos de IP incluídos no intervalo de endereços de rede virtual do cluster.
- Permissão de serviço concedida para a rede virtual. O Provedor de Recursos do Aplicativos Spring do Azure requer
User Access Administrator
eNetwork Contributor
permissões para sua rede virtual para conceder uma entidade de serviço dedicada e dinâmica na rede virtual para implantação e manutenção posteriores. Para obter instruções e mais informações, confira a seção Conceder permissão de serviço à rede virtual de Implantar o Azure Spring Apps em uma rede virtual. - Caso esteja usando o Firewall do Azure ou um NVA (Solução de virtualização de rede), você também precisará atender aos seguintes pré-requisitos:
- Regras de FQDN (nome de domínio totalmente qualificado) e de rede. Para obter mais informações, confira Requisitos de rede virtual.
- Uma UDR (rota definida pelo usuário) exclusiva aplicada a cada uma das sub-redes do runtime de serviço e do aplicativo Spring. Para obter mais informações sobre a UDR, confira Roteamento de tráfego da rede virtual. A UDR deve ser configurada com uma rota para 0.0.0.0/0 com um destino de sua NVA antes de implantar o cluster do Azure Spring Apps. Para obter mais informações, confira a seção Traga sua própria tabela de roteamento de Implantar o Azure Spring Apps em uma rede virtual.
- CLI do Azure
- Se você estiver implantando a instância do plano Enterprise do Aplicativos Spring do Azure pela primeira vez na assinatura de destino, confira a seção Requisitos do plano Enterprise no Azure Marketplace.
Revisar o script de implantação da CLI do Azure
O script de implantação usado neste início rápido é da arquitetura de referência do Azure Spring Apps.
#!/bin/bash
echo "Enter Azure Subscription ID: "
read subscription
subscription=$subscription
echo "Enter Azure region for resource deployment: "
read region
location=$region
echo "Enter Azure Spring Resource Group Name: "
read azurespringrg
azurespring_resource_group_name=$azurespringrg
echo "Enter Azure Spring VNet Resource Group Name: "
read azurespringvnetrg
azurespring_vnet_resource_group_name=$azurespringvnetrg
echo "Enter Azure Spring Spoke VNet : "
read azurespringappspokevnet
azurespringappspokevnet=$azurespringappspokevnet
echo "Enter Azure Spring App SubNet : "
read azurespringappsubnet
azurespring_app_subnet_name='/subscriptions/'$subscription'/resourcegroups/'$azurespring_vnet_resource_group_name'/providers/Microsoft.Network/virtualNetworks/'$azurespringappspokevnet'/subnets/'$azurespringappsubnet
echo "Enter Azure Spring Service SubNet : "
read azurespringservicesubnet
azurespring_service_subnet_name='/subscriptions/'$subscription'/resourcegroups/'$azurespring_vnet_resource_group_name'/providers/Microsoft.Network/virtualNetworks/'$azurespringappspokevnet'/subnets/'$azurespringservicesubnet
echo "Enter Azure Log Analytics Workspace Resource Group Name: "
read loganalyticsrg
loganalyticsrg=$loganalyticsrg
echo "Enter Log Analytics Workspace Resource Name: "
read workspace
workspaceID='/subscriptions/'$subscription'/resourcegroups/'$loganalyticsrg'/providers/microsoft.operationalinsights/workspaces/'$workspace
echo "Enter Reserved CIDR Ranges for Azure Spring: "
read reservedcidrrange
reservedcidrrange=$reservedcidrrange
echo "Enter key=value pair used for tagging Azure Resources (space separated for multiple tags): "
read tag
tags=$tag
randomstring=$(LC_ALL=C tr -dc 'a-z0-9' < /dev/urandom | fold -w 13 | head -n 1)
azurespring_service='spring-'$randomstring #Name of unique Spring resource
azurespring_appinsights=$azurespring_service
azurespring_resourceid='/subscriptions/'$subscription'/resourceGroups/'$azurespring_resource_group_name'/providers/Microsoft.AppPlatform/Spring/'$azurespring_service
# Create Application Insights
az monitor app-insights component create \
--app ${azurespring_service} \
--location ${location} \
--kind web \
-g ${azurespringrg} \
--application-type web \
--workspace ${workspaceID}
az spring create \
-n ${azurespring_service} \
-g ${azurespringrg} \
-l ${location} \
--sku Standard \
--app-insights ${azurespring_service} \
--app-subnet ${azurespring_app_subnet_name} \
--service-runtime-subnet ${azurespring_service_subnet_name} \
--reserved-cidr-range ${reservedcidrrange} \
--tags ${tags}
# Update diagnostic setting for Azure Spring instance
az monitor diagnostic-settings create \
--name monitoring \
--resource ${azurespring_resourceid} \
--logs '[{"category": "ApplicationConsole","enabled": true}]' \
--workspace ${workspaceID}
Implantar o cluster
Para implantar o cluster do Azure Spring Apps usando o script da CLI do Azure, siga estas etapas:
Entre no Azure usando o seguinte comando:
az login
Depois de entrar, este comando produzirá informações sobre todas as assinaturas às quais você tem acesso. Anote o nome e a ID da assinatura que você deseja usar.
Defina a assinatura de destino.
az account set --subscription "<your subscription name>"
Registre o Provedor de Recursos do Azure Spring Apps.
az provider register --namespace 'Microsoft.AppPlatform'
Adicione as extensões necessárias para a CLI do Azure.
az extension add --name spring
Escolha um local de implantação das regiões em que o Azure Spring Apps está disponível, conforme mostrado em Produtos disponíveis por região.
Use o comando a seguir para gerar uma lista de locais do Azure. Anote o valor de Nome curto para a região que você selecionou na etapa anterior.
az account list-locations --output table
Crie um grupo de recursos para implantar o recurso.
az group create --name <your-resource-group-name> --location <location-name>
Salve o script para o plano Standard ou o plano Enterprise dos Aplicativos Spring do Azure localmente e execute-o no prompt do Bash.
Plano Standard:
./azuredeploySpringStandard.sh
Plano Enterprise:
./azuredeploySpringEnterprise.sh
Insira os seguintes valores quando solicitado pelo script:
- A ID de assinatura do Azure que você salvou anteriormente.
- O nome do local do Azure que você salvou anteriormente.
- O nome do grupo de recursos criado anteriormente.
- O nome do grupo de recursos de rede virtual em que você implantará seus recursos.
- O nome da rede virtual spoke (por exemplo, vnet-spoke).
- O nome da sub-rede a ser usada pelo Serviço de Aplicativo do Azure Spring Apps (por exemplo, snet-app).
- O nome da sub-rede a ser usada pelo Serviço de Runtime do Azure Spring Apps (por exemplo, snet-runtime).
- O nome do grupo de recursos para o workspace do Log Analytics do Azure a ser usado para armazenar logs de diagnóstico.
- O nome do workspace do Log Analytics do Azure (por exemplo, la-cb5sqq6574o2a).
- O CIDR varia de sua rede virtual a ser usada pelo Azure Spring Apps (por exemplo, XX.X.X.X/16,XX.X.X.X/16,XX.X.X.X/16).
- Os pares chave/valor a serem aplicados como marcas em todos os recursos que dão suporte a marcas. Para saber mais, confira Usar marcas para organizar os recursos do Azure e a hierarquia de gerenciamento. Use uma lista separada por espaços para aplicar várias marcas (por exemplo, environment=Dev BusinessUnit=finance).
Depois de fornecer essas informações, o script criará e implantará os recursos do Azure.
Examinar os recursos implantados
Você pode usar o portal do Azure para verificar os recursos implantados ou usar o script da CLI do Azure para listar os recursos implantados.
Limpar os recursos
Se planejar continuar trabalhando com os tutoriais e inícios rápidos subsequentes, deixe esses recursos onde estão. Quando não for mais necessário, exclua o grupo de recursos, que excluirá os recursos no grupo de recursos. Para excluir o grupo de recursos usando a CLI do Azure, use os seguintes comandos:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."
Próximas etapas
Neste início rápido, você implantou uma instância do Azure Spring Apps em uma rede virtual existente usando a CLI do Azure e validou a implantação. Para saber mais sobre o Azure Spring Apps, confira os recursos abaixo.
- Implante um dos seguintes aplicativos de exemplo dos locais abaixo:
- Use domínios personalizados com o Azure Spring Apps.
- Exponha os aplicativos no Azure Spring Apps à Internet usando o Gateway de Aplicativo do Azure. Para mais informações, consulte Expor aplicativos com TLS de ponta a ponta em uma rede virtual.
- Veja a arquitetura de referência do Azure Spring Apps de ponta a ponta segura, que se baseia no Microsoft Azure Well-Architected Framework.