To deploy VMware Cloud Director, you configure a REST API request and provide the parameters for the VMware Cloud Director environment.

Prerequisites

  • You must meet all requirements for deployment of VMware Cloud Director. For information, see Before you deploy VMware Cloud Director.
  • Verify that the VMware Cloud Director version you want to deploy is supported by VMware Cloud Provider Lifecycle Manager. For information about the interoperability between VMware Cloud Provider Lifecycle Manager 1.1 and other VMware products, see the VMware Product Interoperability Matrix.
  • Save the VMware Cloud Director OVA file to the vcd/version-number/ova directory on the VMware Cloud Provider Lifecycle Manager host.
  • Verify that you have the password for the VMware Cloud Director database user.
  • Verify that you have the path to the mounted NFS server.

Procedure

  • In your Web browser, start Postman and configure the following HTTPS request.
    1. On the Headers tab, add the JSON session ID.
      Setting Value
      JSESSIONID vcp_lcm_session_id
    2. To deploy VMware Cloud Director, configure the following HTTPS request.
      Note: You can specify the following VMware Cloud Director certificates either when deploying VMware Cloud Director or at a later stage.
      Certificate Description
      product Specifies the VMware Cloud Director HTTPS and console proxy certificate. VMware Cloud Provider Lifecycle Manager currently does not support configuring separate certificates for these. For more information, see Replacing Certificates for the HTTPS and Console Proxy Endpoints in VMware Cloud Director Installation, Configuration, and Upgrade Guide.
      management Specifies the VMware Cloud Director VAMI and data base certificates. VMware Cloud Provider Lifecycle Manager currently does not support configuring separate certificates for these. For more information, see Replace a Self-Signed Embedded PostgreSQL and vCloud Director Appliance Management UI Certificate in VMware Cloud Director Installation, Configuration, and Upgrade Guide.
      restApi Specifies the VMware Cloud Director public endpoint REST API certificates. VMware Cloud Provider Lifecycle Manager currently does not support configuring separate certificates for these. For more information, see Customize Public Addresses in VMware Cloud Director Installation, Configuration, and Upgrade Guide.
      tenantPortal Specifies the VMware Cloud Director public endpoint web portal certificates. VMware Cloud Provider Lifecycle Manager currently does not support configuring separate certificates for these. For more information, see Customize Public Addresses in VMware Cloud Director Installation, Configuration, and Upgrade Guide.
      Setting Value
      HTTPS request method POST
      URL https://vcp_lcm_ip_address:port-number/api/api-versionlcm/environment?action=DEPLOY
      Body
      {
          "environmentName": "{{vcd_env_id}}",
          "products": [
              {
                  "properties": {
                      "installationId": 1,
                      "systemName": "vcd-1-vms",
                      "dbPassword": "{{password}}",
                      "keystorePassword": "{{password}}",
                      "clusterFailoverMode": "MANUAL",
                      "publicAddress": {
                          "consoleProxyExternalAddress": "{{vcd_lb_ip}}:8443",
                          "restApiBaseHttpUri": "http://{{vcd_lb_ip}}",
                          "restApiBaseUri": "https://{{vcd_lb_ip}}",
                          "tenantPortalExternalHttpAddress": "http://{{vcd_lb_ip}}",
                          "tenantPortalExternalAddress": "https://{{vcd_lb_ip}}"
                      },
                      "adminEmail": "admin_email",
                      "adminFullName": "admin_name",
                      "nfsMount": "{{vcd_nfs_mount}}"
                  },
                  "certificate": {
                      "product": {
                          "certificate": "{{vcd_cert}}",
                          "privateKey": "{{vcd_cert_key}}"
                      },
                      "restApi": {
                          "certificate": "{{vcd_public_cert}}"
                      },
                      "tenantPortal": {
                          "certificate": "{{vcd_public_cert}}"
                      }
                  },
                  "integrations": [
                      {
                          "integrationId": "vcd-01-to-vc-01",
                          "datacenterComponentType": "VCENTER",
                          "hostname": "{{vcenter_hostname}}.{{domainName}}",
                          "integrationUsername": "administrator@vsphere.local",
                          "integrationPassword": "{{vc_password}}",
                          "properties": {
                              "providerVdcs": {
                                      "PVDC-1": {
                                      "description": "m01vc01-comp-rp",
                                      "highestSupportedHardwareVersion": "vmx-14",
                                      "isEnabled": true,
                                      "clusterName": "{{vc_cluster}}",
                                      "resourcePoolname": "{{pvdc_resource_pool}}",
                                      "nsxIntegration": "vcd-01-to-nsx-01",
                                      "storageProfile":[
                                          "{{pvdc_storage_profile}}"
                                      ],
                                      "networkPoolname":"NP-1"
                                  }
                              }
                          }
                      },
                      {
                          "integrationId": "vcd-01-to-nsx-01",
                          "datacenterComponentType": "NSXT",
                          "hostname": "{{nsxt_hostname}}.{{domainName}}",
                          "integrationUsername": "admin",
                          "integrationPassword": "{{nsx_password}}",
                          "properties": {
                              "networkPools": {
                                  "NP-1": "{{pvdc_np_transport_zone}}"
                              },
                              "vcdExternalNetworks": {
                                  "EN-1": {
                                      "subnets": [
                                          {
                                              "gateway": "gateway_ip_address",
                                              "prefixLength": 24,
                                              "dnsServer1": "",
                                              "ipRanges":  [
                                                  {
                                                      "startAddress": "192.168.91.150",
                                                      "endAddress": "192.168.91.200"
                                                  }
                                              ]
                                          }
                                      ],
                                      "description": "ExternalNetworkCreatedViaVCDBringup",
                                      "tier0Name": "{{pvdc_ext_nw_tier0_gw}}"
                                  }
                              }
                          }
                      },
                      {
                          "integrationId": "vcd-01-to-rmq-01",
                          "productType": "RMQ",
                          "hostname": "{{rmq_lb_name}}.{{domainName}}",
                          "port": "{{rmq_port_amqp_ssl}}",
                          "integrationUsername": "svc_vcd",
                          "integrationPassword": "{{password}}",
                          "properties": {
                              "amqpExchange": "systemExchange",
                              "amqpVHost": "/",
                              "amqpUseSSL": true,
                              "amqpSslAcceptAll": true,
                              "amqpPrefix": "vcd"
                          }
                      }
                  ],
                  "productType": "VCD",
                  "productId": "{{vcd_product_id}}",
                  "version": "vcd_version",
                  "license": "{{vcd_license}}",
                  "adminPassword": "{{password}}",
                  "nodes": [
                      {
                          "hostName": "{{vcd_cell_1_name}}.{{domainName}}",
                          "vmName": "{{vcd_cell_1_name}}",
                          "rootPassword": "{{password}}",
                          "gateway": "{{vcd_mgmt_nw_gateway}}",
                          "nics": [
                              {
                                  "ipAddress": "{{vcd_cell_1_ip}}",
                                  "networkName": "vcd-dmz-nw",
                                  "staticRoutes": []
                              }, {
                                  "ipAddress": "{{vcd_cell_1_mgmt_ip}}",
                                  "networkName": "vcd-mgmt-nw",
                                  "staticRoutes": []
                              }
                          ]
                      },
                      {
                          "hostName": "{{vcd_cell_2_name}}.{{domainName}}",
                          "vmName": "{{vcd_cell_2_name}}",
                          "rootPassword": "{{password}}",
                          "gateway": "{{vcd_mgmt_nw_gateway}}",
                          "nics": [
                              {
                                  "ipAddress": "{{vcd_cell_2_ip}}",
                                  "networkName": "vcd-dmz-nw",
                                  "staticRoutes": []
                              }, {
                                  "ipAddress": "{{vcd_cell_2_mgmt_ip}}",
                                  "networkName": "vcd-mgmt-nw",
                                  "staticRoutes": []
                              }
                          ]
                      }
                  ]
              }
          ],
          "deploymentInfrastructures": {
              "infra1": {
                  "vcenter": {
                      "vcenterName": "mgmt-vc",
                      "vcenterHost": "{{vcenter_hostname}}.{{domainName}}",
                      "vcenterUsername": "administrator@vsphere.local",
                      "vcenterPassword": "{{vc_password}}",
                      "datacenterName": "{{vc_datacenter}}",
                      "clusterName": "{{vc_cluster}}",
                      "resourcePool": "{{vc_res_pool}}",
                      "datastores": [
                          "{{vc_datastore}}"
                      ],
                      "networks": {
                          "vcd-dmz-nw": {
                              "portGroupName": "{{vcd_dmz_portgroup}}",
                              "gateway": "{{vcd_dmz_gateway}}",
                              "subnetMask": "{{vcd_dmz_subnet}}",
                              "domainName": "{{domainName}}",
                              "searchPath": [
                                  "{{domainName}}"
                              ],
                              "useDhcp": false,
                              "dns": [
                                  "{{dns}}"
                              ],
                              "ntp": [
                                  "{{ntp}}"
                              ]
                          },
                          "vcd-mgmt-nw": {
                              "portGroupName": "{{vcd_mgmt_nw_portgroup}}",
                              "gateway": "{{vcd_mgmt_nw_gateway}}",
                              "subnetMask": "{{vcd_mgmt_nw_subnet}}",
                              "useDhcp": false
                          }
                      }
                  }
              }
          }
      }

Results

If the deployment is successful, you see a OK (200) status and "taskId":id-number. To check the status of the deployment, see Retrieve the status of a VMware Cloud Provider Lifecycle Manager task.