Home / API Documentation / Platform management / Clusters / Cluster base operation / View the status of the cluster

View the status of the cluster

Requests

HTTP request

GET /apis/platform.tkestack.io/v1/clusters/{name}/status

read status of the specified Cluster

Path parameters

Name Type Required Description
name string Truename of the Cluster

Query parameters

Name Type Required Description
exact boolean FalseShould the export be exact. Exact export maintains cluster-specific fields like 'Namespace'. Deprecated. Planned for removal in 1.18.
export boolean FalseShould this value be exported. Export strips fields that a user can not specify. Deprecated. Planned for removal in 1.18.
pretty string FalseIf 'true', then the output is pretty printed.

Responses

Content-Type application/json, application/yaml, application/vnd.kubernetes.protobuf

Status code: 200

OK

Sample response

Cluster is a Kubernetes cluster in

{
   "addresses": [
     {
       "host": "192.168.16.53",
       "path": "",
       "port": 6443,
       "type": "Real"
     },
     {
       "host": "192.168.16.54",
       "path": "",
       "port": 6443,
       "type": "Real"
     },
     {
       "host": "192.168.16.55",
       "path": "",
       "port": 6443,
       "type": "Real"
     },
     {
       "host": "192.168.16.52",
       "path": "",
       "port": 6443,
       "type": "Advertise"
     }
   ],
   "clusterCIDR": "10.199.0.0/16",
   "conditions": [
     {
       "lastProbeTime": "2021-09-12T05:14:34Z",
       "lastTransitionTime": "2021-09-12T05:14:34Z",
       "status": "True",
       "type": "EnsureCopyFiles"
     },
     {
       "lastProbeTime": "2021-09-12T05:14:34Z",
       "lastTransitionTime": "2021-09-12T05:14:34Z",
       "status": "True",
       "type": "EnsurePreClusterInstallHook"
     },
     {
       "lastProbeTime": "2021-09-12T05:14:34Z",
       "lastTransitionTime": "2021-09-12T05:14:34Z",
       "status": "True",
       "type": "EnsurePreInstallHook"
     },
     {
       "lastProbeTime": "2021-09-12T05:14:42Z",
       "lastTransitionTime": "2021-09-12T05:14:34Z",
       "status": "True",
       "type": "EnsurePrepareNode"
     },
     {
       "lastProbeTime": "2021-09-12T05:14:42Z",
       "lastTransitionTime": "2021-09-12T05:14:42Z",
       "status": "True",
       "type": "EnsureClusterComplete"
     },
     {
       "lastProbeTime": "2021-09-12T05:15:27Z",
       "lastTransitionTime": "2021-09-12T05:14:42Z",
       "status": "True",
       "type": "EnsureContainerRuntime"
     },
     {
       "lastProbeTime": "2021-09-12T05:16:13Z",
       "lastTransitionTime": "2021-09-12T05:15:27Z",
       "status": "True",
       "type": "EnsureKubeNode"
     },
     {
       "lastProbeTime": "2021-09-12T05:16:13Z",
       "lastTransitionTime": "2021-09-12T05:16:13Z",
       "status": "True",
       "type": "EnsureNodeHostname"
     },
     {
       "lastProbeTime": "2021-09-12T05:17:09Z",
       "lastTransitionTime": "2021-09-12T05:16:13Z",
       "status": "True",
       "type": "EnsureInitMaster"
     },
     {
       "lastProbeTime": "2021-09-12T05:17:11Z",
       "lastTransitionTime": "2021-09-12T05:17:09Z",
       "status": "True",
       "type": "EnsureStoreCredential"
     },
     {
       "lastProbeTime": "2021-09-12T05:17:12Z",
       "lastTransitionTime": "2021-09-12T05:17:11Z",
       "status": "True",
       "type": "EnsureKubeconfig"
     },
     {
       "lastProbeTime": "2021-09-12T05:19:58Z",
       "lastTransitionTime": "2021-09-12T05:17:12Z",
       "status": "True",
       "type": "EnsureJoin"
     },
     {
       "lastProbeTime": "2021-09-12T05:19:58Z",
       "lastTransitionTime": "2021-09-12T05:19:58Z",
       "status": "True",
       "type": "EnsureCreateClusterMark"
     },
     {
       "lastProbeTime": "2021-09-12T05:19:58Z",
       "lastTransitionTime": "2021-09-12T05:19:58Z",
       "status": "True",
       "type": "EnsureCleanupScript"
     },
     {
       "lastProbeTime": "2021-09-12T05:19:58Z",
       "lastTransitionTime": "2021-09-12T05:19:58Z",
       "message": "Skip current condition",
       "reason": "Skip",
       "status": "True",
       "type": "EnsureCNI"
     },
     {
       "lastProbeTime": "2021-09-12T05:20:27Z",
       "lastTransitionTime": "2021-09-12T05:19:58Z",
       "status": "True",
       "type": "EnsureUpdateCISConfiguration"
     },
     {
       "lastProbeTime": "2021-09-12T05:20:29Z",
       "lastTransitionTime": "2021-09-12T05:20:27Z",
       "status": "True",
       "type": "EnsureRenewCertsService"
     },
     {
       "lastProbeTime": "2021-09-12T05:20:29Z",
       "lastTransitionTime": "2021-09-12T05:20:29Z",
       "status": "True",
       "type": "EnsurePostInstallHook"
     },
     {
       "lastProbeTime": "2021-09-12T05:20:29Z",
       "lastTransitionTime": "2021-09-12T05:20:29Z",
       "status": "True",
       "type": "EnsurePostClusterInstallHook"
     },
     {
       "lastProbeTime": "2021-09-12T05:20:29Z",
       "lastTransitionTime": "2021-09-12T05:20:29Z",
       "status": "True",
       "type": "EnsureCleanupCluster"
     },
     {
       "lastProbeTime": "2021-09-12T05:20:29Z",
       "lastTransitionTime": "2021-09-12T05:20:29Z",
       "status": "True",
       "type": "EnsureWaitClusterModuleReady"
     },
     {
       "lastProbeTime": "2021-10-12T03:41:07Z",
       "lastTransitionTime": "2021-09-12T05:23:51Z",
       "status": "True",
       "type": "HealthCheck"
     }
   ],
   "dnsIP": "10.96.0.10",
   "nodeCIDRMaskSize": 24,
   "phase": "Running",
   "resource": {},
   "serviceCIDR": "10.96.0.0/12",
   "version": "1.21.2"
 }

