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
Garantire la provenienza e l'integrità degli artefatti prodotti su GitHub
Generare la software bill of material (SBOM) in GitHub
Disabilitare automaticamente un workflow di GitHub (parte 2)
Definire stili a livello di libreria in Angular
Usare il colore CSS per migliorare lo stile della pagina
Effettuare il refresh dei dati di una QuickGrid di Blazor
Utilizzare Azure Cosmos DB con i vettori
Eseguire query per recuperare il padre di un record che sfrutta il tipo HierarchyID in Entity Framework
Migliorare l'organizzazione delle risorse con Azure Policy
Esportare ed analizzare le issue di GitHub con la CLI e GraphQL
Generare velocemente pagine CRUD in Blazor con QuickGrid
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core