Procedura: abilitare una risorsa di archiviazione permanente in Azure Spring Apps con il piano a consumo Standard e dedicato

Nota

I piani Basic, Standard ed Enterprise saranno deprecati a partire dalla metà di marzo 2025, con un periodo di ritiro di 3 anni. È consigliabile eseguire la transizione ad App Azure Container. Per altre informazioni, vedere l'annuncio di ritiro di Azure Spring Apps.

Il piano Standard a consumo e dedicato sarà deprecato a partire dal 30 settembre 2024, con un arresto completo dopo sei mesi. È consigliabile eseguire la transizione ad App Azure Container. Per altre informazioni, vedere Eseguire la migrazione del consumo di Azure Spring Apps Standard e del piano dedicato alle app Azure Container.

Questo articolo si applica a: ✔️ Utilizzo standard e dedicato (anteprima) ❌ Basic/Standard ❌ Enterprise

Questo articolo descrive come abilitare l'archiviazione permanente in Azure Spring Apps.

L'archiviazione personalizzata e l'archiviazione persistente predefinita in Azure Spring Apps differiscono nei modi seguenti:

  • Nell'archiviazione predefinita, gli artefatti generati dall'applicazione vengono caricati negli account Archiviazione di Azure. Nella propria risorsa di archiviazione, gli artefatti generati dall'applicazione vengono caricati in un account di archiviazione controllato.

  • Nell'archiviazione predefinita, Microsoft Azure controlla i criteri di crittografia inattivi e di gestione della durata per tali artefatti. Nella propria risorsa di archiviazione si controllano i criteri di crittografia dei dati inattivi, i criteri di gestione della durata e l'accesso alla rete.

È anche possibile montare una risorsa di archiviazione permanente personalizzata non solo in Azure Spring Apps, ma anche in altre istanze del servizio nell'ambiente, ad esempio App Azure Container. Questa funzionalità è possibile perché l'istanza di Azure Spring Apps viene distribuita nell'ambiente App Azure Container.

Prerequisiti

Configurare l'ambiente

Usare i comandi seguenti per impostare le variabili seguenti sui nomi delle risorse e sull'impostazione dell'area corrente.

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>"

Impostare un account di archiviazione

Usare la procedura seguente per creare un account di archiviazione e stabilire una condivisione file da montare nell'app Spring.

  1. Creare un account Archiviazione di Azure usando i comandi seguenti. La STORAGE_ACCOUNT_NAME variabile include un suffisso generato in modo casuale per garantire l'univocità.

    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
    

    Questo comando restituisce un messaggio di esito positivo al completamento.

  2. Creare la condivisione file Archiviazione di Azure usando i comandi seguenti:

    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. Ottenere la chiave dell'account di archiviazione usando il comando seguente:

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

    La chiave dell'account di archiviazione è necessaria per creare il collegamento di archiviazione nell'ambiente app azure Container.

Creare il collegamento di archiviazione nell'ambiente App Azure Container usando i comandi seguenti. Il az containerapp env storage set comando crea un collegamento tra l'ambiente e la condivisione file creata con il az storage share-rm comando .

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

Ora che l'account di archiviazione e l'ambiente sono collegati, è possibile usare il montaggio di archiviazione nell'istanza di Azure Spring Apps.

Aggiungere spazio di archiviazione a un'app

Aggiungere l'archiviazione permanente all'app esistente usando il comando seguente:

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

Pulire le risorse

Assicurarsi di eliminare le risorse create in questo articolo quando non sono più necessarie. Per eliminare le risorse, eliminare semplicemente il gruppo di risorse che li contiene. È possibile eliminare il gruppo di risorse usando il portale di Azure. In alternativa, per eliminare il gruppo di risorse usando l'interfaccia della riga di comando di Azure, usare i comandi seguenti:

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

Passaggi successivi