Using Terraform against AUCloud's implementation of VMware Cloud Director (vCD)
Overview¤
In order to configure your AUCloud IaaS tenancies using Terraform, you must first pass the necessary authentication information to the VMware Cloud Director (vCD) Terraform provider. The account used should have the "Organization Administrator" role in VCD as this will have the required permissions to perform all resource add/change/destroy via Terraform.
There are currently 2 supported authenticated methods:
- Connecting with username & password, or
- Connecting with an API token
Connecting with username & password¤
- Follow the steps outlined here to create a "local" VCD user if you have not already done so.
- Retrieve the unique name of your VCD tenancy
- Retrieve the API server URL for your VCD tenancy from the list of AUCloud VMware Cloud Director API Endpoints
-
Connect to VCD with Terraform
The VMware Cloud Director Terraform Provider requires the following inputs in order to connect as a VCD Organization Administrator:
auth_type
: must be"integrated"
user
: username of your "local" VCD userpassword
: password of your "local" VCD userorg
: unique name of your VCD tenancyurl
: API URL of your VCD instance +"/api"
, e.g.https://api-vcd-sz201.portal.australiacloud.com.au/api
Once you have these values you can fill in the missing provider configuration:
Connecting with a VCD user API token¤
- Generate a VCD API token, Using a manually generated VCD API token.
- Retrieve the unique name of your VCD tenancy
- Retrieve the API server URL for your VCD tenancy from the list of AUCloud VMware Cloud Director API Endpoints
-
Connect to VCD with Terraform
The VMware Cloud Director Terraform Provider requires the following inputs in order to connect as a VCD Organization Administrator:
auth_type
: must be"token"
user
: must be"none"
password
: must be"none"
token
: The API token you created in step 1org
: unique name of your VCD tenancyurl
: API URL of your VCD instance +"/api"
, e.g.https://api-vcd-sz201.portal.australiacloud.com.au/api