Parameters

Name Type Description
apiVersion string See common parameters
kind string See common parameters
metadata object See common parameters
spec object ClusterSpec is a description of a cluster.
Path: spec
spec.apiServerExtraArgs object api server extra arguments
Path: spec.apiServerExtraArgs
spec.clusterCIDR string ClusterCIDR is used to set a separated CIDR for k8s pod
Path: spec.clusterCIDR
spec.clusterCredentialRef object LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
Path: spec.clusterCredentialRef
clusterCredentialRef.name string Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
Path: spec.clusterCredentialRef.name
spec.controllerManagerExtraArgs object controller manager extra arguments
Path: spec.controllerManagerExtraArgs
spec.displayName string DisplayName is the display name of the cluster.
Path: spec.displayName
spec.dnsDomain string DNSDomain is the dns domain used by k8s services. Defaults to "cluster.local".
Path: spec.dnsDomain
spec.dockerExtraArgs object docker extra arguments
Path: spec.dockerExtraArgs
spec.etcd object Etcd contains elements describing Etcd configuration.
Path: spec.etcd
etcd.external object ExternalEtcd describes an external etcd cluster. Kubeadm has no knowledge of where certificate files live and they must be supplied.
Path: spec.etcd.external
external.caFile string CAFile is an SSL Certificate Authority file used to secure etcd communication. Required if using a TLS connection.
Path: spec.etcd.external.caFile
external.certFile string CertFile is an SSL certification file used to secure etcd communication. Required if using a TLS connection.
Path: spec.etcd.external.certFile
external.endpoints array Endpoints of etcd members. Required for ExternalEtcd.
Path: spec.etcd.external.endpoints
external.endpoints[] string
Path: spec.etcd.external.endpoints[]
external.keyFile string KeyFile is an SSL key file used to secure etcd communication. Required if using a TLS connection.
Path: spec.etcd.external.keyFile
etcd.local object LocalEtcd describes that kubeadm should run an etcd cluster locally
Path: spec.etcd.local
local.dataDir string DataDir is the directory etcd will place its data. Defaults to "/var/lib/etcd".
Path: spec.etcd.local.dataDir
local.extraArgs object ExtraArgs are extra arguments provided to the etcd binary when run inside a static pod.
Path: spec.etcd.local.extraArgs
local.peerCertSANs array PeerCertSANs sets extra Subject Alternative Names for the etcd peer signing cert.
Path: spec.etcd.local.peerCertSANs
local.peerCertSANs[] string
Path: spec.etcd.local.peerCertSANs[]
local.serverCertSANs array ServerCertSANs sets extra Subject Alternative Names for the etcd server signing cert.
Path: spec.etcd.local.serverCertSANs
local.serverCertSANs[] string
Path: spec.etcd.local.serverCertSANs[]
spec.features object ClusterFeature records the features that are enabled by the cluster.
Path: spec.features
features.authzWebhookAddr object
Path: spec.features.authzWebhookAddr
authzWebhookAddr.builtin object
Path: spec.features.authzWebhookAddr.builtin
authzWebhookAddr.external object
Path: spec.features.authzWebhookAddr.external
external.ip string ip
Path: spec.features.authzWebhookAddr.external.ip
external.port integer (int32) port
Path: spec.features.authzWebhookAddr.external.port
features.csiOperator object
Path: spec.features.csiOperator
csiOperator.version string version
Path: spec.features.csiOperator.version
features.enableMasterSchedule boolean enable master node schedule or not
Path: spec.features.enableMasterSchedule
features.enableMetricsServer boolean enable metrics server or not
Path: spec.features.enableMetricsServer
features.files array files
Path: spec.features.files
features.files[] object
Path: spec.features.files[]
files[].dst string destination file, only support regular file
Path: spec.features.files[].dst
files[].src string source file, only support regular file
Path: spec.features.files[].src
features.gpuType string GPU type
Path: spec.features.gpuType
features.ha object
Path: spec.features.ha
ha.thirdParty object
Path: spec.features.ha.thirdParty
thirdParty.vip string virtual IP of the HA
Path: spec.features.ha.thirdParty.vip
thirdParty.vport integer (int32) virtual port of the HA
Path: spec.features.ha.thirdParty.vport
ha.tke object
Path: spec.features.ha.tke
tke.vip string virtual IP of the HA
Path: spec.features.ha.tke.vip
tke.vrid integer (int32) vrid of the HA
Path: spec.features.ha.tke.vrid
features.hooks object hooks
Path: spec.features.hooks
features.internalLB boolean internalLB on-off
Path: spec.features.internalLB
features.ipv6DualStack boolean enable IPV4/IPV6 dual stack or not
Path: spec.features.ipv6DualStack
features.ipvs boolean ipvs on-off
Path: spec.features.ipvs
features.publicLB boolean publicLB on-off
Path: spec.features.publicLB
features.skipConditions array SkipConditions is a set of conditions that needs to be skipped
Path: spec.features.skipConditions
features.skipConditions[] string
Path: spec.features.skipConditions[]
features.upgrade object
Path: spec.features.upgrade
upgrade.mode string Upgrade mode, default value is Auto.
Path: spec.features.upgrade.mode
upgrade.strategy object UpgradeStrategy used to control the upgrade process.
Path: spec.features.upgrade.strategy
strategy.drainNodeBeforeUpgrade boolean Whether drain node before upgrade. Draining node before upgrade is recommended. But not all pod running as cows, a few running as pets. If your pod can not accept be expelled from current node, this value should be false.
Path: spec.features.upgrade.strategy.drainNodeBeforeUpgrade
strategy.maxUnready string (int-or-string) IntOrString is a type that can hold an int32 or a string. When used in JSON or YAML marshalling and unmarshalling, it produces or consumes the inner type. This allows you to have, for example, a JSON field that can accept a name or number.
Path: spec.features.upgrade.strategy.maxUnready
spec.finalizers array Finalizers is an opaque list of values that must be empty to permanently remove object from storage.
Path: spec.finalizers
spec.finalizers[] string
Path: spec.finalizers[]
spec.hostnameAsNodename boolean If true will use hostname as nodename, if false will use machine IP as nodename.
Path: spec.hostnameAsNodename
spec.kubeletExtraArgs object kubelet extra arguments
Path: spec.kubeletExtraArgs
spec.machines array cluster machine, represent master nodes in the cluster
Path: spec.machines
spec.machines[] object ClusterMachine is the master machine definition of cluster.
Path: spec.machines[]
machines[].displayName string displayName
Path: spec.machines[].displayName
machines[].ip string
Path: spec.machines[].ip
machines[].ipv6 string ipv6
Path: spec.machines[].ipv6
machines[].labels object
Path: spec.machines[].labels
machines[].networkDevice string networkDevice
Path: spec.machines[].networkDevice
machines[].passPhrase string (byte)
Path: spec.machines[].passPhrase
machines[].password string (byte)
Path: spec.machines[].password
machines[].port integer (int32)
Path: spec.machines[].port
machines[].privateKey string (byte)
Path: spec.machines[].privateKey
machines[].proxy object MachineProxy is the proxy to connect Machine's ssh.
Path: spec.machines[].proxy
proxy.address string address
Path: spec.machines[].proxy.address
proxy.password string (byte) password
Path: spec.machines[].proxy.password
proxy.type string type
Path: spec.machines[].proxy.type
proxy.username string username
Path: spec.machines[].proxy.username
machines[].publicIP string publicIP
Path: spec.machines[].publicIP
machines[].role string master/node
Path: spec.machines[].role
machines[].taints array If specified, the node's taints.
Path: spec.machines[].taints
machines[].taints[] object The node this Taint is attached to has the "effect" on any pod that does not tolerate the Taint.
Path: spec.machines[].taints[]
taints[].effect string Required. The effect of the taint on pods that do not tolerate the taint. Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
Path: spec.machines[].taints[].effect
taints[].key string Required. The taint key to be applied to a node.
Path: spec.machines[].taints[].key
taints[].timeAdded string (date-time) Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
Path: spec.machines[].taints[].timeAdded
taints[].value string The taint value corresponding to the taint key.
Path: spec.machines[].taints[].value
machines[].username string
Path: spec.machines[].username
spec.networkArgs object network arguments
Path: spec.networkArgs
spec.networkDevice string network device
Path: spec.networkDevice
spec.networkType string network type
Path: spec.networkType
spec.properties object ClusterProperty records the attribute information of the cluster.
Path: spec.properties
properties.maxClusterServiceNum integer (int32) max number of cluster service
Path: spec.properties.maxClusterServiceNum
properties.maxNodePodNum integer (int32) max number of node pod
Path: spec.properties.maxNodePodNum
properties.oversoldRatio object oversold ratio
Path: spec.properties.oversoldRatio
spec.publicAlternativeNames array public alternative names
Path: spec.publicAlternativeNames
spec.publicAlternativeNames[] string
Path: spec.publicAlternativeNames[]
spec.scalingMachines array ScalingMachines is a set of the machines that we want to add/delete from the cluster.
Path: spec.scalingMachines
spec.scalingMachines[] object ClusterMachine is the master machine definition of cluster.
Path: spec.scalingMachines[]
scalingMachines[].displayName string displayName
Path: spec.scalingMachines[].displayName
scalingMachines[].ip string
Path: spec.scalingMachines[].ip
scalingMachines[].ipv6 string ipv6
Path: spec.scalingMachines[].ipv6
scalingMachines[].labels object
Path: spec.scalingMachines[].labels
scalingMachines[].networkDevice string networkDevice
Path: spec.scalingMachines[].networkDevice
scalingMachines[].passPhrase string (byte)
Path: spec.scalingMachines[].passPhrase
scalingMachines[].password string (byte)
Path: spec.scalingMachines[].password
scalingMachines[].port integer (int32)
Path: spec.scalingMachines[].port
scalingMachines[].privateKey string (byte)
Path: spec.scalingMachines[].privateKey
scalingMachines[].proxy object MachineProxy is the proxy to connect Machine's ssh.
Path: spec.scalingMachines[].proxy
proxy.address string address
Path: spec.scalingMachines[].proxy.address
proxy.password string (byte) password
Path: spec.scalingMachines[].proxy.password
proxy.type string type
Path: spec.scalingMachines[].proxy.type
proxy.username string username
Path: spec.scalingMachines[].proxy.username
scalingMachines[].publicIP string publicIP
Path: spec.scalingMachines[].publicIP
scalingMachines[].role string master/node
Path: spec.scalingMachines[].role
scalingMachines[].taints array If specified, the node's taints.
Path: spec.scalingMachines[].taints
scalingMachines[].taints[] object The node this Taint is attached to has the "effect" on any pod that does not tolerate the Taint.
Path: spec.scalingMachines[].taints[]
taints[].effect string Required. The effect of the taint on pods that do not tolerate the taint. Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
Path: spec.scalingMachines[].taints[].effect
taints[].key string Required. The taint key to be applied to a node.
Path: spec.scalingMachines[].taints[].key
taints[].timeAdded string (date-time) Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
Path: spec.scalingMachines[].taints[].timeAdded
taints[].value string The taint value corresponding to the taint key.
Path: spec.scalingMachines[].taints[].value
scalingMachines[].username string
Path: spec.scalingMachines[].username
spec.schedulerExtraArgs object scheduler extra arguments
Path: spec.schedulerExtraArgs
spec.serviceCIDR string ServiceCIDR is used to set a separated CIDR for k8s service, it's exclusive with MaxClusterServiceNum.
Path: spec.serviceCIDR
spec.tenantID string tenant id
Path: spec.tenantID
spec.type string cluster type, baremetal or imported
Path: spec.type
spec.version string cluster version
Path: spec.version
status object ClusterStatus represents information about the status of a cluster.
Path: status
status.addresses array List of addresses reachable to the cluster.
Path: status.addresses
status.addresses[] object ClusterAddress contains information for the cluster's address.
Path: status.addresses[]
addresses[].host string The cluster address.
Path: status.addresses[].host
addresses[].path string path
Path: status.addresses[].path
addresses[].port integer (int32) port
Path: status.addresses[].port
addresses[].type string Cluster address type, one of Public, ExternalIP or InternalIP.
Path: status.addresses[].type
status.clusterCIDR string ClusterCIDR is used to set a separated CIDR for k8s pod
Path: status.clusterCIDR
status.components array cluster component
Path: status.components
status.components[] object ClusterComponent records the number of copies of each component of the cluster master.
Path: status.components[]
components[].replicas object ClusterComponentReplicas records the number of copies of each state of each component of the cluster master.
Path: status.components[].replicas
replicas.available integer (int32) Available
Path: status.components[].replicas.available
replicas.current integer (int32) Current
Path: status.components[].replicas.current
replicas.desired integer (int32) Desired
Path: status.components[].replicas.desired
replicas.updated integer (int32) Updated
Path: status.components[].replicas.updated
components[].type string type
Path: status.components[].type
status.conditions array cluster conditions
Path: status.conditions
status.conditions[] object ClusterCondition contains details for the current condition of this cluster.
Path: status.conditions[]
conditions[].lastProbeTime string (date-time) Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
Path: status.conditions[].lastProbeTime
conditions[].lastTransitionTime string (date-time) Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
Path: status.conditions[].lastTransitionTime
conditions[].message string Human-readable message indicating details about last transition.
Path: status.conditions[].message
conditions[].reason string Unique, one-word, CamelCase reason for the condition's last transition.
Path: status.conditions[].reason
conditions[].status string Status is the status of the condition. Can be True, False, Unknown.
Path: status.conditions[].status
conditions[].type string Type is the type of the condition.
Path: status.conditions[].type
status.dnsIP string dns ip
Path: status.dnsIP
status.locked boolean lock status of the cluster
Path: status.locked
status.message string A human readable message indicating details about why the cluster is in this condition.
Path: status.message
status.nodeCIDRMaskSize integer (int32) node CIDR mask size
Path: status.nodeCIDRMaskSize
status.nodeCIDRMaskSizeIPv4 integer (int32) node CIDR mask size of the IPV4
Path: status.nodeCIDRMaskSizeIPv4
status.nodeCIDRMaskSizeIPv6 integer (int32) node CIDR mask size of the IPV6
Path: status.nodeCIDRMaskSizeIPv6
status.phase string cluster phase
Path: status.phase
status.reason string A brief CamelCase message indicating details about why the cluster is in this state.
Path: status.reason
status.registryIPs array registry ip
Path: status.registryIPs
status.registryIPs[] string
Path: status.registryIPs[]
status.resource object ClusterResource records the current available and maximum resource quota information for the cluster.
Path: status.resource
resource.allocatable object Allocatable represents the resources of a cluster that are available for scheduling. Defaults to Capacity.
Path: status.resource.allocatable
resource.allocated object Allocated represents the resources of a cluster that have been allocated
Path: status.resource.allocated
resource.capacity object Capacity represents the total resources of a cluster.
Path: status.resource.capacity
status.secondaryClusterCIDR string secondary ClusterCIDR, for dual stack IPV4/IPV6.
Path: status.secondaryClusterCIDR
status.secondaryServiceCIDR string secondary ServiceCIDR, for dual stack IPV4/IPV6.
Path: status.secondaryServiceCIDR
status.serviceCIDR string ServiceCIDR is used to set a separated CIDR for k8s service, it's exclusive with MaxClusterServiceNum.
Path: status.serviceCIDR
status.version string cluster version
Path: status.version

Other status codes

Status code: 401

Unauthorized