Deploying VMware Appliance for Folding@Home With OVFtool

Recently VMware released a Fling of the VMware Appliance for Folding@Home.

It's great to see the VMware community coming together so quickly to help out.

As part of my love/hate relationship with OVFtool, here's a few ways you can deploy the VMware Appliance for Folding@Home using OVFtool.

Command line options

This is using OVFtool version released 2 DEC 2019.

1c:\>ovftool --version
2VMware ovftool 4.3.0 (build-14746126)

Single line, using DHCP:

1ovftool --numberOfCpus:*=4 --noSSLVerify --diskMode=thin --powerOn --datastore=vsanDatastore --network=dvs-vlan-02 --name=FaH1001 --prop:guestinfo.hostname=fah.vmware.corp --prop:guestinfo.ntp=pool.ntp.org --prop:guestinfo.root_password=VMware1! --prop:guestinfo.fah_username=daunce --prop:guestinfo.fah_team=52737 --prop:guestinfo.fah_passkey=yourpasskey  "Z:\Software\VMware\VMware-Appliance-FaH_1.0.0.ova" vi://administrator@vsphere.local:VMware1!@vc.vmw.one/Datacenter/host/Physical

Make sure you change datastore, network, name etc to suit your environment.

Once this is deployed, it'll power on, and start trying to download work units. Nothing else to configure!

Options Explained

All the properties are the same as from the Fling, plus there's a few extras you can use. To break down some of the options:

--numberOfCpus:*=4 The appliance defaults to 2 vCPU's. with 1 core per socket, but you can change it depending on the number of vCPU's you want to use. Use --coresPerSocket:*=2 to increase the number of cores per socket depending on your NUMA topology.

vi://administrator@vsphere.local:VMware1! Connecting to vCenter, with username administrator@vsphere.local, password VMware1!. (Be careful when you need to url encode some special chars, eg: # needs to be %23. For tips, try https://www.urlencoder.org/)

@vc.vmw.one/Datacenter/host/Physical vCenter address is vc.vmw.one, Datacenter is the actual name of your Datacenter within vCenter. host is something you don't change. Physical is the name of my Cluster.

My vCenter topology

Static IP and other options

If you want to set a static address, include the following:

1--prop:guestinfo.ipaddress=192.168.1.10
2--prop:guestinfo.gateway=192.168.1.1
3--prop:guestinfo.dns=192.168.1.1
4--prop:guestinfo.domain=lab.local

You can also reference an OVA on a webserver, using http://path.to/file.ova instead of the file path listed above.

The best way is to explore. Download the OVA, extract the files using your favourite zip program, and view the contents of the .ovf file.

You'll see things like <Property ovf:key="guestinfo.dns" ovf:type="string" ovf:userConfigurable="true" ovf:value="">, which you can use as --prop:guestinfo.dns on the OVFtool command line.

Configuration File

I like to use configuration files. Create a file: fah01.ovftool.cfg with the following contents:

 1noSSLVerify
 2diskMode=thin 
 3powerOn 
 4datastore=vsanDatastore
 5network=dvs-vlan-02
 6numberOfCpus:*=6
 7# vmFolder=
 8name=fah01
 9prop:guestinfo.hostname=fah01.vmw.one
10# Leave the following section blank for DHCP
11prop:guestinfo.ipaddress
12prop:guestinfo.netmask=24 (255.255.255.0)
13prop:guestinfo.gateway
14prop:guestinfo.dns
15prop:guestinfo.domain
16prop:guestinfo.ntp=pool.ntp.org
17prop:guestinfo.http_proxy
18prop:guestinfo.https_proxy
19prop:guestinfo.proxy_username
20prop:guestinfo.proxy_password
21prop:guestinfo.no_proxy
22prop:guestinfo.root_password=VMware1!
23prop:guestinfo.fah_username=daunce
24prop:guestinfo.fah_team=52737
25prop:guestinfo.fah_passkey=b2acacff659df1fdb2acacff659df1fd
26prop:guestinfo.fah_mode=medium
27prop:guestinfo.fah_gpu
28prop:guestinfo.fah_web_remote_networks=0.0.0.0/0
29prop:guestinfo.fah_remote_networks=127.0.0.1 0.0.0.0/0
30prop:guestinfo.fah_remote_pass=VMware1!

Then call the ConfigFile using: ovftool --configFile=fah01.ovftool.cfg "Z:\Software\VMware\VMware-Appliance-FaH_1.0.0.ova" vi://administrator@vsphere.local@vc.vmw.one/Datacenter/host/Physical