As a VMware Cloud Foundation (VCF) user, you can use SDDC Manager to automate the deployment of vRealize Suite Lifecycle Manager in VCF aware mode so that SDDC Manager understands which vRealize Suite products have been deployed.

Running vRealize Suite Lifecycle Manager in VCF aware mode allows bidirectional communication and ensures that the VCF user deploys vRealize Suite products in accordance with VMware Validated Design.

Running API Operations as a VCF Administrator

As a VCF administrator with the username vcfadmin@local, you can use any of the vRealize Suite Lifecycle Manager public REST APIs, but restrictions and requirements apply to the following operations when vRealize Suite Lifecycle Manager is in VCF aware mode. No restrictions or requirements apply to the vRealize Suite Lifecycle Manager administrator with the username admin@local.
Table 1. Operations with Restrictions or Requirements
Operation Endpoint Restriction or Requirement
Update product admin password PUT /lcm/lcops/api/v2/environments/{environmentId}/products/{productId}/admin-password You are not allowed to update password references in VCF enabled environments. To update a product admin password, use the following example request body instead:
{
  "adminPassword": "locker:password:26005893-319a-4711-93a1-8eea7c3eecd4:CommonPassword",
  "currentAdminPassword": "locker:password:3b4b1c1d-bc20-4ed8-8b3c-d4540663c5fc:ConfigAdminPwdTest"
}
Update Product Node Password PUT /lcm/lcops/api/v2/environments/{environmentId}/products/{productId}/nodes/{nodeType} You are not allowed to update password references in VCF enabled environments. To update a product node password, use the following example request body instead:
{
  "currentPassword": "locker:password:3b4b1c1d-bc20-4ed8-8b3c-d4540663c5fc:ConfigAdminPwdTest",
  "hostName": "wsa-1.vrack.vsphere.local",
  "newPassword": "locker:password:26005893-319a-4711-93a1-8eea7c3eecd4:CommonPassword",
  "userNameToUpdate": "root"
}
Validate an Environment POST /lcm/lcops/api/v2/environments/pre-validate When you validate an environment before you create an environment, the request payload must include vcfProperties as an infrastructure property. vcfProperties identifies if the environment is VCF enabled. For example:
"infrastructure": {
  "properties": {
  ...
     "vcfProperties": {
        "vcfEnabled":true,
        "sddcManagerDetails":[{
           "sddcManagerHostName":"sddc-manager.vrack.vsphere.local",
           "sddcManagerName":"default",
           "sddcManagerVmid":"default"
         }]
        } vcfProperties
      ...
      } 
    }
Create an Environment POST /lcm/lcops/api/v2/environments When you create an environment, the request payload for deployment must include:
  • vcfProperties as an infrastructure property. vcfProperties identifies if the environment is VCF enabled.
  • clusterVIP as a product. clusterVIP identifies Load Balancer details for vRA, vROps, vRLI, and VIDM. If deploying a single node VIDM, leave the clusterVIP field empty
