Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Примечание.
Планы Basic, Standardи Enterprise вступили в период вывода из обращения 17 марта 2025 года. Дополнительные сведения см. в объявлении о выходе на пенсию в Azure Spring Apps.
Эта статья относится к: ❎ Basic/Standard ✅ Enterprise
В этом кратком руководстве показано, как создавать и развертывать приложения в Azure Spring Apps с помощью плана Enterprise.
Предварительные условия
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Изучите и выполните раздел "Требования" плана Enterprise в Azure Marketplace.
- Azure CLI версии 2.45.0 или более поздней.
- Git.
-
Расширение плана Azure Spring Apps Enterprise. Используйте следующую команду, чтобы удалить предыдущие версии и установить последнее расширение плана Enterprise. Если вы ранее установили
spring-cloudрасширение, удалите его, чтобы избежать несоответствий конфигурации и версий.az extension add --upgrade --name spring az extension remove --name spring-cloud
загрузка примера приложения;
Чтобы скачать пример, используйте следующие команды:
git clone https://github.com/Azure-Samples/acme-fitness-store
cd acme-fitness-store
создание экземпляра службы
Чтобы подготовить службу Azure Spring Apps, выполните следующие действия:
Войдите в Azure CLI и выберите активную подписку, выполнив следующую команду:
az login az account list --output table az account set --subscription <subscription-ID>Используйте следующую команду, чтобы принять юридические условия и заявления о конфиденциальности для плана Enterprise. Этот шаг необходим, только если подписка никогда не использовалась для создания экземпляра плана Enterprise в Azure Spring Apps.
az provider register --namespace Microsoft.SaaS az term accept \ --publisher vmware-inc \ --product azure-spring-cloud-vmware-tanzu-2 \ --plan asa-ent-hr-mtrВыберите расположение. Это расположение должно быть расположением, поддерживающим план Azure Spring Apps Enterprise. Дополнительные сведения см. в статье Часто задаваемые вопросы о Приложениях Azure Spring.
Создайте переменные для хранения имен ресурсов с помощью следующих команд. Обязательно замените заполнители своими значениями. Имя экземпляра службы Azure Spring Apps должно быть от 4 до 32 символов и может содержать только строчные буквы, цифры и дефисы. Первым символом в имени службы должна быть буква, а последним — буква или цифра.
export LOCATION="<location>" export RESOURCE_GROUP="<resource-group-name>" export SERVICE_NAME="<Azure-Spring-Apps-service-instance-name>" export WORKSPACE_NAME="<workspace-name>"Выполните следующую команду, чтобы создать группу ресурсов.
az group create \ --name ${RESOURCE_GROUP} \ --location ${LOCATION}Дополнительные сведения о группах ресурсов см. в статье Общие сведения об Azure Resource Manager.
Чтобы создать экземпляр службы "Приложения Azure Spring", используйте следующую команду:
az spring create \ --resource-group ${RESOURCE_GROUP} \ --name ${SERVICE_NAME} \ --sku enterprise \ --enable-application-configuration-service \ --enable-service-registry \ --enable-gateway \ --enable-api-portalЧтобы создать рабочую область Log Analytics, которая будет использоваться для службы "Приложения Azure Spring", используйте следующую команду:
az monitor log-analytics workspace create \ --resource-group ${RESOURCE_GROUP} \ --workspace-name ${WORKSPACE_NAME} \ --location ${LOCATION}Чтобы получить идентификатор ресурса для рабочей области Log Analytics и экземпляра сервиса Azure Spring Apps, используйте следующие команды:
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", используйте следующую команду:
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-service,order-service,payment-service,catalog-serviceиfrontend, используйте следующие команды: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}
Вынесение конфигурации наружу с помощью Службы конфигурации приложений
Чтобы настроить Службу конфигурации приложений, выполните следующие действия:
Чтобы создать репозиторий конфигурации для Службы конфигурации приложений, используйте следующую команду:
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"Для привязки приложений к Службе конфигурации приложений используйте следующие команды:
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}
Активируйте регистрацию и обнаружение сервисов
Чтобы активировать регистрацию и обнаружение служб, используйте следующие команды для привязки приложений к Реестру служб:
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 Build Service
Для развертывания и сборки приложения выполните приведенные ниже действия. Для выполнения этих шагов убедитесь, что терминал находится в папке проекта, прежде чем выполнять какие-либо команды:
Чтобы создать пользовательский билдер в Службе сборки Tanzu, используйте следующую команду:
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Для сборки и развертывания службы платежей используйте следующую команду:
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=17Для сборки и развертывания службы каталогов используйте следующую команду:
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=17Для сборки и развертывания службы управления заказами используйте следующую команду:
az spring app deploy \ --resource-group ${RESOURCE_GROUP} \ --name order-service \ --service ${SERVICE_NAME} \ --builder quickstart-builder \ --source-path apps/acme-orderДля сборки и развертывания службы управления корзиной используйте следующую команду:
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Для сборки и развертывания интерфейсного приложения используйте следующую команду:
az spring app deploy \ --resource-group ${RESOURCE_GROUP} \ --name frontend \ --service ${SERVICE_NAME} \ --source-path apps/acme-shopping
Совет
Чтобы устранить неполадки с развертываниями, вы можете использовать следующую команду для получения потоковых журналов в реальном времени, когда приложение запущено: az spring app logs --name <app name> --follow.
Маршрутизация запросов к приложениям с помощью Шлюза Spring Cloud
Выполните следующие действия, чтобы настроить Шлюз Spring Cloud и маршруты для приложений.
Чтобы назначить конечную точку Шлюзу Spring Cloud, используйте следующую команду:
az spring gateway update \ --resource-group ${RESOURCE_GROUP} \ --service ${SERVICE_NAME} \ --assign-endpoint trueЧтобы указать сведения об API Шлюза Spring Cloud, используйте следующие команды:
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 "*"Чтобы создать маршруты для службы управления корзиной, используйте следующую команду:
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.jsonЧтобы создать маршруты для службы управления заказами, используйте следующую команду:
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.jsonЧтобы создать маршруты для службы каталогов, используйте следующую команду:
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Чтобы создать маршруты для внешнего интерфейса, используйте следующую команду:
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.jsonЧтобы получить URL-адрес Шлюза Spring Cloud, используйте следующие команды:
export GATEWAY_URL=$(az spring gateway show \ --resource-group ${RESOURCE_GROUP} \ --service ${SERVICE_NAME} \ --query properties.url \ --output tsv) echo "https://${GATEWAY_URL}"Вы можете перейти по выходному URL-адресу в браузере, чтобы просмотреть развернутое приложение.
Просмотр и пробное использование интерфейсов API с помощью Портала API
Для настройки портала API выполните следующие действия.
Чтобы назначить конечную точку порталу API, используйте следующую команду:
az spring api-portal update \ --resource-group ${RESOURCE_GROUP} \ --service ${SERVICE_NAME} \ --assign-endpoint trueЧтобы получить URL-адрес портала API, используйте следующие команды:
export PORTAL_URL=$(az spring api-portal show \ --resource-group ${RESOURCE_GROUP} \ --service ${SERVICE_NAME} \ --query properties.url \ --output tsv) echo "https://${PORTAL_URL}"Вы можете открыть выходной URL-адрес в браузере, чтобы изучить API приложения.
Очистка ресурсов
Если вы планируете продолжить работу с последующими краткими руководствами и учебными материалами, вы можете оставить эти ресурсы на месте. Удалите ненужную группу ресурсов. Ресурсы в ней будут также удалены. Чтобы удалить группу ресурсов с помощью Azure CLI, используйте следующие команды:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."
Следующие шаги
Теперь, когда вы успешно создали и развернули приложение, перейдите к любому из следующих дополнительных кратких руководств: