上周在盘点和整理服务器信息时,发现一台去年上线的临时服务器(POS查货系统)还运行在PC机上。看样子公司是不打算换新服务器了,为防止出意外打算迁移到VMware虚拟机上。现有vSphere环境可利用资源很少,遂打算把前年更换的A8服务器(已更换OA系统,但原数据要保留3年以上供查询。硬件资源使用率不到一半)重装成vSphere环境,再迁移POS系统到A8服务器上。实施步骤:
服务器
1、P2V迁移A8系统到vCenter6.5(ESXI主机为5.5,IBMx3650M2兼容性问题不建议升级),迁移过程比较顺利,因为需修改配置而使用文件级数据迁移,在文件较多的状况下,速度较慢;网络
2、中止原A8系统,把加密狗插到ESXI主机上,编辑虚拟机设置,新增Host USB Device设备,并选择识别到的加密狗。启动迁移后的虚拟机,安装vmware tools。ide
3、重启后A8服务没法启动,检查后发现加密狗绑定了网卡的MAC地址,在迁移时没有修改MAC地址,致使MAC地址变动后加载加密狗时报错。测试
修改虚拟机MAC地址为原物理机MAC地址,解决办法:加密
一、关闭vm虚拟机,并从清单中移除虚拟机;blog
二、开启ESXI主机的SSH服务,使用Putty登陆到ESXI主机,并进入到虚拟机目录,以下:资源
# cd /vmfs/volumes/DatastoreName/VMFolderNameget
三、备份原vmname.vmx文件,并修改.vmx文件虚拟机
# cp vmname.vmx vmname.vmx.oldit
# vi vmname.vmx 修改或添加如下内容:
ethernetN.checkMACAddress = "false"
ethernetN.addressType = "static"
ethernetN.Address = "XX:XX:XX:XX:XX:XX"
其中 XX:XX:XX:XX:XX:XX 是虚拟机的新 MAC 地址。将 ethernetN 中的 N 改成网络适配器值。例如:
网络适配器 1 -> ethernet0
网络适配器 2 -> ethernet1
注意:
修改MAC地址时,也能够在编辑虚拟机设置里,修改网络链接,并指定MAC地址为手动,输入新的MAC地址保存便可。以下图:
但修改完成后,启动虚拟机时会报错:Invalid Ethernet address
此时须要检查ethernetN.checkMACAddress = "false"是否设置,虚拟网卡类型(Adapter Type)是否为"vmxnet3"。若是为E1000类型,能够删除后从新添加网卡并选择网卡类型为"VMXNET 3"。不然即便修改了.vmx文件,同样会报以上错误。
一开始没有注意到网卡类型的问题,测试修改几回都没法开机。
四、在存储中找到虚拟机vmx文件,并注册虚拟机
五、启动虚拟机便可。
参考:迁移到 VMware vCenter Server 5.x 后打开虚拟机电源失败并显示错误:指定的 MAC 地址无效 (2102096)
4、重装原A8服务器为ESXI6.0(Dell R710兼容性最高支持6.0),并加入vCenter6.5。在线迁移A8系统回到原服务器上。
5、P2V迁移POS系统到原A8服务器上,淘汰PC机。