Olá Pessoal!!!

Hoje vou demostrar a vocês como mover o VHD de uma Subscription para outra Subscription no Microsoft Azure. Vou especificar linha por linha, o processo para mover o VHD é bem simples.

Para mover os VHDs você precisa logar com seu usuário do Microsoft Azure Powershell, caso não tenha instalado segue o link http://goo.gl/Q6EX31, com o passo a passo da configuração e instalação.

Vamos lá!

Vamos importar o Modulo Azure, esse comando vai fazer o download de todos os comandos do Azure;
Import-Module Azure

Em seguida vamos verificar as Contas associadas , execute o seguinte comando;
Get-AzureAccount

1

Agora vamos pegar as informações das Subscription para  preparar a migração, execute o seguinte comando;
Get-AzureSubscription

2

Esse comando vai apresentar as Subscription, no meu caso estou pegando uma Subscription onde meu VHD está e a outra que vou migrar.

Selecione a subscription onde está o VHD
Select-AzureSubscription "Subscription_1"

3

Escolha o VHD blob que vai ser copiado, vamos atribuir uma variável ao "blobName" o comado vai ficar assim
$blobName = "vmtestelab-vmtestelab-2015-03-04.vhd"

Agora vamos precisar das seguintes informações, nome do Storage, chave do Storage e o nome do Container. As variáveis serão atribuídas da seguinte maneira;
$sourceStorageAccountName = "storage_1"
$sourceKey = "09Agn4fVjULAghRV0YWaR2crBlDNIOO/KJ5k+94VKUi74QFW72QpskRAXRTjbEKg38xD0
TI6V3iQR/jb0uCIzg=="

$sourceContext = New-AzureStorageContext –StorageAccountName $sourceStorageAccount
Name -StorageAccountKey $sourceKey

$sourceContainer = "vhds"

4

Agora vamos atribuir as variáveis para o Storage de destino, execute o seguinte comando;
$destinationStorageAccountName = "storage_2"
$destinationKey = "Q/bV6D30mql7aEteJdyFopZ1LgekxsrmXOxfY25EqW+/fqteWeDr/CYYt/OcVCie
rqdhjYB67Z7vZQ5haozTYQ=="

$destinationContext = New-AzureStorageContext –StorageAccountName $destination
StorageAccountName -StorageAccountKey $destinationKey

Agora vamos criar o contêiner de destino, caso tenha o contêiner criado não precisa dessa etapa. Execute o seguinte comando;
$destinationContainerName = "vhsmovido"
New-AzureStorageContainer -Name $destinationContainerName -Context $destination
Context

5

Pronto com o Contêiner, agora vamos fazer a copia do VHD para a Subscription_2, execute  seguinte comando;
$blobCopy = Start-AzureStorageBlobCopy -DestContainer $destinationContainerName 
-DestContext $destinationContext -SrcBlob $blobName -Context $sourceContext
-SrcContainer $sourceContainer

6

Para ver como está a copia do VHD execute o seguinte comando;
while(($blobCopy | Get-AzureStorageBlobCopyState).Status -eq "Pending")
{
Start-Sleep -s 30
$blobCopy | Get-AzureStorageBlobCopyState
}

$blobCopy | Get-AzureStorageBlobCopyState


7

Para acompanhar o Status execute apenas o seguinte comando;
$blobCopy | Get-AzureStorageBlobCopyState

Pronto após alguns minutos ele vai trazer a mensagem que foi movido com sucesso

8

Vou deixar o Script montado abaixo, basta alterar os parâmetros e executar.
Select-AzureSubscription "Demo"
$blobName = "vmtestelab-vmtestelab-2015-03-04.vhd"
$sourceStorageAccountName = "Storage-1"
$sourceKey = "09Agn4fVjULAghRV0YWaR2crBlDNIOO/KJ5k+94VKUi74QFW72QpskRAXRTjbEKg38xD
0TI6V3iQR/jb0uCIzg=="

$sourceContext = New-AzureStorageContext –StorageAccountName $sourceStorage
AccountName -StorageAccountKey $sourceKey

$sourceContainer = "vhds"
$destinationStorageAccountName = "Storage-2"
$destinationKey = "Q/bV6D30mql7aEteJdyFopZ1LgekxsrmXOxfY25EqW+/fqteWeDr/CYYt/OcVCie
rqdhjYB67Z7vZQ5haozTYQ=="

$destinationContext = New-AzureStorageContext –StorageAccountName $destination
StorageAccountName -StorageAccountKey $destinationKey

$destinationContainerName = "vhsmovido"
New-AzureStorageContainer -Name $destinationContainerName -Context $destinationContext
$blobCopy = Start-AzureStorageBlobCopy -DestContainer $destinationContainerName
-DestContext $destinationContext -SrcBlob $blobName -Context $sourceContext -SrcContainer $sourceContainer

while(($blobCopy | Get-AzureStorageBlobCopyState).Status -eq "Pending")
{
Start-Sleep -s 30
$blobCopy | Get-AzureStorageBlobCopyState
}

$blobCopy | Get-AzureStorageBlobCopyState

Valeu Galera e até o próximo post.

Deixe seu Comentário
No comments