Bagikan melalui


Mulai Cepat: Memprovisikan Azure Spring Apps menggunakan Azure CLI

Catatan

Paket Basic, Standard, dan Enterprise tidak digunakan lagi mulai pertengahan Maret 2025, dengan periode penghentian 3 tahun. Sebaiknya transisi ke Azure Container Apps. Untuk informasi selengkapnya, lihat pengumuman penghentian Azure Spring Apps.

Konsumsi Standar dan paket khusus akan ditolak mulai 30 September 2024, dengan pematian lengkap setelah enam bulan. Sebaiknya transisi ke Azure Container Apps. Untuk informasi selengkapnya, lihat Memigrasikan konsumsi Azure Spring Apps Standard dan paket khusus ke Azure Container Apps.

Artikel ini berlaku untuk:❌ Basic ✔️ Standard ✔️ Enterprise

Mulai cepat ini menjelaskan cara menggunakan Azure CLI untuk menyebarkan kluster Azure Spring Apps ke jaringan virtual yang ada.

Azure Spring Apps memudahkan penyebaran aplikasi Spring ke Azure tanpa perubahan kode apa pun. Layanan ini mengelola infrastruktur aplikasi Spring sehingga pengembang dapat fokus pada kode mereka. Azure Spring Apps menyediakan manajemen siklus hidup menggunakan pemantauan dan diagnostik yang komprehensif, manajemen konfigurasi, penemuan layanan, integrasi CI/CD, penyebaran biru-hijau, dan banyak lagi.

Rencana penyebaran Enterprise mencakup komponen Tanzu berikut:

  • Layanan Build
  • Layanan Konfigurasi Aplikasi
  • Registri Layanan
  • Spring Cloud Gateway
  • Portal API

Prasyarat

  • Langganan Azure. Jika Anda tidak memiliki langganan, buat akun gratis sebelum memulai.
  • Dua subnet khusus untuk kluster Azure Spring Apps, satu subnet untuk runtime bahasa umum layanan dan satu subnet lain untuk aplikasi Spring. Untuk mengetahui persyaratan subnet dan jaringan virtual, lihat bagian Persyaratan jaringan virtual dari artikel Menyebarkan Azure Spring Apps di jaringan virtual.
  • Ruang kerja Log Analytics yang sudah ada untuk pengaturan diagnostik Azure Spring Apps dan sumber daya Application Insights berbasis ruang kerja. Untuk informasi lebih lanjut, lihat Menganalisis log dan metrik dengan pengaturan diagnostik dan Application Insights Java In-Process Agent di Azure Spring Apps.
  • Tiga rentang Perutean Antar-Domain Tanpa Kelas (CIDR) internal (setidaknya /16 untuk masing-masing perutean) yang telah Anda identifikasi untuk digunakan oleh kluster Azure Spring Apps. Rentang CIDR ini tidak dapat dirutekan secara langsung dan hanya akan digunakan secara internal oleh kluster Azure Spring Apps. Kluster tidak boleh menggunakan 169.254.0.0/16, 172.30.0.0/16, 172.31.0.0/16, atau 192.0.2.0/24 untuk rentang CIDR aplikasi Spring Internal, atau rentang IP apa pun yang disertakan dalam rentang alamat jaringan virtual kluster.
  • Izin layanan diberikan ke jaringan virtual. Penyedia Sumber Daya Azure Spring Apps memerlukan User Access Administrator dan Network Contributor izin ke jaringan virtual Anda untuk memberikan perwakilan layanan khusus dan dinamis di jaringan virtual untuk penyebaran dan pemeliharaan lebih lanjut. Untuk mengetahui instruksi dan informasi selengkapnya, lihat bagian Memberikan izin layanan ke jaringan virtual pada Menyebarkan Azure Spring Apps di jaringan virtual.
  • Jika Anda menggunakan Azure Firewall atau Network Virtual Appliance (NVA), Anda juga harus memenuhi prasyarat berikut:
  • Azure CLI
  • Jika Anda menyebarkan instans paket Azure Spring Apps Enterprise untuk pertama kalinya dalam langganan target, lihat bagian Persyaratan paket Enterprise di Marketplace Azure.

Meninjau skrip penyebaran CLI Azure

