# VMware configuration
Sensitive values are stored and encrypted in the vault file inventory/group_vars/all/vault.yml
and then referenced from the variables file.
Variable | File | Description |
---|---|---|
vault_vcenter_username | inventory/group_vars/all/vault.yml | A vCenter Server user account. It might include a domain, for example, 'Administrator @vsphere.local' . The user account should have the Administrator role or equivalent privileges. |
vault_vcenter_password | inventory/group_vars/all/vault.yml | The password for the vault_vcenter_username user. |
All remaining variables related to VMware configuration are described in the table below.
Variable | File | Description |
---|---|---|
vcenter.address | inventory/group_vars/all/all.yml | IP or hostname of the vCenter appliance. For example, vcentergen10.am2.cloudra.local |
vcenter.username | inventory/group_vars/all/all.yml | Uses the value of the vault_vcenter_username variable from the vault |
vcenter.password | inventory/group_vars/all/all.yml | Uses the value of the vault_vcenter_password variable from the vault |
vcenter.datacenter | inventory/group_vars/all/all.yml | Name of the datacenter where the environment will be provisioned. For example, Datacenter |
vcenter.datastore | inventory/group_vars/all/all.yml | The datastore for storing VMs. For example, ds1 |
vcenter.cluster | inventory/group_vars/all/all.yml | Name of your SimpliVity Cluster as defined in vCenter. |
vcenter.network | inventory/group_vars/all/all.yml | The name of the vSphere network where you want to create your admin workstation. |
vcenter.resourcepool | inventory/group_vars/all/all.yml | If you are using a non-default resource pool, provide the name of your vSphere resource pool. For example, Anthos_1.4 |
vcenter.cacert | inventory/group_vars/all/all.yml | When a client, like GKE on-prem, sends a request to your vCenter server, the server must prove its identity to the client by presenting a certificate or a certificate bundle. To verify the certificate or bundle, GKE on-prem must have the root certificate in the chain of trust. This field contains the name of the file, for example vcenter.pem and the file must be present in directory defined by secrets_path . |
# Generating the vcenter.pem
file
Enter the following command to download the certificate and save it to a file named vcenter.pem.
true | openssl s_client -connect [VCENTER_IP]:443 -showcerts 2>/dev/null | sed -ne '/-BEGIN/,/-END/p' > vcenter.pem
where [VCENTER_IP] is the IP address of your vCenter Server.
# Determine vcenter.address
Before you fill in the vcenter.address
field, inspect the serving certificate of your vCenter server.
Open the vcenter.pem
certificate file to see the Subject Common Name and the Subject Alternative Name:
openssl x509 -in vcenter.pem -text -noout
The output shows the Subject Common Name (CN). This might be an IP address, or it might be a hostname. For example:
Subject: ... CN = 203.0.113.100
Subject: ... CN = my-host.my-domain.example
The output might also include one or more DNS names under Subject Alternative Name:
X509v3 Subject Alternative Name:
DNS:vcenter.my-domain.example
Choose the Subject Common Name or one of the DNS names under Subject Alternative Name to use as the value of vcenter.address
in your configuration file. For example:
vcenter:
address: "203.0.113.1"
...
or alternatively:
vcenter:
address: "my-host.my-domain.example"
...
# Sample vcenter
structure
vcenter:
address: '10.1.223.196'
username: "{{ vault_vcenter_username }}"
password: "{{ vault_vcenter_password }}"
datacenter: 'Datacenter'
datastore: 'ds1'
cluster: "New_Cluster"
network: 'VM Network 2'
resourcepool: 'Anthos_1.4'
cacert: 'vcenter.pem' # Must be in directory defined by 'secrets_directory'