VMware

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > VMware > VMware-ovftool命令行部署与导出镜像

VMware-ovftool命令行部署与导出镜像方式

作者:endzhi

这篇文章主要介绍了VMware-ovftool命令行部署与导出镜像方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

ESXI6.0之后管理为WEB,OVF导出/部署是个渣渣,如果虚拟机文件过大,一般会报网络异常中断而失败,可使用官方ovftool工具解决,快而方便,支持linux和Mac OSX,可脚本操作,批量处理等。

在windows如已经安装vmware workstation,有个OVFTool目录直接可使用。

如Workstation版本较老,那还是建议安装新版本的独立工具包,README.txt中能看到版本号。

下载地址(需注册登录)https://my.vmware.com/group/vmware/downloads/details?downloadGroup=OVFTOOL440&productId=974

安装VMware-ovftool-4.4.0-15722219-win.x86_64.msi默认C:\Program Files\VMware\VMware OVF Tool当前目录下运行CMD窗口。

OVF导出

ovftool.exe  vi://root:@192.168.222.8/CentOS7.4  D:\OVF\CentOS7.4-out.ovf

部署OVF

ovftool.exe -ds=SSDmx500 -dm=thin -n=CentOS7.4new  "D:\OVF\CentOS7.4-out.ovf"  vi://root:@192.168.222.8

1. -ds为目标存储名,按你的实际填写

2. 使用ovftool.exe部署由vSphere Client出来的ovf成品也相同方式,没毛病!

vSphere Client部署该成品

直接部署会出现SHA256校验错误,删除.mf文件重来一次即可。

如部署为该成品的.ova单文件,先解压即可是ovf目录格式,删除.mf文件即可。

linux版本的安装及使用

chmod  +x  VMware-ovftool-4.4.1-16812187-lin.x86_64.bundle
 
sh  VMware-ovftool-4.4.1-16812187-lin.x86_64.bundle

在大空间存储下创建OVF导出位置

导出

ovftool vi://root@192.168.222.8/CentOS7.4   ./CentOS7.4.ovf  

可直接带密码操作

ovftool  vi://root:'PassWd#9'@192.168.222.8/CentOS7.4   ./CentOS7.4.ovf

带多功能参数的导出

ovftool --powerOffSource -o --X:logFile=./ovf.log   vi://root:'PassWd#9'@192.168.222.8/CentOS7.4  ./CentOS7.4`date +%Y%m%d`.ova 

带多功能参数的部署

ovftool --powerOn -ds=SSDmx500 -dm=thin --network='vlan-253' -n=CentOS7.4-new  "CentOS7.4.ovf"  vi://root:'PassWd#9'@192.168.222.8

使用proxy代理

ovftool  --proxy=http://192.168.253.99:8118  vi://root@192.168.222.8/CentOS7.4   ./CentOS7.4proxy.ovf

批量部署

(有多个ova文件,加个for循环用shell脚本自动部署)

#!/bin/bash
filename=` find  /opt/ovf/  -name *.ova`
# find all ova template
for  ova  in  $filename
do
/usr/bin/ovftool --X:logFile=./ovflog-`date +%Y%m%d`  -ds=SSDmx500 -dm=thin `echo $ova`  'vi://root:'PassWd#9'@192.168.222.8'
continue
done

与vcenter的格式

'vi://username:password@pod01-vcenter/POD01(TEST-POD)/host/POD01-CLU01/pod01-clu01-h001.cdscloud.local'

host后面接模板部署目标host位置,CLU01代表集群,pod1-clu01-h001.jx.local是集群下的一台宿主机;

需要注意的是,这里的dns要设置好,或者也可用ip地址代替,比如:

vi://username:password@192.168.1.1/?ip=192.168.100.1'

192.168.1.1是vcenter的地址,192.168.100.1是目标宿主机的ip地址;

这里跟vcenter的连接也可以用http的形式,具体详见官方文档。

注意:

以上全文验证账户与导出/入过程都使用443目标端口。

镜像格式转换ovftool CentOS7.4.ovf CentOS7.4.ova (可互转)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文