Microsoft Azure è una piattaforma cloud, ormai presente sul mercato da molti anni, che porta con sé anche scelte importanti che hanno favorito l'evoluzione dei servizi. A volte queste scelte si traducono in migrazioni automatiche, con altre invece ci ritroviamo di fronte a servizi paralleli che si differenziano di poco, almeno all'inizio, per poi far evolvere quello nato e mantenere inalterato quello vecchio.
E' il caso del servizio di Storage che ancora oggi è possibile creare in versione classic per retro compatibilità con altri servizi, come i cloud service, oppure tramite Azure Resource Manager (ARM). Con la prima modalità perdiamo però alcuni vantaggi e caratteristiche introdotte con la nuova tipologia. Non possiamo godere per esempio della gestione per gruppi di risorse o spostare la risorsa da una sottoscrizione all'altra, né usare il deployment tramite template.
Fortunatamente esiste la facoltà di migrare il servizio attraverso un provider gestibile attraverso PowerShell che con pochi passi ci permette di avere un servizio spostato su ARM. E' necessario prima di tutto disporre dei moduli aggiuntivi dedicati ad Azure, aprire la console ed effettuare il login.
Login-AzureRmAccount
Otteniamo la lista delle sottoscrizioni e la andiamo a selezionare per operarci.
Get-AzureRMSubscription | Sort Name | Select Name Select-AzureRmSubscription -SubscriptionName "My Azure Subscription"
Registriamo successivamente il provider andando a controllare il suo stato di registrazione.
Register-AzureRmResourceProvider -ProviderNamespace Microsoft.ClassicInfrastructureMigrate Get-AzureRmResourceProvider -ProviderNamespace Microsoft.ClassicInfrastructureMigrate
Quest'ultimo comando va eseguito più volte fino a quando non troveremo lo stato impostato su Registered (dopo un paio di minuti).
A questo punto dobbiamo passare alla gestione delle risorse con la modalità classica e selezionare la sottoscrizione che contiene lo Storage Classic.
Add-AzureAccount Get-AzureSubscription | Sort SubscriptionName | Select SubscriptionName Select-AzureSubscription -SubscriptionName "My Azure Subscription"
Impostiamo una variabile per contenere il nome dello storage da migrare (quello che va a comporre il dominio) e successivamente utilizziamo Move-AzureStorageAccount per operare su di esso. Prima di tutto validiamo l'operazione per controllare che non ci siano errori che ne impediscano l'operazione.
$storageAccountName = "myStorageAccount" Move-AzureStorageAccount -Validate -StorageAccountName $storageAccountName
Procediamo quindi alla preparazione dello spostamento e al successivo commit.
Move-AzureStorageAccount -Prepare -StorageAccountName $storageAccountName Move-AzureStorageAccount -Commit -StorageAccountName $storageAccountName
Eventualmente possiamo usare l'opzione -abort per annullare l'operazione. Dopo qualche minuto troveremo così la risorsa migrata, mantenendo intatte configurazioni e chiavi utilizzate.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creare una libreria CSS universale - Rotazione degli elementi
Managed deployment strategy in Azure DevOps
Creare una libreria CSS universale: i bottoni
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API
Introduzione alle Container Queries
Rendere le variabili read-only in una pipeline di Azure DevOps
Utilizzare Azure Cosmos DB con i vettori
Utilizzare gRPC su App Service di Azure
Utilizzare QuickGrid di Blazor con Entity Framework
Gestione file Javascript in Blazor con .NET 9
Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
Creare una custom property in GitHub