Partilhar via


Guia de início rápido: provisionar aplicativos do Azure Spring usando a CLI do Azure

Nota

Azure Spring Apps é o novo nome para o serviço Azure Spring Cloud. Embora o serviço tenha um novo nome, você verá o nome antigo em alguns lugares por um tempo enquanto trabalhamos para atualizar ativos, como capturas de tela, vídeos e diagramas.

Este artigo aplica-se a:❌ Basic ✔️ Standard ✔️ Enterprise

Este guia de 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 alterações de código. O serviço gerencia a infraestrutura dos aplicativos Spring para que os desenvolvedores possam se concentrar em seu código. O Azure Spring Apps fornece gerenciamento do ciclo de vida usando monitoramento e diagnóstico abrangentes, gerenciamento de configuração, descoberta de serviços, integração de CI/CD, implantações azul-verde e muito mais.

O plano de implantação Enterprise inclui os seguintes componentes Tanzu:

  • Serviço de compilação
  • Serviço de Configuração de Aplicativos
  • Registo de Serviços
  • Gateway de nuvem Spring
  • API Portal

Pré-requisitos

  • Uma subscrição do Azure. Se você não tiver uma assinatura, crie uma conta gratuita antes de começar.
  • Duas sub-redes dedicadas para o cluster do Azure Spring Apps, uma para o tempo de execução do serviço e outra para os aplicativos Spring. Para requisitos de sub-rede e rede virtual, consulte a seção Requisitos de rede virtual de Implantar aplicativos Azure Spring em uma rede virtual.
  • Um espaço de trabalho existente do Log Analytics 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, consulte Analisar logs e métricas com configurações de diagnóstico e Agente em processo Java do Application Insights no Azure Spring Apps.
  • Três intervalos internos de Roteamento entre Domínios sem Classe (CIDR) (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 serão usados apenas 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 CIDR internos do aplicativo Spring ou quaisquer intervalos IP incluídos no intervalo de endereços de rede virtual do cluster.
  • Permissão de serviço concedida à rede virtual. O Provedor de Recursos do Azure Spring Apps requer permissão de Proprietário para sua rede virtual para conceder uma entidade de serviço dedicada e dinâmica na rede virtual para implantação e manutenção adicionais. Para obter instruções e mais informações, consulte a seção Conceder permissão de serviço para a rede virtual de Implantar o Azure Spring Apps em uma rede virtual.
  • Se estiver a utilizar a Firewall do Azure ou uma Ferramenta Virtual de Rede (NVA), também terá de satisfazer os seguintes pré-requisitos:
    • Regras de rede e FQDN (nome de domínio totalmente qualificado). Para obter mais informações, consulte Requisitos de rede virtual.
    • Uma UDR (User Defined Route) exclusiva aplicada a cada uma das sub-redes do aplicativo Spring, do tempo de execução do serviço e do aplicativo Spring. Para obter mais informações sobre UDRs, consulte Roteamento de tráfego de rede virtual. O UDR deve ser configurado com uma rota para 0.0.0.0/0 com um destino do seu NVA antes de implantar o cluster do Azure Spring Apps. Para obter mais informações, consulte a seção Traga sua própria tabela de rotas de Implantar aplicativos Azure Spring em uma rede virtual.
  • CLI do Azure
  • Se você estiver implantando uma instância do plano do Azure Spring Apps Enterprise pela primeira vez na assinatura de destino, consulte a seção Requisitos do plano Enterprise no Azure Marketplace.

Revise 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 ID: "
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 Enterprise \
    --build-pool-size S1 \
    --enable-application-configuration-service \
    --enable-service-registry \
    --enable-gateway \
    --enable-api-portal \
    --api-portal-instance-count 2 \
    --enable-java-agent true \
    --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 iniciar sessão, este comando irá emitir informações sobre todas as subscrições a que tem acesso. Anote o nome e o ID da subscrição que pretende utilizar.

  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 à CLI do Azure.

    az extension add --name spring
    
  5. Escolha um local de implantação nas regiões onde 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 selecionada 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 do Azure Spring Apps Standard ou o plano Enterprise localmente e execute-o no prompt Bash.

    Plano padrão:

    ./azuredeploySpringStandard.sh
    

    Plano empresarial:

    ./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 que você criou anteriormente.
    • O nome do grupo de recursos de rede virtual onde você implantará seus recursos.
    • O nome da rede virtual falada (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 Tempo de Execução do Azure Spring Apps (por exemplo, snet-runtime).
    • O nome do grupo de recursos para o espaço de trabalho do Azure Log Analytics a ser usado para armazenar logs de diagnóstico.
    • O nome do espaço de trabalho do Azure Log Analytics (por exemplo, la-cb5sqq6574o2a).
    • O CIDR varia da sua rede virtual para ser usado pelos Aplicativos Azure Spring (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 tags em todos os recursos que suportam tags. Para obter mais informações, consulte Usar marcas para organizar seus recursos do Azure e hierarquia de gerenciamento. Use uma lista separada por espaços para aplicar várias tags (por exemplo, environment=Dev BusinessUnit=finance).

Depois de fornecer essas informações, o script criará e implantará os recursos do Azure.

Rever os recursos implementados

Você pode usar o portal do Azure para verificar os recursos implantados ou usar a CLI do Azure para listar os recursos implantados.

Clean up resources (Limpar recursos)

Se você planeja continuar trabalhando com guias de início rápido e tutoriais subsequentes, convém deixar esses recursos no lugar. Quando não for mais necessário, exclua o grupo de recursos, que exclui os recursos do 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óximos passos

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, em seguida, validou a implantação. Para saber mais sobre o Azure Spring Apps, continue com os recursos abaixo.