Szybki start: aprowizuj usługę Azure Spring Apps przy użyciu interfejsu wiersza polecenia platformy Azure

Uwaga

Azure Spring Apps to nowa nazwa usługi Azure Spring Cloud. Mimo że usługa ma nową nazwę, stara nazwa będzie widoczna w niektórych miejscach przez pewien czas, ponieważ pracujemy nad aktualizowaniem zasobów, takich jak zrzuty ekranu, filmy wideo i diagramy.

Ten artykuł dotyczy:❌ Basic ✔️ Standard ✔️ Enterprise

W tym przewodniku Szybki start opisano sposób wdrażania klastra usługi Azure Spring Apps w istniejącej sieci wirtualnej przy użyciu interfejsu wiersza polecenia platformy Azure.

Usługa Azure Spring Apps ułatwia wdrażanie aplikacji Spring na platformie Azure bez żadnych zmian w kodzie. Usługa zarządza infrastrukturą aplikacji Spring, aby deweloperzy mogli skupić się na swoim kodzie. Usługa Azure Spring Apps zapewnia zarządzanie cyklem życia przy użyciu kompleksowego monitorowania i diagnostyki, zarządzania konfiguracją, odnajdywania usług, integracji/ciągłego wdrażania, wdrożeń niebieskich zielonych i nie tylko.

Plan wdrożenia przedsiębiorstwa obejmuje następujące składniki Tanzu:

  • Usługa kompilacji
  • Usługa konfiguracji aplikacji
  • Rejestr usług
  • Spring Cloud Gateway
  • API Portal

Wymagania wstępne

  • Subskrypcja platformy Azure. Jeśli nie masz subskrypcji, przed rozpoczęciem utwórz bezpłatne konto .
  • Dwie dedykowane podsieci klastra usługi Azure Spring Apps, jedna dla środowiska uruchomieniowego usługi, a druga dla aplikacji Spring. Aby uzyskać wymagania dotyczące podsieci i sieci wirtualnej, zobacz sekcję Wymagania dotyczące sieci wirtualnej w temacie Wdrażanie usługi Azure Spring Apps w sieci wirtualnej.
  • Istniejący obszar roboczy usługi Log Analytics dla ustawień diagnostycznych usługi Azure Spring Apps i zasób aplikacji opartej na obszarze roboczym Szczegółowe informacje. Aby uzyskać więcej informacji, zobacz Analizowanie dzienników i metryk przy użyciu ustawień diagnostycznych i agenta przetwarzania Java Szczegółowe informacje Java w usłudze Azure Spring Apps.
  • Trzy wewnętrzne zakresy routingu międzydomenowego (CIDR, Classless Inter-Domain Routing) (co najmniej /16 ), które zostały zidentyfikowane do użycia przez klaster usługi Azure Spring Apps. Te zakresy CIDR nie będą bezpośrednio routingowane i będą używane tylko wewnętrznie przez klaster usługi Azure Spring Apps. Klastry mogą nie używać 169.254.0.0/16, 172.30.0.0/16, 172.31.0.0/16 lub 192.0.2.0/24 dla wewnętrznych zakresów CIDR aplikacji Spring lub zakresów adresów IP uwzględnionych w zakresie adresów sieci wirtualnej klastra.
  • Uprawnienie usługi przyznane sieci wirtualnej. Dostawca zasobów usługi Azure Spring Apps wymaga uprawnień właściciela do sieci wirtualnej, aby udzielić dedykowanej i dynamicznej jednostki usługi w sieci wirtualnej w celu dalszego wdrażania i konserwacji. Aby uzyskać instrukcje i więcej informacji, zobacz sekcję Udzielanie uprawnień usługi do sieci wirtualnej w temacie Wdrażanie usługi Azure Spring Apps w sieci wirtualnej.
  • Jeśli używasz usługi Azure Firewall lub wirtualnego urządzenia sieciowego (WUS), musisz również spełnić następujące wymagania wstępne:
    • Reguły w pełni kwalifikowanej nazwy domeny (FQDN). Aby uzyskać więcej informacji, zobacz Wymagania dotyczące sieci wirtualnej.
    • Unikatowa trasa zdefiniowana przez użytkownika (UDR) zastosowana do każdego środowiska uruchomieniowego usługi i podsieci aplikacji Spring. Aby uzyskać więcej informacji na temat tras zdefiniowanych przez użytkownika, zobacz Routing ruchu w sieci wirtualnej. Trasa zdefiniowana przez użytkownika powinna być skonfigurowana przy użyciu trasy dla wersji 0.0.0.0/0 z miejscem docelowym urządzenia WUS przed wdrożeniem klastra usługi Azure Spring Apps. Aby uzyskać więcej informacji, zobacz sekcję Bring your own route table ( Wdrażanie usługi Azure Spring Apps w sieci wirtualnej).
  • Interfejs wiersza polecenia platformy Azure
  • Jeśli wdrażasz wystąpienie planu Usługi Azure Spring Apps Enterprise po raz pierwszy w subskrypcji docelowej, zobacz sekcję Wymagania planu przedsiębiorstwa w witrynie Azure Marketplace.

Zapoznaj się ze skryptem wdrażania interfejsu wiersza polecenia platformy Azure

Skrypt wdrażania używany w tym przewodniku Szybki start pochodzi z architektury referencyjnej usługi 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}

Wdrażanie klastra

Aby wdrożyć klaster usługi Azure Spring Apps przy użyciu skryptu interfejsu wiersza polecenia platformy Azure, wykonaj następujące kroki:

  1. Zaloguj się do platformy Azure przy użyciu następującego polecenia:

    az login
    

    Po zalogowaniu to polecenie wyświetli informacje o wszystkich subskrypcjach, do których masz dostęp. Zanotuj nazwę i identyfikator subskrypcji, której chcesz użyć.

  2. Ustaw subskrypcję docelową.

    az account set --subscription "<your subscription name>"
    
  3. Zarejestruj dostawcę zasobów usługi Azure Spring Apps.

    az provider register --namespace 'Microsoft.AppPlatform'
    
  4. Dodaj wymagane rozszerzenia do interfejsu wiersza polecenia platformy Azure.

    az extension add --name spring
    
  5. Wybierz lokalizację wdrożenia z regionów, w których jest dostępna usługa Azure Spring Apps, jak pokazano w obszarze Produkty dostępne według regionów.

  6. Użyj następującego polecenia, aby wygenerować listę lokalizacji platformy Azure. Zanotuj krótką wartość Name dla regionu wybranego w poprzednim kroku.

    az account list-locations --output table
    
  7. Utwórz grupę zasobów w celu wdrożenia zasobu.

    az group create --name <your-resource-group-name> --location <location-name>
    
  8. Zapisz skrypt planu Usługi Azure Spring Apps w warstwie Standardowa lub planu Enterprise lokalnie, a następnie uruchom go z poziomu wiersza polecenia powłoki Bash.

    Plan standardowy:

    ./azuredeploySpringStandard.sh
    

    Plan przedsiębiorstwa:

    ./azuredeploySpringEnterprise.sh
    
  9. Wprowadź następujące wartości po wyświetleniu monitu przez skrypt:

    • Zapisany wcześniej identyfikator subskrypcji platformy Azure.
    • Zapisana wcześniej nazwa lokalizacji platformy Azure.
    • Nazwa utworzonej wcześniej grupy zasobów.
    • Nazwa grupy zasobów sieci wirtualnej, w której zostaną wdrożone zasoby.
    • Nazwa sieci wirtualnej będącej szprychą (na przykład vnet-spoke).
    • Nazwa podsieci, która ma być używana przez usługę Azure Spring Apps Application Service (na przykład snet-app).
    • Nazwa podsieci, która ma być używana przez usługę Azure Spring Apps Runtime Service (na przykład snet-runtime).
    • Nazwa grupy zasobów dla obszaru roboczego usługi Azure Log Analytics, która ma być używana do przechowywania dzienników diagnostycznych.
    • Nazwa obszaru roboczego usługi Azure Log Analytics (na przykład la-cb5sqq6574o2a).
    • CiDR waha się od sieci wirtualnej do użycia przez usługę Azure Spring Apps (na przykład XX.X.X.X.X/16,XX.X.X.X.X/16,XX.X.X.X/16).
    • Pary klucz/wartość, które mają być stosowane jako tagi dla wszystkich zasobów, które obsługują tagi. Aby uzyskać więcej informacji, zobacz Organizowanie zasobów platformy Azure i hierarchii zarządzania przy użyciu tagów. Użyj listy rozdzielanej spacjami, aby zastosować wiele tagów (na przykład environment=Dev BusinessUnit=finance).

Po podaniu tych informacji skrypt utworzy i wdroży zasoby platformy Azure.

Przeglądanie wdrożonych zasobów

Możesz użyć witryny Azure Portal, aby sprawdzić wdrożone zasoby lub użyć interfejsu wiersza polecenia platformy Azure, aby wyświetlić listę wdrożonych zasobów.

Czyszczenie zasobów

Jeśli planujesz kontynuować pracę z kolejnymi przewodnikami Szybki start i samouczkami, możesz pozostawić te zasoby na miejscu. Gdy grupa zasobów nie będzie już potrzebna, usuń grupę zasobów, która usuwa zasoby w grupie zasobów. Aby usunąć grupę zasobów przy użyciu interfejsu wiersza polecenia platformy Azure, użyj następujących poleceń:

echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."

Następne kroki

W tym przewodniku Szybki start wdrożono wystąpienie usługi Azure Spring Apps w istniejącej sieci wirtualnej przy użyciu interfejsu wiersza polecenia platformy Azure, a następnie sprawdzono wdrożenie. Aby dowiedzieć się więcej na temat usługi Azure Spring Apps, przejdź do poniższych zasobów.