PbmCapabilityProfileCreateSpec

PbmCapabilityProfileCreateSpec
PbmCapabilityProfileCreateSpec

The PbmCapabilityProfileCreateSpec describes storage requirements.

Use this data object to create a PbmCapabilityProfile.

This structure may be used only with operations rendered under /pbm.

AllOf
This class requires all of the following:
JSON Example
{
    "_typeName": "string",
    "name": "string",
    "description": "string",
    "category": "string",
    "resourceType": {
        "_typeName": "string",
        "resourceType": "string"
    },
    "constraints": {
        "_typeName": "string"
    },
    "k8sCompliantName": "string"
}
string
name
Required

Name of the capability based profile to be created.

The maximum length of the name is 80 characters.

string
description
Optional

Text description associated with the profile.

string
category
Optional

Category specifies the type of policy to be created.

This can be REQUIREMENT from PbmProfileCategoryEnumEnum or null when creating a storage policy. And it can be DATA_SERVICE_POLICY from PbmProfileCategoryEnumEnum when creating a data service policy. RESOURCE from PbmProfileCategoryEnumEnum is not allowed as resource profile is created by the system.

resourceType
Required

Deprecated as of vSphere API 6.5.

Specifies the type of resource to which the profile applies.

The only legal value is STORAGE - deprecated.

constraints
Required

Set of subprofiles that define the storage requirements.

A subprofile corresponds to a rule set in the vSphere Web Client.

string
k8sCompliantName
Optional

Indicates compliant name to be used as K8s StorageClass name when this policy is used for K8s workloads.

If compliant name is specified, and it's not RFC 1123 compliant, then policy creation would fail. Duplicating the compliant name across storage profiles in a vCenter is not allowed. If either there is already a K8s StorageClass with this name or WaitForForFirstConsumer StorageClass with the name 'k8sCompliantName-latebinding', then the policy creation would fail. Compliant name will automatically be generated and populated based on policy name if it's not provided.