VMware Cloud Foundation – Manually Generating the JSON Using Deployment Parameter Workbook

On August 24th VMware released VMware Cloud Foundation 4.3, and along with this release a small change was introduced concerning the JSON file used by VMware Cloud Builder to perform the management domain bring-up.

This change involves the JSON file generated from the Deployment Parameter Workbook being immediately deleted from the file system (usually stored under /opt/vmware/sddc-support/cloud_admin_tools/Resources/vcf-ems/) as its already automatically stored in the database where it’s used by the bring-up service.

The knock-on affect here is that it’s no longer then possible to retrieve the generated JSON from the VMware Cloud Builder appliance after uploading the Deployment Parameter Workbook using the UI so that you can either modify it in case of issues found during the validation process or use it for additional use-cases such as:

  • Adding more than four ESXi hosts
  • Adding multi-pNIC configuration

All is not lost, as its still possible to generate the JSON file manually using the following simple process.

Manually Generate JSON File

Step 1 – Connect to the VMware Cloud Builder appliance as admin using WinSCP and transfer your completed Deployment Parameter Workbook to /tmp

Step 2 – Connect to the VMware Cloud Builder appliance using and SSH client such as Putty using the admin user.

Step 3 – Enter su to switch to the root user and enter the password.

Step 4 – Execute the following command replacing <path-to-xls> with the path to your uploaded Deployment Parameter file.

/opt/vmware/sddc-support/sos –jsongenerator –jsongenerator-input <path-to-xls>  –jsongenerator-design vcf-ems

NOTE: For VCF on VxRail use -jsongenerator-design vcf-vxrail

Step 5 – Move the generated JSON file to the /tmp folder using the following command:

mv /opt/vmware/sddc-support/cloud_admin_tools/Resources/vcf-ems/vcf-ems.json /tmp

Step 6 – Change the access to the file so that you can transfer the file out as the admin user.

chmod 644 /tmp/vcf-ems.json

Step 7 – Now you have a copy of the JSON file, you can modify as required and then upload via the VMware Cloud Builder UI instead of the Deployment Parameter Workbook file.

2 thoughts on “VMware Cloud Foundation – Manually Generating the JSON Using Deployment Parameter Workbook

  1. Just FYI, you shouldn’t use chmod 777 (I’m sure you’ve heard/read this a ton) it’s just lazy, imo 🙂

    chmod 644 gives r/w to the file owner (root), and read to others. You can also do chown admin (or whatever your vcf user is) and chgrp vcf and it will match the xls you uploaded through WinSCP.

    You can even throw in that –jsongenerator-design vcf-vxrail can be used for VCF on VxRail.


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 )

Connecting to %s