This post is an extension of my ESXi setup, usually what I do after the host is up.
We will use a file to automate 100% of the configuration.
Our goal is to make this process easy, boring, and repeatable.
- ESXi 6.7 U2 Host
- Ubuntu or similar PC
Get the vCenter ISO
Covered in an earlier post. Get the ISO any way you’d like.
This demo uses: VMware-VCSA-all-6.7.0-13010631.iso
Put the ISO in your
~/Downloads folder if you plan on following my exact commands
Create the config file
First, mount the VCSA ISO locally and create a custom JSON config.
Mount the ISO
mkdir /vcsa sudo mount -o loop ~/Downloads/VMware-VCSA-all-6.7.0-13010631.iso /vcsa
We will be using vCenter (VCSA) with an embedded PSC controller. If you’re wondering what PCS is, you can learn more about it here.
The ISO will contain a few templates for us to copy and modify. You can find VCSA and PCS’ other options here.
Copy and edit the JSON config
cp /vcsa/vcsa-cli-installer/templates/install/embedded_vCSA_on_ESXi.json /tmp/config.json # ! OPTIONAL ! # If you want to start with my exact config: curl -L https://gist.github.com/jimangel/8d5869a4be139e631a310e2bfe4d8b81/raw > /tmp/config.json
Validate the template without installing
/vcsa/vcsa-cli-installer/lin64/vcsa-deploy install \ --accept-eula \ --verify-template-only \ /tmp/config.json
If you plan on using FQDN for the vCenter hostname, make sure the address resolves without fail. (ex:
nslookup -nosearch -nodefname _FQDN_or_IP_address_)
Install VCSA to your ESXi host
Run the installation
/vcsa/vcsa-cli-installer/lin64/vcsa-deploy install \ --accept-eula \ --acknowledge-ceip \ --terse \ --no-ssl-certificate-verification \ /tmp/config.json
If you run into any issues, you can replace
Validate vCenter install
Navigate to the vCenter FQDN_or_IP_address in your browser and log in. Don’t forget to use the proper
# The root user for VCSA is `administrator` User: firstname.lastname@example.org Password: R00tp@ssw0rd!
You’re now ready to deploy some VMs! The biggest reason I set up VCSA is to leverage https://github.com/vmware/govmomi, a goLang API interface to vSphere.
I plan on revisiting this post and adding in LetsEncrypt SSL certificates and VMware licenses in the