Estou convertendo as últimas VMs do XenServer em Hyper-V.
A maioria deles são máquinas Windows e fiz backup e restauração usando o Windows Backup. Para algumas das caixas do Windows, usei o processo de exportação do XenServer para criar um arquivo XVA e, em seguida, converti-o em VHDs que poderia usar no Hyper-V.
Ambas as formas funcionaram perfeitamente, mas quando tentei exportar e converter o processo para algumas caixas Linux, não funcionou tão bem.
Eu criei o XVA, usei o Xenconvert para converter e criar os VHDs, mas quando os anexei a uma VM Hyper-V, acabei de receber um cursor piscando. Tendo feito algumas pesquisas, acredito que seja por causa da maneira como os HDDs são nomeados de maneira diferente. Por exemplo, a máquina original em /dev/
mostrará, xvda, xvda1.....
mas no Hyper-V acredito que estes serãosda, sda1......
É aqui que estou um pouco perdido .... Inicializei uma das máquinas no menu de inicialização em uma máquina convertida e olhei para as opções de menu e argumentos, mas não consegui ver nenhuma referência a um arquivo xvda
. Então, minhas suposições estão erradas acima ou estou procurando no lugar errado ou ambos?
Qualquer ajuda seria apreciada, mesmo que a sugestão seja fazer isso de uma maneira totalmente diferente.
EDIT1: (Adicionando informações do menu de inicialização)
Se eu selecionar o primeiro item no menu de inicialização e pressionar , recebo e
o seguinte
root (hd0,0)
kernel /vmlinuz-2.6.32-573.12.1.e16.x86_64 ro root=dev/mapper/VolGroup-lv_root rd_NOLUKS LANG=en_US.UTF-8 rd_NO_MD console=hvc0 KEYTABLE=us rd_LVM_LV=VolGroup/lv_swap SYSFONT=latacyrheb-sun16 rhgb crashkernel=auto quiet rd_LVM_LV=VolGroup/lv_root rd_NO_DM
initrd /initramfs-2.6.32-573.12.1.e16.x86_64.img
EDIT2: (versão Linux e fstab)
A versão do Linux é Centos 6.7
cópia de /etc/fstab (fiz uma tentativa e tentei mudar o UUID para o UUID do novo disco mas não pareceu funcionar
RESPOSTA EDITADA: Estive pensando no seu problema e acho que rsync ou dd backup/restore pode ser sua melhor aposta. Se você estiver usando vhdds de crescimento dinâmico, o rsync é provavelmente sua melhor aposta e, se estiver usando discos definidos estaticamente, o dd provavelmente é sua melhor aposta.
Opção 1: Primeiro, você terá que criar um compartilhamento samba ou cfs, ou anexar uma unidade física por algum outro meio para fazer backup dos dados. Depois de anexar um destino de backup, você terá que executar o comando rsync ou dd para fazer backup da unidade.
Exemplo de Rsync (usando Arch): https://wiki.archlinux.org/index.php/full_system_backup_with_rsync
Exemplo de DD: http://www.thegeekstuff.com/2010/10/dd-command-examples/
Tenho certeza de que você pode canalizar o rsync para o gzip se quiser criar um arquivo portátil.
Então você deve instalar o Centos em uma nova máquina hyper-v. Então você tem que passar pela tarefa de restaurar a imagem de backup (que será diferente dependendo do comando que você usou para criá-la).
Opção 2: Como alternativa, você pode criar a nova VM do CentOS primeiro e, em seguida, montar o outro arquivo VHD exportado na mesma máquina virtual no Hyper-V. Como você terá ambas as unidades montadas na mesma máquina, poderá passar pelo processo de migração nesse ponto. Depois de montar a unidade de backup e migrar seu gerenciador de inicialização para ela, você pode desmontar a unidade VM de substituição. Você pode reutilizar a mesma unidade para migrar suas outras máquinas (enxágue e repita para cada VM que precisar migrar). Se você tiver muitas máquinas, poderá tentar criar um script para esse processo ou poderá encontrar um script de backup já disponível.
Opção 3: Crie o novo arquivo VHD/VHDX com hyper-V e, em seguida, anexe e monte-o no convidado Xenserver que deseja duplicar e faça o backup diretamente dessa maneira.
Eu sei que há muitos obstáculos para superar, existem três opções sólidas que provavelmente funcionarão sem muito barulho. Sou meio novato no Linux, mas já movi imagens HD com bastante facilidade com DD antes e não vejo por que não funcionaria bem aqui.
RESPOSTA ORIGINAL:
Se você estiver usando o LVM, os HDDs não devem estar causando o problema e os links do HD devem estar intactos após a conversão, mas não sou especialista. Tenho bastante experiência com Linux no Hyper-V, mas não com a conversão de máquinas XenServer para Hyper-V. Dito isto, o erro que você está vendo sugere para mim que pode ser um problema com o kernel do Linux. Seria útil saber qual distribuição Linux você está usando.
O XenServer tem dois tipos de VM:
VMs HVM - são iguais às VMs Hyper-V e não precisam de alterações. Essas VMs podem ser convertidas em máquinas Hyper-V por meios convencionais (copie o VHD ou use o System Center 2012 Virtual Machine Manager (VMM), conforme recomendado pela Microsoft).
VMs PV - são VMs 'paravirtualizadas' e não possuem um kernel de inicialização completo. Eles estão vinculados ao sistema operacional da VM e compartilham parte do gerenciador de inicialização para inicializar a máquina. Você precisa substituir o kernel PV (kernel-xen) na VM pelo kernel pae (kernel-pae).
Não sei qual distribuição Linux você está usando e isso pode ter algum efeito na solução real, mas, supondo que as VMs sejam VMs PV, o link a seguir contém instruções sobre como instalar o kernel PV na caixa do Linux, então você deseja fazer o inverso destas instruções, adaptando para sua distribuição Linux. Então o processo de exportação deve funcionar:
http://itproctology.blogspot.ca/2009/06/pv-enabling-hvm-from-vmware-on.html
Esta resposta pressupõe que você está usando o kernel PV em seu Xenserver vms e assume que esse é o problema que está causando a falha na inicialização. Ele também pressupõe que você já tentou usar o System Center 2012 Virtual Machine Manager (VMM) para converter o vms (conforme as práticas recomendadas da Microsoft, etapas mostradas no link a seguir):
https://technet.microsoft.com/en-ca/library/gg610672.aspx
Notas Finais:
Universal Linux VM sob as melhores práticas do Hyper-V: https://technet.microsoft.com/en-ca/library/dn720239.aspx
VM Linux específica de distribuição sob as melhores práticas do Hyper-V: https://technet.microsoft.com/en-ca/library/dn531030.aspx
Por fim, aqui está a aparência dos meus parâmetros do kernel do Linux (Ubuntu/Debian) para minhas máquinas virtuais (em /etc/default/grub, certifique-se de executar sudo update-grub depois):
A opção video=hyperv_fb só funcionará quando as ferramentas de integração do hyper-v estiverem instaladas na VM (específica da distribuição).
Sei que essa resposta chega tarde, mas pensei em compartilhar como contornei isso. Eu também estava procurando uma resposta para migrar as VMs do CentOS7 do XenServer 6.5 para o Hyper-V 2016. Tentei de tudo, desde Starwind até exportar como dispositivo XVA e convertê-lo usando o XenConvert 2.3.1, sem sucesso.
A solução é realmente muito simples e funcionou na primeira vez: Baixe este ISO - https://sourceforge.net/projects/boot-repair-cd/
Etapas de alto nível que realizei:
A referência ao xvda está na sua configuração do xen.
Por exemplo: