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

  1. 如导出.ovf目标为目录不带文件名,那出来是一个vm原名的文件夹。
  2. 也可以导出为.ova单文件,ovftool也有格式互转功能。
  3. 如vm带了光驱文件,那iso也会下来,先剔除吧。
  4. 导出过程不可带密码运行,这不如linux版的便利。

部署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部署该成品

  1. 直接部署会出现SHA256校验错误,删除.mf文件重来一次即可。
  2. 如部署为该成品的.ova单文件,先解压即可是ovf目录格式,删除.mf文件即可。

linux版本的安装及使用

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

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

mkdir /opt/OVF

cd  /opt/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 

--powerOffSource   先切断电源关机

-o                 同名覆盖(导出导入)

--X:logFile        输入详细日志

带多功能参数的部署

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

--powerOn      部署完毕自动开机

-dm=thin       还可以选择Thick(厚置备延迟置零---省略值)   eagerZeroedThick(厚置备置零)

--network      部署选择网卡标签

使用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'

pod01-vcenter    是vcenter的名称;

POD01(TEST-POD)   是数据中心的名称;

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的形式,具体详见官方文档。

注意:

  1. 以上全文验证账户与导出/入过程都使用443目标端口。
  2. 镜像格式转换ovftool  CentOS7.4.ovf  CentOS7.4.ova  (可互转)

参考文献

VMWare OVF Tools · Devops Roadmap

ovftool自动部署/导出ova/ovf模板-xujpxm-51CTO博客

新版本下载地址

https://customerconnect.vmware.com/cn/downloads/#all_products

https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=OVFTOOL443&productId=974

VMware-ovftool命令行部署与导出镜像相关推荐

  1. mysql命令导入导出数据_mysql命令行导入和导出数据

    MySQL中导出CSV格式数据的SQL语句样本如下: select * from test_info into outfile '/tmp/test.csv' fields terminated by ...

  2. mysql命令行导入和导出数据

    首先打开命令窗口,输入命令:mysql -h localhost -u selffabu -p 连接成功后,进行下面的操作 MySQL中导出CSV格式数据的SQL语句样本如下: Sql代码 selec ...

  3. linux读取excel并导入mysql_mysql命令行的导入导出sql,txt,excel(都在linux或windows命令行操作)(转自筑梦悠然)...

    Mysql导入导出sql,txt,excel 首先我们通过命令行进入到mysql安装目录的bin目录下,比如我输入的命令行为: d: cd  D:/wamp/bin/mysql/mysql5.6.17 ...

  4. centos卸载harbor_在Linux主机使用命令行批量删除harbor镜像

    在Linux主机使用命令行批量删除harbor镜像 脚本使用说明: 此脚本不是万能脚本,根据自身环境要调整很多 能用harbor的域名就不要用IP 脚本前半部分可以套用,后半部分需一步一步试错,结合自 ...

  5. 通过kubeless命令行部署Kyma Lambda Function

    除了在Kyma的浏览器控制台里部署Lambda Function外,也可以使用Kubeless命令行: kubeless function deploy hello --label app=hello ...

  6. 命令行部署程序保存pid到文件

    要记得把进程的pid保存到.pid文件 这可以理解成为一个规范,你可以不去遵守,但是如果遵守的话,可以给你很多便利. 命令行获取pid的方法 方法一: 通过命令行启动进程,然后通过ps ,grep, ...

  7. 达梦数据库代码导出_达梦数据库常见问题-命令行工具-导入导出工具

    1.导入dmp文件出现各种初始化参数不一致的警告 (页大小不匹配,restore error code:-8210:CASE_SENSIVE参数不匹配.大小写参数不一致,大小写区分属性不匹配,rest ...

  8. navicat连接LinuxMySQL10038错误、mysql通过命令行进行导入导出sql文件

    一.导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径) 1.导出数据和表结构: mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql 1 #/us ...

  9. mysql处理含中文的SQL文件_mysql命令行还原phpMyAdmin导出的含有中文的SQL文件

    最近得到了一个数十M的MySQL脚本文件,准备还原为数据库. 以前就使用MySQL-Front短暂使用过MySQL,先用它试试,结果挂掉. 这样吧,先用MySQL-Front创建了空数据库,然后使用m ...

最新文章

  1. HDFS文件读写流程
  2. 关于微服务的7个疑问和解答!
  3. 全国计算机三级哪个容易一点,给考三级网络的朋友们一点儿真诚的建议
  4. 使用mybatis中的自定义TypeHandler处理PostgreSQL中的Json类型
  5. IBatis.Net学习笔记七--日志处理
  6. 阿米洛键盘取消win_阿米洛花旦娘静电容V2键盘测评:不止是一把好看的键盘
  7. React.js 入门与实战课程思维导图
  8. AOJ 1312 Where's Wally 题解《挑战程序设计竞赛》
  9. 程序员面试金典——4.7最近公共祖先
  10. WPF应用基础篇---TreeView
  11. 常用软件分类 精选列表(二)
  12. 超级弱口令检查工具使用简介
  13. 01-Epicor开发总结
  14. java制作闪星星_three.js制作星球和星星闪烁的简单示例
  15. IoT当前最重要的机遇,全面解读专为边缘计算而生的EdgeX Foundry
  16. laravel 微博登录
  17. pandas 读取excel文件
  18. 抠图:基于单个原色通道
  19. 国内知名的信息与通讯调查研究咨询公司情况
  20. HDU 6134 Battlestation Operational (mobius +前缀和)

热门文章

  1. 在windows的命令行窗口打开.ipynb文件
  2. 世界上最全的解酒方法
  3. 【你好,windows】Windows10 x64 18363.628 X64专业工作站纯净版2020.2.13
  4. 【ZZULIOJ】1026: 字符类型判断
  5. node获取客户端ip
  6. Python:PyQt 时间组件
  7. 拍立淘-以图搜图中的图像搜索算法
  8. 经常被问退休金多少,怎么答
  9. 软件架构设计---软件架构评估
  10. 内存读数据和磁盘读数据的区别