Movendo VHDs entre Subscription no Microsoft Azure

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.

Anúncios

Sobre Michel Jatoba

Trabalhando com infra-estrutura desde 2005, com foco em tecnologias em Cloud Microsoft. Com as seguintes Certificações MCP, MCSA Office 365, MS Specialist Microsoft Azure. Atualmente trabalho como consultor técnico suportando as tecnologia como Active Directory, Windows Server, Microsoft Azure, Sharepoint, Team Foudation Server, EMS Enterprise Mobile Suite e Office 365.

Publicado em 5 de março de 2015, em Microsoft Azure e marcado como , , , , , , . Adicione o link aos favoritos. Deixe um comentário.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: