NamespaceManagement_Clusters_SetSpec

NamespaceManagement_Clusters_SetSpec
NamespaceManagement_Clusters_SetSpec

The Clusters.SetSpec structure contains the specification required to set a new configuration on the Cluster. This structure is applied in entirety, replacing the current specification fully.

JSON Example
{
    "size_hint": "string",
    "floating_IP": "string",
    "network_provider": "string",
    "ncp_cluster_network_spec": {
        "pod_cidrs": [
            {
                "address": "string",
                "prefix": 0
            }
        ],
        "ingress_cidrs": [
            {
                "address": "string",
                "prefix": 0
            }
        ],
        "egress_cidrs": [
            {
                "address": "string",
                "prefix": 0
            }
        ],
        "default_ingress_tls_certificate": "string"
    },
    "master_DNS": [
        "string"
    ],
    "worker_DNS": [
        "string"
    ],
    "master_DNS_search_domains": [
        "string"
    ],
    "master_NTP_servers": [
        "string"
    ],
    "master_storage_policy": "string",
    "ephemeral_storage_policy": "string",
    "cns_file_config": {
        "vsan_clusters": [
            "string"
        ]
    },
    "login_banner": "string",
    "Master_DNS_names": [
        "string"
    ],
    "image_storage": {
        "storage_policy": "string"
    },
    "default_image_registry": {
        "hostname": "string",
        "port": 0
    },
    "default_image_repository": "string",
    "default_kubernetes_service_content_library": "string",
    "workload_ntp_servers": [
        "string"
    ],
    "cluster_proxy_config": {
        "proxy_settings_source": "string",
        "https_proxy_config": "string",
        "http_proxy_config": "string",
        "no_proxy_config": [
            "string"
        ],
        "tls_root_ca_bundle": "string"
    },
    "content_libraries": [
        {
            "content_library": "string"
        }
    ]
}
size_hint
Required

The SizingHint enumerated type determines the configuration of Kubernetes API server and the worker nodes. It also determines the default values associated with the maximum number of pods and services. Use ClusterSizeInfo.get to get information associated with a SizingHint.
TINY : Cluster size of 'tiny'.
SMALL : Cluster size of 'small'.
MEDIUM : Cluster size of 'medium'.
LARGE : Cluster size of 'large'.

string
floating_IP
Optional

Optionally, you can edit the floating IP address that is assigned to the Supervisor in case the DHCP server fails during the Supervisor enablement process. The field is only relevant when the DHCP mode of the Supervisor management network is set with Clusters.EnableSpec.master-management-network. Set this floating IP parameter to remediate a supervisor enablement failure in the case where it was detected that the DHCP server does not support DHCP client identifiers.

If unset, the existing effective management network floating IP will not be modified.

network_provider
Required

Identifies the network plugin that cluster networking functionalities for this vSphere Namespaces Cluster.
NSXT_CONTAINER_PLUGIN : NSX-T Container Plugin.
VSPHERE_NETWORK : vSphere Networking.

ncp_cluster_network_spec
Optional

The Clusters.NCPClusterNetworkSetSpec structure encapsulates the NSX Container Plugin-specific cluster networking configuration parameters for the vSphere Namespaces Cluster Set operation.

array of string
master_DNS
Optional

List of DNS server IP addresses to use on Kubernetes API server, specified in order of preference. If unset, DNS servers set on Kubernetes API server will be cleared.

array of string
worker_DNS
Optional

List of DNS server IP addresses to use on the worker nodes, specified in order of preference. If unset, DNS servers set on worker nodes will be cleared.

array of string
master_DNS_search_domains
Optional

List of domains (for example "vmware.com") to be searched when trying to lookup a host name on Kubernetes API server, specified in order of preference. If unset, DNS search domains set on Kubernetes API server will be cleared.

array of string
master_NTP_servers
Optional

List of NTP server DNS names or IP addresses to use on Kubernetes API server, specified in order of preference. If unset, VMware Tools based time synchronization is enabled and any set NTP servers are cleared.

string
master_storage_policy
Required

Identifier of storage policy associated with Kubernetes API server. When clients pass a value of this structure as a parameter, the field must be an identifier for the resource type: SpsStorageProfile. When operations return a value of this structure as a result, the field will be an identifier for the resource type: SpsStorageProfile.

string
ephemeral_storage_policy
Required

Identifier of storage policy associated with ephemeral disks of all the Kubernetes Pods in the cluster. When clients pass a value of this structure as a parameter, the field must be an identifier for the resource type: SpsStorageProfile. When operations return a value of this structure as a result, the field will be an identifier for the resource type: SpsStorageProfile.

cns_file_config
Optional

The CNSFileConfig structure contains the specification required to set the configuration for Cloud Native Storage file volume support on Supervisor.

string
login_banner
Optional

Disclaimer to be displayed prior to login via the Kubectl plugin. If unset, disclaimer to be displayed prior to login via the Kubectl plugin will be cleared.

array of string
Master_DNS_names
Optional

List of DNS names to associate with the Kubernetes API server. These DNS names are embedded in the CSR for TLS certificate presented by the API server. The provided value will replace existing DNS names. If unset, existing DNS names will be cleared.

image_storage
Required

The Clusters.ImageStorageSpec structure contains the specification required to configure storage used for container images.

default_image_registry
Optional

The Clusters.ImageRegistry structure contains the specification required to configure container image registry endpoint.

string
default_image_repository
Optional

Default image repository to use when Kubernetes Pod container specification does not specify it as part of the container image name. If unset, default image repository will be set to Docker Hub official repository in case of Docker Hub image registry, otherwise will be set to empty string.

string
default_kubernetes_service_content_library
Optional

Identifier of the Content Library which holds the VM Images for vSphere Kubernetes Service.

This Content Library should be subscribed to VMware's hosted vSphere Kubernetes Service Repository.

Modifying or clearing the Content Library identifier will not affect existing vSphere Kubernetes Service clusters. However, upgrades or scale-out of existing clusters may be affected if the new Content Library doesn't have the necessary VM Images.

If unset, the Content Library identifier will be cleared. When clients pass a value of this structure as a parameter, the field must be an identifier for the resource type: com.vmware.content.Library. When operations return a value of this structure as a result, the field will be an identifier for the resource type: com.vmware.content.Library.

array of string
workload_ntp_servers
Optional

List of NTP server DNS names or IP addresses to use for workloads such as Tanzu Kubernetes Grid VMs, specified in order of preference. If unset, NTP for Kubernetes API servers will be used.

cluster_proxy_config
Optional

The ProxyConfiguration structure defines proxy configuration to be used by the Supervisor.

content_libraries
Optional

List of Content Libraries that will be associated a the Supervisor. This list should refer to existing Content Libraries in the vSphere inventory. These Content Libraries and the Content Library items belonging to them will be read-only across all vSphere Namespaces. This list does not overlap with the #defaultKubernetesServiceContentLibrary. If unset, no additional Content Libraries will be set for the Supervisor apart from the default Kubernetes Service Content Library.