Включение собственного постоянного хранилища в Azure Spring Apps с помощью стандартного плана потребления и выделенного плана

Примечание.

Azure Spring Apps — это новое название службы Azure Spring Cloud. Старое название будет еще некоторое время встречаться в наших материалах, пока мы не обновим ресурсы, такие как снимки экрана, видео и схемы.

Эта статья относится к: ✔️ стандартное потребление и выделенная (предварительная версия) ❌ Basic/Standard ❌ Enterprise

В этой статье описывается, как включить собственное постоянное хранилище в Azure Spring Apps.

Собственное хранилище и встроенное постоянное хранилище в Azure Spring Apps отличаются следующими способами:

  • В встроенном хранилище артефакты, созданные приложением, передаются в служба хранилища Azure учетные записи. В собственном хранилище артефакты, созданные приложением, передаются в учетную запись хранения, которую вы управляете.

  • В встроенном хранилище Microsoft Azure управляет неактивных шифрования и политиками управления временем существования для этих артефактов. В собственном хранилище вы управляете политикой шифрования неактивных данных, политикой управления временем существования и сетевым доступом.

Вы также можете подключить собственное постоянное хранилище не только к Azure Spring Apps, но и к другим экземплярам служб в среде, такой как приложения контейнеров Azure. Эта возможность возможна, так как экземпляр Azure Spring Apps развертывается в среде приложений контейнеров Azure.

Необходимые компоненты

Настройка среды

Используйте следующие команды, чтобы задать следующие переменные имена ресурсов и текущий параметр региона.

export RESOURCE_GROUP="<resource-group-name>"
export LOCATION="eastus"
export AZURE_CONTAINER_APPS_ENVIRONMENT="<Azure-Container-Apps-environment-name>"
export AZURE_SPRING_APPS_INSTANCE="<Azure-Spring-Apps-instance-name>"
export APP_NAME="<Spring-app-name>"

Настройка учетной записи хранения

Выполните следующие действия, чтобы создать учетную запись хранения и установить общую папку для подключения к приложению Spring.

  1. Создайте учетную запись служба хранилища Azure с помощью следующих команд. Переменная STORAGE_ACCOUNT_NAME включает суффикс случайным образом, чтобы обеспечить уникальность.

    export STORAGE_ACCOUNT_NAME="myasastorageaccount$RANDOM"
    
    az storage account create \
        --resource-group $RESOURCE_GROUP \
        --name $STORAGE_ACCOUNT_NAME \
        --location "$LOCATION" \
        --kind StorageV2 \
        --sku Standard_LRS \
        --query provisioningState \
        --enable-large-file-share
    

    Эта команда возвращает сообщение об успешном выполнении.

  2. Создайте общую папку служба хранилища Azure с помощью следующих команд:

    export FILE_SHARE_NAME="<file-share-name>"
    
    az storage share-rm create \
        --resource-group $RESOURCE_GROUP \
        --storage-account $STORAGE_ACCOUNT_NAME \
        --name $FILE_SHARE_NAME \
        --quota 1024 \
        --enabled-protocols SMB \
        --output table
    
  3. Получите ключ учетной записи служба хранилища с помощью следующей команды:

    export STORAGE_ACCOUNT_KEY=$(az storage account keys list \
        --account-name $STORAGE_ACCOUNT_NAME \
        --query "[0].value" \
        --output tsv)
    

    Ключ учетной записи хранения необходим для создания ссылки на хранилище в среде приложений контейнеров Azure.

Создайте ссылку на хранилище в среде "Приложения контейнеров Azure" с помощью следующих команд. Команда az containerapp env storage set создает связь между средой и общей папкой, созданной az storage share-rm с помощью команды.

export STORAGE_MOUNT_NAME="<storage-account-name>"

az containerapp env storage set \
    --resource-group $RESOURCE_GROUP \
    --name $AZURE_CONTAINER_APPS_ENVIRONMENT \
    --storage-name $STORAGE_MOUNT_NAME \
    --azure-file-account-name $STORAGE_ACCOUNT_NAME \
    --azure-file-account-key $STORAGE_ACCOUNT_KEY \
    --azure-file-share-name $FILE_SHARE_NAME \
    --access-mode ReadWrite \
    --output table

Теперь, когда учетная запись хранения и среда связаны, можно использовать подключение хранилища в экземпляре Azure Spring Apps.

Добавление хранилища в приложение

Добавьте постоянное хранилище в существующее приложение с помощью следующей команды:

az spring app append-persistent-storage \
    --resource-group $RESOURCE_GROUP \
    --service $AZURE_SPRING_APPS_INSTANCE \
    --name $APP_NAME \
    --persistent-storage-type AzureFileVolume \
    --mount-path /var/log/nginx \
    --storage-name $STORAGE_MOUNT_NAME

Очистка ресурсов

Не забудьте удалить ресурсы, созданные в этой статье, если они больше не нужны. Чтобы удалить ресурсы, просто удалите группу ресурсов, содержащую их. Группу ресурсов можно удалить с помощью портал Azure. Кроме того, чтобы удалить группу ресурсов с помощью Azure CLI, используйте следующие команды:

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

Следующие шаги