VMware利用ovftool自动部署/导出模板

时间:2016-04-26 07:11:27   收藏:0   阅读:4747

一、简介  

OVF(Open Virtualization Format)是多家虚拟化厂商和硬件厂商共同定义的一个虚拟设备的规范,ovf格式的虚拟设备(其实就是一些文件)可以被多家虚拟化软件设备并import到虚拟化环境,比如VMware、XenServer、VirtualBox等等。OVF一般有几个部分组成,分别是ovf文件、mf文件、cert文件、vmdk文件和iso文件。OVF(Open Virtualization Format:开放虚拟化格式 )和OVA(Open Virtualization Appliance:开放虚拟化设备),两者包含所有用于部署虚拟机的必要信息。现在很多软件厂商经常将一个应用直接打包成ovf或ova格式的虚拟设备提供给用户导入到虚拟化环境,比如VMware、Riverbed等等很多公司都有产品通过这种方式发布,这方便了用户部署。

   VMware提供ovf、ova模板的部署和导出功能,在手动部署的时候有时会出现无法部署或者部署过程中出错的情况,尤其在大文件部署的时候突然中断很是让人头疼,这里介绍一个工具:ovftool。

 官网提供多个版本的下载,建议在linux和mac上使用,具体下载链接见后面。

二、安装

已linux 版本为例:

  下载下来之后,直接sh 运行即可:

root@ubuntu:~# sh VMware-ovftool-4.1.0-2459827-lin.x86_64.bundle

三、使用

  ovftool安装完即可用,其userguide文档里提供了很多可选参数,这里附一个我常用(部署ovf/ova)的例子,基本能够试用于大多数:

root@ubuntu:~# ovftool --X:logLevel=verbose 
--X:logFile=/root/ovflog
--noSSLVerify 
--acceptAllEulas 
-dm=thin  
-vf=Templates 
-ds=POD1-Template 
/data/MyTemplate-CentOS6.3-64bit.ova #要部署的ova模板文件
‘vi://username:password*@MyVC/POD1(MyDC)/host/CLU01/pod1-clu01-h001.jx.local‘

参数详解:

--X:logLevel:定义log的级别;

--X:logFile:定义log文件位置;

--noSSLVerify:跳过 vSphere连接的SSL认证;

--acceptAllEulas:接受所有用户的licenses;

-dm(--diskMode): 磁盘类型,一般选用thin置备,如果不加此参数,默认硬盘厚置备类型;

-vf(--vmFolder):模板部署的目标目录,我这里假设要部署到Templates目录下面;

-ds(--datastore):模板部署的目标存储位置

vi:// : 全称”VMware Infrastructure“,用来和数据中心通信的命令行选项,最早是ESX 3版本的一个术语。格式:”username:password@vcenter名称/数据中心名称/host/指定host“


其中:

MyVC是vcenter的名称;

POD1(MyDC)是数据中心的名称;

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

四、自动部署

  如果有多个ova文件,自动部署的时候简单点的加个for循环用shell脚本即可,例如:

#!/bin/bash
filename=`find /data/template/ -name *.ova`
# find all ova template
for ova in $filename
do
/usr/bin/ovftool --X:logLevel=verbose --X:logFile=/root/ovflog-`date +%Y%m%d`  --noSSLVerify --acceptAllEulas -dm=thin -vf=Templates -ds=POD1-Template `echo $ova` ‘vi://username:password*@MyVC/POD1(MyDC)/host/CLU01/pod1-clu01-h001.jx.local‘
continue
done

以下是目前的官方文档链接:

https://www.vmware.com/support/developer/ovf/ovf410/ovftool-410_userguide.pdf

另外ovftool可在VMware官网下载,下载之前需要先注册账号,下载链接如下:

https://my.vmware.com/cn/web/vmware/details?downloadGroup=OVFTOOL410&productId=491




本文出自 “Jason'blog” 博客,请务必保留此出处http://xujunxian.blog.51cto.com/8614409/1767701

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!