Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Not
Temel, Standart ve Kurumsal planları 17 Mart 2025'te kullanımdan kaldırılma dönemine girdi. Daha fazla bilgi için bkz . Azure Spring Apps kullanımdan kaldırma duyurusu.
Bu makale şunlar için geçerlidir: ❎ Temel/Standart ✅ Kurumsal
Bu hızlı başlangıçta, Kurumsal planı kullanarak Azure Spring Apps'te uygulama derleme ve dağıtma adımları gösterilmektedir.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
- Azure CLI sürüm 2.45.0 veya üzeri.
- Git.
-
Azure Spring Apps Kurumsal plan uzantısı. Önceki sürümleri kaldırmak ve en son Kurumsal plan uzantısını yüklemek için aşağıdaki komutu kullanın. Uzantıyı
spring-clouddaha önce yüklediyseniz yapılandırma ve sürüm uyuşmazlıklarını önlemek için uzantıyı kaldırın.az extension add --upgrade --name spring az extension remove --name spring-cloud
Örnek uygulamayı indirme
Örneği indirmek için aşağıdaki komutları kullanın:
git clone https://github.com/Azure-Samples/acme-fitness-store
cd acme-fitness-store
Hizmet örneği sağlama
Azure Spring Apps hizmet örneğini sağlamak için aşağıdaki adımları kullanın.
Azure CLI'da oturum açmak ve etkin aboneliğinizi seçmek için aşağıdaki komutu kullanın:
az login az account list --output table az account set --subscription <subscription-ID>Kurumsal plan için yasal koşulları ve gizlilik bildirimlerini kabul etmek için aşağıdaki komutu kullanın. Bu adım yalnızca aboneliğiniz Azure Spring Apps'in Kurumsal plan örneğini oluşturmak için hiç kullanılmamışsa gereklidir.
az provider register --namespace Microsoft.SaaS az term accept \ --publisher vmware-inc \ --product azure-spring-cloud-vmware-tanzu-2 \ --plan asa-ent-hr-mtrBir konum seçin. Bu konum, Azure Spring Apps Kurumsal planını destekleyen bir konum olmalıdır. Daha fazla bilgi için bkz . Azure Spring Apps SSS.
Aşağıdaki komutları kullanarak kaynak adlarını tutmak için değişkenler oluşturun. Yer tutucuları kendi değerlerinizle değiştirmeyi unutmayın. Azure Spring Apps hizmet örneğinizin adı 4 ila 32 karakter uzunluğunda olmalıdır ve yalnızca küçük harf, sayı ve kısa çizgi içerebilir. Hizmet adının ilk karakteri bir harf, son karakter ise harf veya sayı olmalıdır.
export LOCATION="<location>" export RESOURCE_GROUP="<resource-group-name>" export SERVICE_NAME="<Azure-Spring-Apps-service-instance-name>" export WORKSPACE_NAME="<workspace-name>"Kaynak grubu oluşturmak için aşağıdaki komutu kullanın:
az group create \ --name ${RESOURCE_GROUP} \ --location ${LOCATION}Kaynak grupları hakkında daha fazla bilgi için bkz . Azure Resource Manager nedir?.
Azure Spring Apps hizmet örneği oluşturmak için aşağıdaki komutu kullanın:
az spring create \ --resource-group ${RESOURCE_GROUP} \ --name ${SERVICE_NAME} \ --sku enterprise \ --enable-application-configuration-service \ --enable-service-registry \ --enable-gateway \ --enable-api-portalAzure Spring Apps hizmetiniz için kullanılacak bir Log Analytics Çalışma Alanı oluşturmak için aşağıdaki komutu kullanın:
az monitor log-analytics workspace create \ --resource-group ${RESOURCE_GROUP} \ --workspace-name ${WORKSPACE_NAME} \ --location ${LOCATION}Log Analytics Çalışma Alanınızın ve Azure Spring Apps hizmet örneğinizin Kaynak Kimliğini almak için aşağıdaki komutları kullanın:
export LOG_ANALYTICS_RESOURCE_ID=$(az monitor log-analytics workspace show \ --resource-group ${RESOURCE_GROUP} \ --workspace-name ${WORKSPACE_NAME} \ --query id \ --output tsv) export AZURE_SPRING_APPS_RESOURCE_ID=$(az spring show \ --resource-group ${RESOURCE_GROUP} \ --name ${SERVICE_NAME} \ --query id \ --output tsv)Azure Spring Apps Hizmeti için tanılama ayarlarını yapılandırmak için aşağıdaki komutu kullanın:
az monitor diagnostic-settings create \ --name "send-logs-and-metrics-to-log-analytics" \ --resource ${AZURE_SPRING_APPS_RESOURCE_ID} \ --workspace ${LOG_ANALYTICS_RESOURCE_ID} \ --logs '[ { "category": "ApplicationConsole", "enabled": true, "retentionPolicy": { "enabled": false, "days": 0 } }, { "category": "SystemLogs", "enabled": true, "retentionPolicy": { "enabled": false, "days": 0 } }, { "category": "IngressLogs", "enabled": true, "retentionPolicy": { "enabled": false, "days": 0 } } ]' \ --metrics '[ { "category": "AllMetrics", "enabled": true, "retentionPolicy": { "enabled": false, "days": 0 } } ]', ,
cart-serviceorder-service,payment-servicevecatalog-serviceiçin uygulamalar oluşturmak içinfrontendaşağıdaki komutları kullanın:az spring app create \ --resource-group ${RESOURCE_GROUP} \ --name cart-service \ --service ${SERVICE_NAME} az spring app create \ --resource-group ${RESOURCE_GROUP} \ --name order-service \ --service ${SERVICE_NAME} az spring app create \ --resource-group ${RESOURCE_GROUP} \ --name payment-service \ --service ${SERVICE_NAME} az spring app create \ --resource-group ${RESOURCE_GROUP} \ --name catalog-service \ --service ${SERVICE_NAME} az spring app create \ --resource-group ${RESOURCE_GROUP} \ --name frontend \ --service ${SERVICE_NAME}
Uygulama Yapılandırma Hizmeti ile yapılandırmayı dışlaştırma
Uygulama Yapılandırma Hizmeti'ni yapılandırmak için aşağıdaki adımları kullanın.
Uygulama Yapılandırma Hizmeti için bir yapılandırma deposu oluşturmak için aşağıdaki komutu kullanın:
az spring application-configuration-service git repo add \ --resource-group ${RESOURCE_GROUP} \ --name acme-fitness-store-config \ --service ${SERVICE_NAME} \ --label main \ --patterns "catalog/default,catalog/key-vault,identity/default,identity/key-vault,payment/default" \ --uri "https://github.com/Azure-Samples/acme-fitness-store-config"Uygulamaları Uygulama Yapılandırma Hizmeti'ne bağlamak için aşağıdaki komutları kullanın:
az spring application-configuration-service bind \ --resource-group ${RESOURCE_GROUP} \ --app payment-service \ --service ${SERVICE_NAME} az spring application-configuration-service bind \ --resource-group ${RESOURCE_GROUP} \ --app catalog-service \ --service ${SERVICE_NAME}
Hizmet kaydını ve bulmayı etkinleştirme
Etkin hizmet kaydı ve bulma için, uygulamaları Service Registry'ye bağlamak için aşağıdaki komutları kullanın:
az spring service-registry bind \
--resource-group ${RESOURCE_GROUP} \
--app payment-service \
--service ${SERVICE_NAME}
az spring service-registry bind \
--resource-group ${RESOURCE_GROUP} \
--app catalog-service \
--service ${SERVICE_NAME}
Tanzu Derleme Hizmeti ile çok teknolojili uygulamalar dağıtma
Uygulamaları dağıtmak ve derlemek için aşağıdaki adımları kullanın. Bu adımlar için herhangi bir komut çalıştırmadan önce terminalin proje klasöründe olduğundan emin olun.
Tanzu Derleme Hizmeti'nde özel oluşturucu oluşturmak için aşağıdaki komutu kullanın:
az spring build-service builder create \ --resource-group ${RESOURCE_GROUP} \ --name quickstart-builder \ --service ${SERVICE_NAME} \ --builder-file azure-spring-apps-enterprise/resources/json/tbs/builder.jsonÖdeme hizmetini derlemek ve dağıtmak için aşağıdaki komutu kullanın:
az spring app deploy \ --resource-group ${RESOURCE_GROUP} \ --name payment-service \ --service ${SERVICE_NAME} \ --config-file-pattern payment/default \ --source-path apps/acme-payment \ --build-env BP_JVM_VERSION=17Katalog hizmetini derlemek ve dağıtmak için aşağıdaki komutu kullanın:
az spring app deploy \ --resource-group ${RESOURCE_GROUP} \ --name catalog-service \ --service ${SERVICE_NAME} \ --config-file-pattern catalog/default \ --source-path apps/acme-catalog \ --build-env BP_JVM_VERSION=17Sipariş hizmetini derlemek ve dağıtmak için aşağıdaki komutu kullanın:
az spring app deploy \ --resource-group ${RESOURCE_GROUP} \ --name order-service \ --service ${SERVICE_NAME} \ --builder quickstart-builder \ --source-path apps/acme-orderSepet hizmetini derlemek ve dağıtmak için aşağıdaki komutu kullanın:
az spring app deploy \ --resource-group ${RESOURCE_GROUP} \ --name cart-service \ --service ${SERVICE_NAME} \ --builder quickstart-builder \ --env "CART_PORT=8080" \ --source-path apps/acme-cartÖn uç uygulamasını derlemek ve dağıtmak için aşağıdaki komutu kullanın:
az spring app deploy \ --resource-group ${RESOURCE_GROUP} \ --name frontend \ --service ${SERVICE_NAME} \ --source-path apps/acme-shopping
İpucu
Sorunlu dağıtımlar için, uygulama her çalıştırılırken günlük akışını gerçek zamanlı olarak almak için aşağıdaki komutu kullanabilirsiniz: az spring app logs --name <app name> --follow.
Spring Cloud Gateway ile istekleri uygulamalara yönlendirme
Spring Cloud Gateway'i yapılandırmak ve uygulamalara giden yolları yapılandırmak için aşağıdaki adımları kullanın.
Spring Cloud Gateway'e bir uç nokta atamak için aşağıdaki komutu kullanın:
az spring gateway update \ --resource-group ${RESOURCE_GROUP} \ --service ${SERVICE_NAME} \ --assign-endpoint trueSpring Cloud Gateway API bilgilerini yapılandırmak için aşağıdaki komutları kullanın:
export GATEWAY_URL=$(az spring gateway show \ --resource-group ${RESOURCE_GROUP} \ --service ${SERVICE_NAME} \ --query properties.url \ --output tsv) az spring gateway update \ --resource-group ${RESOURCE_GROUP} \ --service ${SERVICE_NAME} \ --api-description "Fitness Store API" \ --api-title "Fitness Store" \ --api-version "v1.0" \ --server-url "https://${GATEWAY_URL}" \ --allowed-origins "*"Sepet hizmeti için yollar oluşturmak için aşağıdaki komutu kullanın:
az spring gateway route-config create \ --resource-group ${RESOURCE_GROUP} \ --name cart-routes \ --service ${SERVICE_NAME} \ --app-name cart-service \ --routes-file azure-spring-apps-enterprise/resources/json/routes/cart-service.jsonSipariş hizmeti için yollar oluşturmak için aşağıdaki komutu kullanın:
az spring gateway route-config create \ --resource-group ${RESOURCE_GROUP} \ --name order-routes \ --service ${SERVICE_NAME} \ --app-name order-service \ --routes-file azure-spring-apps-enterprise/resources/json/routes/order-service.jsonKatalog hizmeti için yollar oluşturmak için aşağıdaki komutu kullanın:
az spring gateway route-config create \ --resource-group ${RESOURCE_GROUP} \ --name catalog-routes \ --service ${SERVICE_NAME} \ --app-name catalog-service \ --routes-file azure-spring-apps-enterprise/resources/json/routes/catalog-service.jsonÖn uç için yollar oluşturmak için aşağıdaki komutu kullanın:
az spring gateway route-config create \ --resource-group ${RESOURCE_GROUP} \ --name frontend-routes \ --service ${SERVICE_NAME} \ --app-name frontend \ --routes-file azure-spring-apps-enterprise/resources/json/routes/frontend.jsonSpring Cloud Gateway URL'sini almak için aşağıdaki komutları kullanın:
export GATEWAY_URL=$(az spring gateway show \ --resource-group ${RESOURCE_GROUP} \ --service ${SERVICE_NAME} \ --query properties.url \ --output tsv) echo "https://${GATEWAY_URL}"Dağıtılan uygulamayı keşfetmek için çıkış URL'sini tarayıcıda açabilirsiniz.
API Portalı ile API'lere göz atma ve api'leri deneme
API Portalını yapılandırmak için aşağıdaki adımları kullanın.
API Portalı'na bir uç nokta atamak için aşağıdaki komutu kullanın:
az spring api-portal update \ --resource-group ${RESOURCE_GROUP} \ --service ${SERVICE_NAME} \ --assign-endpoint trueAPI Portalı'nın URL'sini almak için aşağıdaki komutları kullanın:
export PORTAL_URL=$(az spring api-portal show \ --resource-group ${RESOURCE_GROUP} \ --service ${SERVICE_NAME} \ --query properties.url \ --output tsv) echo "https://${PORTAL_URL}"Uygulama API'lerini keşfetmek için çıkış URL'sini tarayıcıda açabilirsiniz.
Kaynakları temizleme
Sonraki hızlı başlangıçlar ve öğreticilerle çalışmaya devam etmek istiyorsanız, bu kaynakları yerinde bırakmak isteyebilirsiniz. Artık gerekli olmadığında kaynak grubunu silin; bu da kaynak grubundaki kaynakları siler. Azure CLI kullanarak kaynak grubunu silmek için aşağıdaki komutları kullanın:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."
Sonraki adımlar
Uygulamanızı başarıyla derleyip dağıttığınız için, aşağıdaki isteğe bağlı hızlı başlangıçlardan herhangi birine geçin: