前言
VMware虚拟机的导出可以通过web页面和命令行导出两种方法,分别是通过web页面导出和通过命令行导出;
1.通过web面导出{通过ESXI或vSphere client自带的导出选项导出)
-
导出
-
- 在ESXI虚拟机管理页面,点击导出选项,导出会产生两个文件,*.ovf及*.vmdk
-
导入
-
- 将需要导入虚拟机的文件传输导目标宿主机在,在ESXI或vs phere 管理界面,点击导入选项,选中相应的文件上传进行导入即可
注:通过web页面导出只能导出占用硬盘较小的虚拟机,一般导出数据超过16G在web页面就会因为超时而断开
2通过命令行导出
- 通过命令行导出适用于迁移存储大量数据的虚拟机,目前经过实践得出的有个两个办法,分别是通过通过ssh连接全量进行拷贝以及通过OVFtool进行导出导入;
方法一–全量导出
-
-
- a.在ESXI管理平台打开ESXI主机的打开ssh的登录功能,(主机—>服务—>启用安全shell),然后通过ssh连接进入到ESXI宿主机。
- a.在ESXI管理平台打开ESXI主机的打开ssh的登录功能,(主机—>服务—>启用安全shell),然后通过ssh连接进入到ESXI宿主机。
-
-
-
- b.通过
vim-cmd vmsvc/getallvms
命令可查看ESXI宿主机上目前运行的虚拟机名称以及存储目录,然后df -h
命令查看具体目录名称,进入到对应虚拟机目录下,通过sftp等工具将该目录的所有文件全部拷贝出来,传输到要想导入的ESXI主机目录下(建立在datastore目录下,目录名自定义)
- b.通过
-
-
- 导入
-
-
- 在web页面通过点击,新建虚拟机—>注册现有虚拟机—>选择传入的vmx文件,然后选择新建即可导入。
- 在web页面通过点击,新建虚拟机—>注册现有虚拟机—>选择传入的vmx文件,然后选择新建即可导入。
-
方法二—通过OVFtool导出
OVFtool导出相对方法一导出的数据总量会更小,但是压缩数据也会花费不少的时间,也是官方推荐使用的导出方法之一
通常情况下,通过ovf导出虚拟机时,会将虚拟机的配置文件、磁盘文件和其他相关文件打包成一个压缩文件。这个压缩文件的格式通常是tar和gzip格式,也可以是其他格式,具体取决于您选择的导出工具和选项。
压缩虚拟机数据可以减小导出文件的大小,提高传输效率,但同时也会增加导出和导入的时间,因为需要进行压缩和解压缩操作。如果您的网络带宽较大,可以选择不压缩数据以减少导出和导入时间。
-
具体步骤
-
- a.在ESXI命令行查看esxi的版本
[root@xxj] vmware -v
VMware ESXi xxx
- b.官网查询与esxi对应的ovftool
官网
下载linux bundle版本
在Linux安装这个工具
./VMware-ovftool-4.4.2-17901668-lin.x86_64.bundle -i VMware-ovftool-4.4.2-17901668-lin.x86_64.bundle
安装完成之后ovf`tool命令就可以使用了
[root@nginx50 tmp]# ovftool --help
Usage: ovftool [options] <source> [<target>]
最后使用命令
导出
ovftool vi://root@vm_ip/vm_name vm_name.ovf
导入
ovftool -ds=cl-storage-1 -n ="Cloudvm_2074586_with_inject" /tmp/test.ovf vi://root@vm_ip
-ds=cl-storage-1:指定虚拟机磁盘所在的数据存储。
--net:'Network 1=VM Network':指定虚拟机网络的配置。
--name/-n ="Cloudvm_2074586_with_inject":指定虚拟机的名称
注意
在导出虚拟机前需要先关机,关机时在设置里移除网卡和iso,否则导入时会有报错发生
更多详细OVFtool参数参考:
Run VMware OVF Tool From the Command Line