Compartilhar via


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 e Network 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:
  • 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:

  1. 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.

  2. Defina a assinatura de destino.

    az account set --subscription "<your subscription name>"
    
  3. Registre o Provedor de Recursos do Azure Spring Apps.

    az provider register --namespace 'Microsoft.AppPlatform'
    
  4. Adicione as extensões necessárias para a CLI do Azure.

    az extension add --name spring
    
  5. 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.

  6. 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
    
  7. Crie um grupo de recursos para implantar o recurso.

    az group create --name <your-resource-group-name> --location <location-name>
    
  8. 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
    
  9. 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.