[{"label":"Latest (4.4.0)","version":"latest"},{"version":"4.3.1"},{"link":"https://developer.vmware.com/apis/1127/vmware-cloud-foundation","version":"4.3"},{"link":"https://developer.vmware.com/apis/1078/vmware-cloud-foundation","version":"4.2"},{"link":"https://developer.vmware.com/apis/1033/vmware-cloud-foundation","version":"4.1"},{"link":"https://developer.vmware.com/apis/1003/vmware-cloud-foundation","version":"4.0.1"},{"link":"https://developer.vmware.com/apis/939/vmware-cloud-foundation","version":"4.0"}]
vcf-for-vxrail
VMware Cloud Foundation on Dell EMC VxRail API Reference Guide

Federation

APIs for managing Federation

1. Create a Multi Site Management Federation

A federation is a group of Cloud Foundation instances, such that each member can view information about the other Cloud Foundation instances in the group. The federation creator is granted the controller role by default.
You can create multiple federations within your organization, but global visibility is available only within a federation. Members can belong to only a single federation at a time.

1.1. Prerequisites

  • The following data is required

    • Name of the federation

    • Member Details

      • FQDN of the Member

      • Role of the Member (CONTROLLER)

      • Site Type (DATACENTER)

      • Site Name

      • City where the site is located

      • State where the site is located (Optional)

      • Country where the site is located

      • Location coordinates

        • Longitude

        • Latitude

  • Ensure, VCF Instance Role is set to NOT_JOINED.

Tip : Refer to: Get fact about a VMware Cloud Foundation API

1.2. Steps

  • Trigger the Create Federation

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/sddc-federation' -i -X PUT \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWR....' \
    -d '{
  "federationName" : "New Federation",
  "memberJoinDetail" : {
    "role" : "CONTROLLER",
    "fqdn" : "sfo-vcf01.rainpole.io",
    "siteType" : "DATACENTER",
    "siteName" : "Palo Alto Epic Center",
    "country" : "USA",
    "state" : "California",
    "city" : "Palo Alto",
    "coordinate" : {
      "longitude" : -122.838,
      "latitude" : 37.286
    }
  }
}'

HTTP Request

PUT /v1/sddc-federation HTTP/1.1
Content-Type: application/json
Content-Length: 369
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWR....

{
  "federationName" : "New Federation",
  "memberJoinDetail" : {
    "role" : "CONTROLLER",
    "fqdn" : "sfo-vcf01.rainpole.io",
    "siteType" : "DATACENTER",
    "siteName" : "Palo Alto Epic Center",
    "country" : "USA",
    "state" : "California",
    "city" : "Palo Alto",
    "coordinate" : {
      "longitude" : -122.838,
      "latitude" : 37.286
    }
  }
}

HTTP Response

HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 246

{
  "status" : "SUCCEEDED",
  "operation" : null,
  "taskId" : "67e1515d-4400-4876-8d1c-809085294bc0",
  "remoteOperationTask" : null,
  "progressDetails" : null,
  "created" : null,
  "lastUpdated" : null,
  "errors" : null,
  "payload" : null
}
  • Create federation API returns a task object. Task object has the task id.

  • Poll for the status of the workflow using the task ID with request

    TIP: Refer to: Get a Task

  • Validate the input specification.

    • Validates if VCF instance Role is other than CONTROLLER
  • Initialize the fabric services

  • Initialize the topics

  • Initialize persistent store

  • Add member to federation

  • Update persistent store with new member details

    • If the “status” is “SUCCEEDED”, the task is completed successfully.

    • If the “status” is “FAILED”, the task can be re-executed.

2. Get Multi Site Management Federation Details

2.1. Prerequisites

2.2. Steps

  • Invoke the API.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/sddc-federation' -i -X GET \
    -H 'Authorization: Bearer etYWR....'

HTTP Request

GET /v1/sddc-federation HTTP/1.1
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWR....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 3212

