Short answer: In VCF 9.1 the VCF Download Tool (vcf-download-tool, VCFDT) is the only supported way to fetch binaries for environments without Internet access. The workflow is: generate a software depot ID, register it in the VCF Business Services console to get an activation code, save the code to a file, then run binaries list and binaries download with --sku, --vcf-version and --type filters into a --depot-store directory.
This is a command-first cheatsheet. Every command and option below is taken from the VCF 9.1 Download Tool command reference. If you are building the web server side, see the related post VCF 9.1 HTTP offline depot support.
Get the VCF Download Tool 9.1 and register it
Download the tool from the Broadcom Support Portal (My Downloads, VMware Cloud Foundation, Drivers & Tools). The archive contains a bin/ folder with vcf-download-tool (vcf-download-tool.bat on Windows) and lcm-bundle-transfer-util.
tar -xvzf vcf-download-tool-9.1.0.0.<build_number>.tar.gz
cd vcf-download-tool-9.1.0.0.<build_number>/bin
# 1. Generate a unique software depot ID for this VCFDT instance
./vcf-download-tool configuration generate --software-depot-id
# 2. In the VCF Business Services console: Software Depot Registrations >
# New Registration, paste the ID, then save the activation code to a file
echo "<activation-code>" > /path/to/activation-code.txt
VCF Download Tool command groups
| Group | Purpose |
|---|---|
binaries | List, download, upload, clean up, export VCF install/upgrade/patch binaries; create download specs |
esx | ESX binaries and metadata for vSphere Lifecycle Manager images |
metadata | Unified release manifest, product version catalog, vSAN HCL, compatibility data |
releases | Show available VCF releases and product details |
depot | Upload, list and remove content in a connected software depot |
artifacts | Workload component artifacts (VCFDT 9.1.1 and later) |
Each group has its own help: vcf-download-tool binaries -h, esx -h, and so on. -v prints the tool version and --ceip ENABLE|DISABLE sets CEIP participation.
vcf-download-tool binaries list and download commands
list and download require at least one filter. Always list first so you see component, version, size and type before pulling tens of gigabytes.
AC=/path/to/activation-code.txt
STORE=/path/to/binaries
# Install binaries used by the VCF Installer
./vcf-download-tool binaries list --sku VCF --vcf-version 9.1 \
--depot-download-activation-code-file $AC --type INSTALL --automated-install
./vcf-download-tool binaries download --sku VCF --vcf-version 9.1 \
--depot-download-activation-code-file $AC --type INSTALL --automated-install \
--depot-store $STORE
# Upgrade binaries managed by SDDC Manager
./vcf-download-tool binaries download --sku VCF --vcf-version 9.1 \
--depot-download-activation-code-file $AC --type UPGRADE \
--lifecycle-managed-by SDDC_MANAGER_VCF --depot-store $STORE
# A single component (example: VCF Automation)
./vcf-download-tool binaries download --sku VCF --vcf-version 9.1 \
--depot-download-activation-code-file $AC --component VRA --type INSTALL \
--depot-store $STORE
For VMware vSphere Foundation replace --sku VCF with --sku VVF.
Filter options
| Option | What it does |
|---|---|
--sku VCF|VVF | Product SKU |
--vcf-version | a.b, a.b.c, a.b.c.d or a range start..end |
-t, --type INSTALL|UPGRADE | Install or upgrade binaries |
--automated-install | Only binaries required by the VCF Installer |
--component | One component, e.g. ESX_HOST, NSX_T_MANAGER, SDDC_MANAGER_VCF |
--component-version | A specific component version |
--lifecycle-managed-by | SDDC_MANAGER_VCF, VRSLCM, VCF_FLEET_LCM or SELF |
--patches-only / --upgrades-only | Only patch or only upgrade versions |
--id | One or more bundle IDs |
--download-spec-file | Only what a planned upgrade needs |
--latest | Only the latest versions (9.1.1 and later) |
ESX binaries, metadata and artifacts
# ESX binaries and metadata (progress in ./logs/esximage.log)
./vcf-download-tool esx download --depot-download-activation-code-file $AC \
--depot-store $STORE
# ESX metadata only (8.x and 9.x upgrades and patches)
./vcf-download-tool esx metadata --depot-store=$STORE \
--depot-download-activation-code-file=$AC
# Workload component artifacts (VCFDT 9.1.1+)
./vcf-download-tool artifacts download --sku VCF --vcf-version 9.1 \
--depot-download-activation-code-file $AC --depot-store $STORE
Upload, download spec, export and cleanup
# Build a spec from planned upgrades of a workload domain
./vcf-download-tool binaries create-download-spec --domain-name <domain> \
--download-spec-dir /path/to/spec ...
# Push downloaded content to SDDC Manager
./vcf-download-tool binaries upload --depot-store $STORE \
-f sddc-manager.example.local -u administrator@vsphere.local \
--sddc-manager-user-password-file /path/to/pw.txt
# Pack the depot store into a tar file for a transfer
./vcf-download-tool binaries export --depot-store $STORE --depot-file /path/to/depot.tar
# Remove obsolete binaries, keep what you still need
./vcf-download-tool binaries cleanup --depot-store $STORE ...
The ... means add the same filters you would use for list; check binaries -h for the exact combination your build accepts.
Proxy and practical tips
- Proxy:
-s, --proxy-server fqdn:port,--proxy-https(add the proxy CA to the JRE trust store),-r, --proxy-user,--proxy-user-password-file. Kerberos and NTLMv2 proxies are not supported. - Passwords and codes always go in files, never on the command line, so they do not end up in shell history.
- Downloads run for a long time. Enable TCP keepalive in your SSH client or run inside
tmux/screen. - If VCFDT and the web server are different machines, copy the depot store to the offline depot and then connect the software depot to it. A small lab walkthrough is in Deploying a minimal VCF 9.0 lab.
Further reading
- William Lam: VCF 9.1 – VCF Download Tool (VCFDT) Cheatsheet (original post)
- Broadcom TechDocs: VCF Download Tool General Options and Binaries Commands and Options
- Broadcom TechDocs: Download Binaries to an Offline Depot by Using the VCF Download Tool