Namespaces_Instances_CreateSpec
The Instances.CreateSpec structure contains the specification required to set up a namespace on a single vSphere cluster.
{
"cluster": "string",
"namespace": "string",
"description": "string",
"resource_spec": {},
"access_list": [
{
"subject_type": "string",
"subject": "string",
"domain": "string",
"role": "string",
"identity_provider": "string"
}
],
"storage_specs": [
{
"policy": "string",
"limit": 0
}
],
"networks": [
"string"
],
"vm_service_spec": {
"content_libraries": [
"string"
],
"vm_classes": [
"string"
]
},
"content_libraries": [
{
"content_library": "string",
"writable": false
}
],
"creator": {
"subject": "string",
"domain": "string"
},
"namespace_network": {
"network_provider": "string",
"network": {
"namespace_network_cidrs": [
{
"address": "string",
"prefix": 0
}
],
"ingress_cidrs": [
{
"address": "string",
"prefix": 0
}
],
"egress_cidrs": [
{
"address": "string",
"prefix": 0
}
],
"nsx_tier0_gateway": "string",
"subnet_prefix_length": 0,
"routed_mode": false,
"load_balancer_size": "string"
}
}
}
Identifier of the cluster on which the namespace is being created. When clients pass a value of this structure as a parameter, the field must be an identifier for the resource type: ClusterComputeResource. When operations return a value of this structure as a result, the field will be an identifier for the resource type: ClusterComputeResource.
Identifier of the namespace. This has DNS_LABEL restrictions as specified in . This must be an alphanumeric (a-z and 0-9) string and with maximum length of 63 characters and with the '-' character allowed anywhere except the first or last character. This name is unique across all Namespaces in this vCenter server. In this version, this maps to the name of a Kubernetes namespace. When clients pass a value of this structure as a parameter, the field must be an identifier for the resource type: com.vmware.vcenter.namespaces.Instance. When operations return a value of this structure as a result, the field will be an identifier for the resource type: com.vmware.vcenter.namespaces.Instance.
Description for the namespace. If unset, no description is added to the namespace.
Resource quota on the namespace. Refer to com.vmware.vcenter.namespace_management.NamespaceResourceOptions.Info#createResourceQuotaType and use com.vmware.vcenter.namespace_management.NamespaceResourceOptions#get for retrieving the type for the value for this field. For an example of this, see ResourceQuotaOptionsV1. If unset, no resource limits will be set on the namespace.
Access controls associated with the namespace. If unset, only users with Administrator role can access the namespace.
Storage associated with the namespace. If unset, storage policies will not be associated with the namespace which will prevent users from being able to provision pods with persistent storage on the namespace. Users will be able to provision pods which use local storage.
The vSphere Namespaces network objects to be associated with the namespace. The values of this list need to reference names of pre-existing com.vmware.vcenter.namespace_management.Networks.Info structures. The field must be left unset if the cluster hosting the namespace uses NSXT_CONTAINER_PLUGIN or NSXT_VPC as the network provider, since the network(s) for this namespace will be managed on NSX-T. When using NSXT_CONTAINER_PLUGIN as network provider, a new network dedicated to the namespace will be created as part of namespace creation to override cluster network configs if Instances.NsxNetworkCreateSpec is set.
If the field is unset when the cluster hosting the namespace uses VSPHERE_NETWORK as its network provider, the namespace will automatically be associated with the cluster's Supervisor Primary Workload Network. The field currently accepts at most only 1 vSphere Namespaces network object reference.
When clients pass a value of this structure as a parameter, the field must contain identifiers for the resource type: com.vmware.vcenter.namespace_management.Network. When operations return a value of this structure as a result, the field will contain identifiers for the resource type: com.vmware.vcenter.namespace_management.Network.
The Instances.VMServiceSpec structure contains the specification required to configure the VM Service specification associated with a namespace.
List of Content Libraries used by the VM Image Service. This list refers to existing Content Libraries in vSphere inventory. The Content Libraries specified in {VMServiceSpec#contentLibraries} will also be used by the VM Image Service but will be read-only by default to users.
If the same Content Library is present both here and in {VMServiceSpec#contentLibraries}, then:
- The Content Library is only surfaced to users once.
- The settings here are honored.
If unset, no additional Content Libraries will be configured for the VM Image Service except for the Content Libraries specified in {VMServiceSpec#contentLibraries}.
The Instances.Principal structure contains the information about the creator of namespace.
The Instances.NetworkCreateSpec structure contains the specification required to create a vSphere Namespaces network object.