[ {
  "memberDetails" : {
    "role" : "CONTROLLER",
    "fqdn" : "sfo-vcf01.rainpole.io",
    "siteType" : "DATACENTER",
    "siteName" : "Palo Alto Epic Center",
    "country" : "USA",
    "state" : "California",
    "city" : "Palo Alto",
    "coordinate" : {
      "longitude" : -122.838,
      "latitude" : 37.286
    }
  },
  "memberInventory" : {
    "capacity" : {
      "summary" : {
        "domainCount" : 2,
        "aggregatedCapacity" : {
          "cpu" : {
            "free" : 58.795,
            "total" : 79.799,
            "used" : 21.00399,
            "unallocated" : 0.0,
            "unit" : "GHZ"
          },
          "hostCount" : {
            "total" : 10,
            "unallocated" : 4,
            "used" : 6
          },
          "datastores" : [ {
            "used" : 0.866,
            "datastoreName" : "sfo-m01-cl01-ds-vsan01",
            "datastoreType" : "VSAN",
            "freeSpace" : 5.839,
            "capacity" : 6.705,
            "unallocated" : 2.694,
            "unit" : "TB"
          }, {
            "used" : 0.866,
            "datastoreName" : "sfo-m01-cl01-ds-vsan02",
            "datastoreType" : "VSAN",
            "freeSpace" : 5.839,
            "capacity" : 6.705,
            "unallocated" : 2.694,
            "unit" : "TB"
          } ],
          "memory" : {
            "free" : 76.109,
            "total" : 375.0,
            "used" : 298.89,
            "unallocated" : 0.0,
            "unit" : "GB"
          }
        },
        "domainTypeInfo" : [ {
          "type" : null,
          "domainCount" : 2,
          "aggregatedCapacity" : {
            "cpu" : {
              "free" : 58.795,
              "total" : 79.799,
              "used" : 21.00399,
              "unallocated" : 0.0,
              "unit" : "GHZ"
            },
            "hostCount" : {
              "total" : 10,
              "unallocated" : 4,
              "used" : 6
            },
            "datastores" : [ {
              "used" : 0.866,
              "datastoreName" : "sfo-m01-cl01-ds-vsan01",
              "datastoreType" : "VSAN",
              "freeSpace" : 5.839,
              "capacity" : 6.705,
              "unallocated" : 2.694,
              "unit" : "TB"
            }, {
              "used" : 0.866,
              "datastoreName" : "sfo-m01-cl01-ds-vsan02",
              "datastoreType" : "VSAN",
              "freeSpace" : 5.839,
              "capacity" : 6.705,
              "unallocated" : 2.694,
              "unit" : "TB"
            } ],
            "memory" : {
              "free" : 76.109,
              "total" : 375.0,
              "used" : 298.89,
              "unallocated" : 0.0,
              "unit" : "GB"
            }
          }
        } ],
        "domainInfo" : null
      }
    },
    "inventoryInfo" : null,
    "softwareInfo" : {
      "pendingUpdates" : 1
    },
    "creationTime" : null,
    "createTime" : "1595522545"
  },
  "memberLiveness" : {
    "livelinessCode" : "GREEN",
    "livelinessDetails" : [ "The vcf site Palo Alto Epic Centeris live" ]
  },
  "memberHealth" : {
    "healthCode" : "GREEN",
    "healthDetails" : [ "Category: CPU, usage: 60.0, and it is normal." ]
  }
} ]

This API can be used to get list of all VCF instances in the federation with details.

  • VCF instance details

  • VCF instance inventory

  • VCF instance liveness

  • VCF instance health

3. Tear Down Federation

You can dismantle a federation if you are the last controller member in the federation.

Only members with the controller role can dismantle a federation.

3.1. Prerequisites

  • No request body is needed.

  • Invoking SDDC Manager must be of Controller role, and the only one in the federation.

3.2. Steps

  • When Teardown API is invoked, it does the following

    • All fabric services previously set up will be shut down.

    • Persistent store will be archived and cleaned up.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/sddc-federation' -i -X DELETE \
    -H 'Authorization: Bearer etYWR....'

HTTP Request

DELETE /v1/sddc-federation HTTP/1.1
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWR....

HTTP Response

HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 246

{
  "status" : "SUCCEEDED",
  "operation" : null,
  "taskId" : "62565abd-576b-46ac-bb34-2d5654dbab2b",
  "remoteOperationTask" : null,
  "progressDetails" : null,
  "created" : null,
  "lastUpdated" : null,
  "errors" : null,
  "payload" : null
}

Last updated 2021-11-03 05:03:41 PDT

Operations



[{"label":"Latest (4.4.0)","version":"latest"},{"version":"4.3.1"},{"link":"https://developer.vmware.com/apis/1127/vmware-cloud-foundation","version":"4.3"},{"link":"https://developer.vmware.com/apis/1078/vmware-cloud-foundation","version":"4.2"},{"link":"https://developer.vmware.com/apis/1033/vmware-cloud-foundation","version":"4.1"},{"link":"https://developer.vmware.com/apis/1003/vmware-cloud-foundation","version":"4.0.1"},{"link":"https://developer.vmware.com/apis/939/vmware-cloud-foundation","version":"4.0"}]
vcf-for-vxrail
Feedback

Was this page helpful?