HDP在windows的hyper-v中运行

hdp官方提供针对virtualbox和vmware的标准的虚拟机导出文件ova格式,但是没有提供针对hyper-v使用的虚拟机文件,如何在hyper-v上使用hdp-sandbox呢?
首先要转换vmware的vmdk到vhdx,主要有三种软件可以实现,微软的,vmware的converter,virtualbox的vboxmanage

使用微软的工具
https://oitibs.com/convert-ova-to-vhdx-for-hyper-v/
https://www.microsoft.com/en-us/download/details.aspx?id=42497
Import-Module "C:\Program Files\Microsoft Virtual Machine Converter\MvmcCmdlet.psd1"
ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath C:\files\HDP_3.0.1_vmware_181205\HDP_3.0.1_vmware
_215-disk1.vmdk -DestinationLiteralPath C:\files\hdp3.vhdx -VhdType DynamicHardDisk -VhdFormat Vhdx

使用vmware的工具,需要有vmx,整个的虚拟机配置及存储等,不能直接使用硬盘文件
https://www.vmware.com/products/converter.html
http://www.vmwarearena.com/vmware-converter-how-to-perform-p2v-and-v2v-migration/
也支持物理机上自动装agent迁移到虚拟机

使用virtualbox的工具
https://superuser.com/questions/1133256/convert-ova-to-vhd-for-usage-in-hyper-v
VBoxManage.exe clonehd --format vhd "C:\temp\VM\disk1.vmdk" "C:\temp\VM\disk1.vhd"

第三方工具winimage,试用30天
https://www.vladan.fr/free-tools-to-convert-vhd-into-vmdk-and-vice-versa/

第三方工具v2v转换
https://www.starwindsoftware.com/starwind-v2v-converter
http://www.vmwarearena.com/top-3-free-tools-to-convert-vhd-to-vmdk/

然后设置10GB内存,4个CPU,网络根据自己需要设置成NAT或者Bridged(它自己会用DHCP得到ip地址),就能启动了(才怪

启动后卡住很久,最后一个正常的log显示[OK] Reached Target Basic System,然后就是dracut-initqueue timeout,就进入了一个dracut#命令行
多数博客记载的都是U盘安装系统的时候,进不去U盘系统,需要用其他合适的软件做U盘启动,所以很可能是找不到系统
使用mount发现没有sd开头的设备,dmesg发现它认出了Hyper-V环境并且忽略了ATA设备,然后,Hyper-V并不支持从SCSI启动,所以需要让系统支持ATA,重做initramfs就可以了
使用centos安装盘,Troubleshoot->Rescue,问要不要载硬盘系统的读写权限,选1Continue,回车之后,先chroot /mnt/sysimage进入硬盘上的系统,然后备份之前的initramfs,类似mv /boot/initramfs-xxx.img /boot/initramfs-xxx.img.bak,然后再dracut -v /boot/initramfs-xxx.img xxx就重新生成了这个initramfs,Ctrl+D退出,重启后强制关机,取出虚拟光盘,再启动就成功了

第一次启动hdp可能需要15-20分钟,而且它也只是解压个docker镜像出来运行

你可能感兴趣的:(HDP在windows的hyper-v中运行)