Deploying vSphere Integrated Containers with the OVF Tool

Another method of deploying the vSphere Integrated Containers OVA file is VMWare’s OVF tool. This is a command line tool that can be used to create, modify or deploy OVF or OVA files. I have discussed this briefly before when I used it to change the SHA type when deploying vSphere Integrated Containers from the PowerCli.

The OVF Tool can be downloaded and installed from here. The installation is straight forward. VMWare also provide a very detailed user guide which quite useful.

To successfully deploy VIC using the OVF tool, we need to know what parameters will be required by the OVA file. I have already established what these are from deploying VIC via the PowerCli. They are as follows:

appliance.root_pwd
appliance.permit_root_login
IpAssignment.IpProtocol
network.fqdn
network.ip0
network.gateway
network.netmask0
network.DNS
network.searchpath
registry.deploy
registry.port
registry.notary_port
registry.admin_password
registry.db_password
registry.gc_enabled
registry.ssl_cert
registry.ssl_cert_key
management_portal.deploy
management_portal.port
management_portal.ssl_cert
management_portal.ssl_cert_key
fileserver.port
fileserver.ssl_cert
fileserver.ssl_cert_key
NetworkMapping.Network

In my case there are some that I will not be using such as the cert and key parameters as I will use the default self-signed certificates that are generated during the install. These can be omitted from the command.

I have prepared the command below that I will execute against my vCenter

"C:\Program Files\VMware\VMware OVF Tool\ovftool.exe" --name="vSphere Integrated Containers ovftool" --acceptAllEulas --datastore=vsanDatastore --diskMode=thin --memorySize:2048 --net:"Network=Management" --X:enableHiddenProperties --prop:appliance.root_pwd=VICPassword --prop:appliance.permit_root_login=True --prop:network.fqdn=vic.home.lab --prop:network.ip0=192.168.0.200 --prop:network.gateway=192.168.0.1 --prop:network.netmask0=255.255.255.0 --prop:network.DNS="8.8.8.8, 192.168.0.20" --prop:network.searchpath="home.lab" --prop:registry.deploy=True --prop:registry.port=443 --prop:registry.notary_port=4443 --prop:registry.admin_password=VICPassword --prop:registry.db_password=VICPassword --prop:registry.gc_enabled=True --prop:management_portal.deploy=True --prop:management_portal.port=8282 --prop:fileserver.port=9443 --powerOn "D:\Software\VMWare\vic-v1.1.1_56a309fb.ova" vi://eamonn@home.lab@"dartagnan.home.lab/home.lab/host/nooks/"

I will take the opportunity to explain some nuances to this.

Firstly, for detailed usage of the OVF Tool use –help as there are a lot of options to using the tool.
Some of the options have short hand options such as –datastore. It can be written as -ds. I don’t like this too much as it makes the final command quite hard to read. Some of the options are — and others are – which makes it quite inconsistent. I usually stick to –longhand version but each to their own.
The OVA specific parameters need to be prefixed with –prop: and proceeded with – -X:enableHiddenProperties in order to use them.
I also needed to specify the name of my vCenter server as vi://eamonn@home.lab@dartagnan.home.lab/home.lab/host/nooks/ which is my vCenter Server/Datacenter/”host”/cluster

Once I executed the command I got the following output:

OVF Tool Output1

Prior to this I got various syntax errors until I tidied it up and settled on the final command above. The errors are mostly self explanatory.  You can now access the console and you should see the following:

VIC from OVF Tool Console

You can also access both the Harbor registry and the Admiral container management portal.

VIC from OVF Tool HarborVIC from OVF Tool Admiral

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s