The OVA can be deployed using vSphere UI or ovftool in CLI console. This topic majorly focuses on deploying OVA using ovftool. For more information on using vSphere UI to deploy OVA, see vSphere Operation Guide.

Using ovftool deploy OVA is one-off job, just input all required message in one command line and kick start then wait VM power on.

Prerequisites

  • If using ovftool to deploy OVA then need to make sure ovftool installed in your operating system before deploy OVA. Please make sure install 4.4.0 or higher version of the tool. The tool's version lower than 4.4.0 may cause unexpected issues when deploying OVA. For download and install of ovftool, please take reference from the website: VMware developer website.

  • An FQDN to assign to the airgap server. This is mandatory field when deploy OVA and doesn't support to change FQDN after OVA deploy. User can modify user inuts config file and re-setting new FQDN to airgap appliance, but this is a non-supported scenario of using the appliance, user need to take their own risk if trying to modify FQDN after OVA deployment.

  • Static IP address must be in production environment. You can try using DHCP addresses in non-production environment, but if the deployed appliance going to be served for Kubernetes clusters' lifecycle then DHCP IP address is not supported, static IP is mandatory for such kind of environments.

Note:

Switching of IP is not supported therefore, ensure to assign an IP to the appliance properly when deploying the OVA.

Procedure

  • Deploy OVA via ovftool.

    Once task kicked off ovftool will handle everything and print progress

Example: Example of deploy OVA via ovftool

ovftool --acceptAllEulas --noSSLVerify --skipManifestCheck --X:injectOvfEnv  --diskMode=thin \        --datastore=<datastore-name> \        --network=<network-name> \        --vmFolder=<vm folder on vsphere> \        --powerOn \        --X:waitForIp \        --prop:guestinfo.ip_family='IPv4' \        --prop:guestinfo.admin_password='<admin_password>'  \        --prop:guestinfo.harbor_password='<harbor_password>' \        --prop:guestinfo.root_password='<root_password>' \        --prop:guestinfo.dhcp=True --prop:dbpassword='<password>' \        --prop:enableFileIntegrity=False \        --prop:enable_sshd=True \        --prop:guestinfo.cert_bu='TEST BU' \        --prop:guestinfo.cert_ca_common_name='example.com' \        --prop:guestinfo.cert_country_name='US' \        --prop:guestinfo.cert_county='PA' \        --prop:guestinfo.cert_organization='VMW' \        --prop:guestinfo.cert_state_name='CA' \        --prop:guestinfo.cert_type='Generate-New' \        --prop:guestinfo.enable_proxy=False \        --prop:guestinfo.hostname='test001.example.com' \        
<path-to-ova> \
vi://<vc_username>:'<vc_password>'@<vc_ip>/<datacenter_name>/host/<vSphere-cluster-name>/Resources/<resource-pool-name>