The following payload example snippet includes property and product values for a vRA 8.3 deployment.
"infrastructure": {
  "properties": {
  ...
     "vcfProperties": {
        "vcfEnabled":true,
        "sddcManagerDetails":[{
           "sddcManagerHostName":"sddc-manager.vrack.vsphere.local",
           "sddcManagerName":"default",
           "sddcManagerVmid":"default"
         }]
        } vcfProperties
      ...
      } 
  },
  "products": [
    {
      "id": "vra",
      "version": "8.3.0",
      "patchHistory": null,
      "snapshotHistory": null,
      "logHistory": null,
      "clusterVIP": {
        "clusterVips": [
          {
            "type": "vra-va",
            "properties": {
              "hostName": "vra-lb.vrack.vsphere.local"
            }
          }
        ]
      },
When you create an environment, the request payload for import must include:
  • vcfProperties as an infrastructure property. vcfProperties identifies if the environment is VCF enabled.
  • clusterFqdn as a product property. clusterFqdn specifies the load balancer FQDN.
The following payload example includes property and product values for a vROps 8.3 import with a single node VIDM.
"infrastructure": {
  "properties": {
  ...
     "vcfProperties": {
        "vcfEnabled":true,
        "sddcManagerDetails":[{
           "sddcManagerHostName":"sddc-manager.vrack.vsphere.local",
           "sddcManagerName":"default",
           "sddcManagerVmid":"default"
         }]
        } vcfProperties
      ...
      } 
  },
  "products": [
    {
      "id": "vrops",
      "version": "8.3.0",
      "properties": {
        "vropsMasterNodeIP": "vrops-master.vrack.vsphere.local",
        ...
        "clusterFqdn": "vrops-lb.vrack.vsphere.local"
      },
      "clusterVIP": {
        "clusterVips": []
      },
      "nodes": []
Add Product to an Environment POST /lcm/lcops/api/v2/environments/{environmentId}/products
When you add a product to an existing environment, the request payload must include:
  • vcfProperties as an infrastructure property. vcfProperties identifies if the environment is VCF enabled.
  • clusterVIP as a product. clusterVIP identifies Load Balancer details for vRA, vROps, vRLI, and VIDM. If deploying a single node VIDM, leave the clusterVIP field empty
The following payload example includes product values for adding vRA 8.3.
"infrastructure": {
  "properties": {
  ...
     "vcfProperties": {
        "vcfEnabled":true,
        "sddcManagerDetails":[{
           "sddcManagerHostName":"sddc-manager.vrack.vsphere.local",
           "sddcManagerName":"default",
           "sddcManagerVmid":"default"
         }]
        } vcfProperties
      ...
      } 
  },
  "products": [
    {
      "id": "vra",
      "version": "8.3.0",
      "patchHistory": null,
      "snapshotHistory": null,
      "logHistory": null,
      "clusterVIP": {
        "clusterVips": [
          {
            "type": "vra-va",
            "properties": {
              "hostName": "vra-lb.vrack.vsphere.local"
            }
          }
        ]
      },
When you import a product into an existing environment, the request payload must include:
  • vcfProperties as an infrastructure property. vcfProperties identifies if the environment is VCF enabled.
  • clusterFqdn as a product property. clusterFqdn specifies the load balancer FQDN.
The following payload example includes product values for importing vROps 8.3 with a single node VIDM.
"infrastructure": {
  "properties": {
  ...
     "vcfProperties": {
        "vcfEnabled":true,
        "sddcManagerDetails":[{
           "sddcManagerHostName":"sddc-manager.vrack.vsphere.local",
           "sddcManagerName":"default",
           "sddcManagerVmid":"default"
         }]
        } vcfProperties
      ...
      } 
   },
   "products": [
    {
      "id": "vrops",
      "version": "8.3.0",
      "properties": {
        "vropsMasterNodeIP": "vrops-master.vrack.vsphere.local",
        ...
        "clusterFqdn": "vrops-lb.vrack.vsphere.local"
      },
      "clusterVIP": {
        "clusterVips": []
      },
      "nodes": []
Add Node to a Product POST /lcm/lcops/api/v2/environments/{environmentId}/products/{productId}/nodes When you scale out a VIDM, the request payload must include:
  • vcfProperties as an infrastructure property. vcfProperties identifies if the environment is VCF enabled.
  • clusterVIP as a product. clusterVIP provides the load balancer details.
The following payload example includes product values for scaling out a VIDM.
"infrastructure": {
  "properties": {
  ...
     "vcfProperties": {
        "vcfEnabled":true,
        "sddcManagerDetails":[{
           "sddcManagerHostName":"sddc-manager.vrack.vsphere.local",
           "sddcManagerName":"default",
           "sddcManagerVmid":"default"
         }]
        } vcfProperties
      ...
      } 
  ,}
  "products": [
    {
      "id": "vidm",
      "version": "3.3.3",
      "patchHistory": null,
      "snapshotHistory": null,
      "logHistory": null,
      "clusterVIP": {
        "clusterVips": [
        {
            "type": "vidm-lb",
            "properties": {
              "hostName": "wsa-lb.vrack.vsphere.local"
            }
        },
        {
            "type": "vidm-delegate",
            "properties": {
              "ip": "10.196.31.26"
            }
        }
      ]
      },
      "nodes": [
        {
          "type": "vidm-secondary",
          "properties": {
            "vmName": "vidm-secondary-1",
            "hostName": "wsa-2.vrack.vsphere.local",
            "ip": "192.168.31.24"
          }
        },
        {
          "type": "vidm-secondary",
          "properties": {
            "vmName": "vidm-secondary-2",
            "hostName": "wsa-3.vrack.vsphere.local",
            "ip": "192.168.31.25"
          }
        }
      ],