Configurar o powershell da VM do Hyper-V

13

Como posso reconfigurar a VM do Hyper-V

Eu quero poder alterar o arquivo de configuração da VM, os pontos de verificação e os locais de disco rígido virtual com o Powershell.

Meu Google-FU está apenas me indicando em movimento, tenho cerca de ~ 100 VMs para alterar, posso mover os arquivos, não me importo com um pouco de tempo de inatividade, ao percorrer o assistente para cada VM leva cerca de 5 a 15 minutos por VM e esses são os menores, eu preciso poder fazer todos os 100 em 2 horas.

Se eu precisar esclarecer, por favor me avise.

== Onde estou ficando preso ==

Sim, eu vi esse link e olhei para a maioria dos comandos, mas nenhum deles faz o que estou procurando.

Os arquivos juntos são cerca de 14 TB

As ~ 100 VMs estão agrupadas entre 7 hosts. O armazenamento compartilhado é um disco giratório da EMC e eu quero movê-los para o 3Par ssd.

Agora, o que consegui fazer com sucesso foi desligar a VM, mover os arquivos, excluir todas as VMs e recriá-las VIA powershell, que quando eu disse ao meu CTO que pode ser a única maneira dele sobre gatinhos de merda.

O que eu quero ser capaz de fazer é não mover as VMs apenas reconfigurá-los,

Em outros trabalhos, você pode mudar:

PARA:

Euqueropoderfazerissousandoopowershell.Alémdisso,precisofazeromesmocomospontosdeverificação,osarquivosdeconfiguraçãoetodososoutroscomponentesdaVMdoHyper-V.

Eupossotolerarcercade2horasdeinatividade,parafazeroMOVEatravésdoassistente,poistodasasVMsnãoapenasgastammeumouse,maslevamcercade6horas.

Eutambémvenhopesquisandoissoetestandodiferentesestratégiasporalgumassemanas.

====Maisumtiro====

Eunãoestouolhandopara"Mover" tudo o que eu quero ser capaz de fazer é alterar as configurações de dentro do hyper-V mover vai demorar muito, é muito mais rápido para eu copiar os arquivos pela rede e apenas atualizar os caminhos no Hyper-V, posso desligar as máquinas.

Estou achando que não pode ser feito?

    
por Anthony Fornito 05.09.2017 / 23:36

1 resposta

8

Não tenho certeza se isso é o que você precisa, mas há um fragmento de PowerShell de exemplo que usei no passado para migrar VMs, incluindo todo o armazenamento para um novo destino

Get-VM -Name ('ansible-test-acs',
              'ansible-test-web',
              'ansible-test-db') |
ForEach-Object {
    # move everything to d:\hyper-v\vm_name on hv-srv-01
    $MoveOptions = @{
        'Name'                   = $_.Name
        'DestinationHost'        = 'hv-srv-01'
        'IncludeStorage'         = $true
        'DestinationStoragePath' = 'D:\Hyper-V\{0}' -f $_.Name
    }
    $MoveOptions
    Move-VM @MoveOptions -WhatIf
    # Move-VM @MoveOptions
}

Mova o armazenamento da VM para um novo caminho

('ansible-test-web', 'ansible-test-db') |
ForEach-Object {
    Move-VMStorage $_ '
            –DestinationStoragePath "E:\Hyper-V\$_"
}

Se você copiou uma VM e todos os seus arquivos para um novo local e deseja que o Hyper-V comece a usar o novo local, você deverá ser capaz de fazer algo assim.

Remove-VM oldvmname
Import-VM -Register -Path 'path to VM config file'
    
por 06.09.2017 / 00:12