Skrip penyebaran yang digunakan dalam mulai cepat ini berasal dari arsitektur referensi 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}

Menyebarkan kluster

Untuk menyebarkan kluster Azure Spring Apps menggunakan skrip Azure CLI, ikuti langkah-langkah berikut:

  1. Masuk ke Azure menggunakan perintah berikut:

    az login
    

    Setelah Anda masuk, perintah ini akan menghasilkan informasi tentang semua langganan yang dapat Anda akses. Perhatikan nama dan ID langganan yang ingin Anda gunakan.

  2. Atur langganan target.

    az account set --subscription "<your subscription name>"
    
  3. Daftarkan Penyedia Sumber Azure Spring Apps.

    az provider register --namespace 'Microsoft.AppPlatform'
    
  4. Tambahkan ekstensi yang diperlukan ke Azure CLI.

    az extension add --name spring
    
  5. Pilih lokasi penyebaran dari wilayah tempat Azure Spring Apps tersedia, seperti yang ditunjukkan di Produk yang tersedia berdasarkan wilayah.

  6. Gunakan perintah berikut untuk membuat daftar lokasi Azure. Catat nilai Nama singkat untuk wilayah yang Anda pilih di langkah sebelumnya.

    az account list-locations --output table
    
  7. Buat grup sumber daya untuk penyebaran sumber daya.

    az group create --name <your-resource-group-name> --location <location-name>
    
  8. Simpan skrip untuk paket Azure Spring Apps Standard atau paket Enterprise secara lokal, lalu jalankan dari perintah Bash.

    Paket standar:

    ./azuredeploySpringStandard.sh
    

    Paket perusahaan:

    ./azuredeploySpringEnterprise.sh
    
  9. Masukkan nilai berikut saat diminta oleh skrip:

    • ID langganan Azure yang Anda simpan sebelumnya.
    • Nama lokasi Azure yang Anda simpan sebelumnya.
    • Nama grup sumber daya yang Anda buat sebelumnya.
    • Nama grup sumber daya jaringan virtual tempat Anda akan menyebarkan sumber daya Anda.
    • Nama jaringan virtual spoke (misalnya, vnet-spoke).
    • Nama subnet yang akan digunakan layanan Azure Spring Apps (misalnya, snet-app).
    • Nama subnet yang akan digunakan App Service Spring Cloud (misalnya, snet-runtime).
    • Nama grup sumber daya untuk ruang kerja Azure Log Analytics yang akan digunakan untuk menyimpan log diagnostik.
    • Nama ruang kerja Azure Log Analytics (misalnya, la-cb5sqq6574o2a).
    • Rentang CIDR dari jaringan virtual Anda yang akan digunakan oleh Azure Spring Apps (misalnya, XX.XXX/16,XX.XXX/16,XX.XXX/16).
    • Pasangan kunci/nilai yang akan diterapkan sebagai tag pada semua sumber daya yang mendukung tag. Untuk informasi selengkapnya, lihat Menggunakan tag untuk mengatur hierarki sumber daya dan manajemen Azure Anda. Gunakan daftar yang dipisahkan spasi untuk menerapkan beberapa tag (misalnya, lingkungan=Dev BusinessUnit=keuangan).

Setelah Anda memberikan informasi ini, skrip akan membuat dan menyebarkan sumber daya Azure.

Meninjau sumber daya yang disebarkan

Anda dapat menggunakan portal Microsoft Azure untuk memeriksa sumber daya yang disebarkan, atau menggunakan Azure CLI untuk membuat daftar sumber daya yang disebarkan.

Membersihkan sumber daya

Jika Anda berencana untuk terus bekerja dengan mulai cepat dan tutorial berikutnya, biarkan sumber daya ini tetap di tempatnya. Jika tidak lagi diperlukan, hapus grup sumber daya yang juga akan menghapus sumber daya di grup sumber daya. Untuk menghapus grup sumber daya dengan menggunakan Azure CLI, gunakan perintah berikut:

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

Langkah berikutnya

Dalam mulai cepat ini, Anda menyebarkan instans Azure Spring Apps ke jaringan virtual yang ada menggunakan Azure CLI, lalu memvalidasi penyebaran. Untuk mempelajari selengkapnya tentang Azure Spring Apps, lanjutkan ke sumber daya di bawah ini.