Linode Kubernetes Engine (LKE) v4.176.0
Kubernetes Clusters List
Lists current Kubernetes clusters available on your account.
Authorizations
personalAccessToken | |
oauth | lke:read_only |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/lke/clusters
linode-cli lke clusters-list
Response Samples
{
"data": [
{
"control_plane": {
"high_availability": true
},
"created": "2019-09-12T21:25:30Z",
"id": 1234,
"k8s_version": "1.27",
"label": "lkecluster12345",
"region": "us-central",
"tags": [
"ecomm",
"blogs"
],
"updated": "2019-09-13T21:24:16Z"
}
],
"page": 1,
"pages": 1,
"results": 1
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
data | array
of objects
| ||||||||||||||||||
page | integer The current page. | ||||||||||||||||||
pages | integer The total number of pages. | ||||||||||||||||||
results | integer The total number of results. |
errors | array
of objects
|
Kubernetes Cluster Create
Creates a Kubernetes cluster. The Kubernetes cluster will be created asynchronously. You can use the events system to determine when the Kubernetes cluster is ready to use. Please note that it often takes 2-5 minutes before the Kubernetes API server endpoint and the Kubeconfig file for the new cluster are ready.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Request Samples
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X POST -d '{
"label": "cluster12345",
"region": "us-central",
"k8s_version": "1.27",
"tags": ["ecomm", "blogs"],
"control_plane": {
"high_availability": true
},
"node_pools": [
{
"type": "g6-standard-4",
"count": 6,
"autoscaler": {
"enabled": true,
"max": 12,
"min": 3
}
},
{
"type": "g6-standard-8",
"count": 3
}
]
}' \
https://api.linode.com/v4/lke/clusters
linode-cli lke cluster-create \
--label cluster12345 \
--region us-central \
--k8s_version 1.27 \
--control_plane.high_availability true \
--node_pools.type g6-standard-4 --node_pools.count 6 \
--node_pools.type g6-standard-8 --node_pools.count 3 \
--node_pools.autoscaler.enabled true \
--node_pools.autoscaler.max 12 \
--node_pools.autoscaler.min 3 \
--tags ecomm
Request Body Schema
control_plane | object Defines settings for the Kubernetes Control Plane. Allows for the enabling of High Availability (HA) for Control Plane Components. Enabling High Availability for LKE is an irreversible change.
| ||||||||||||||||||||
k8s_version Required | string The desired Kubernetes version for this Kubernetes cluster in the format of <major>.<minor>, and the latest supported patch version will be deployed. | ||||||||||||||||||||
label Required | string
1..32
charactersThis Kubernetes cluster’s unique label for display purposes only. Labels have the following constraints:
| ||||||||||||||||||||
node_pools Required | array
of objects
| ||||||||||||||||||||
region Required | string This Kubernetes cluster’s location. | ||||||||||||||||||||
tags | array
of strings An array of tags applied to the Kubernetes cluster. Tags are for organizational purposes only. |
Response Samples
{
"control_plane": {
"high_availability": true
},
"created": "2019-09-12T21:25:30Z",
"id": 1234,
"k8s_version": "1.27",
"label": "lkecluster12345",
"region": "us-central",
"tags": [
"ecomm",
"blogs"
],
"updated": "2019-09-13T21:24:16Z"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
control_plane | object Defines settings for the Kubernetes Control Plane. Allows for the enabling of High Availability (HA) for Control Plane Components. Enabling High Avaialability for LKE is an irreversible change.
| ||
created | string<date-time> When this Kubernetes cluster was created. | ||
id | integer This Kubernetes cluster’s unique ID. | ||
k8s_version | string The desired Kubernetes version for this Kubernetes cluster in the format of <major>.<minor>, and the latest supported patch version will be deployed. | ||
label | string
1..32
charactersThis Kubernetes cluster’s unique label for display purposes only. Labels have the following constraints:
| ||
region | string This Kubernetes cluster’s location. | ||
tags | array
of strings An array of tags applied to the Kubernetes cluster. Tags are for organizational purposes only. | ||
updated | string<date-time> When this Kubernetes cluster was updated. |
errors | array
of objects
|
Kubernetes Cluster Delete
Deletes a Cluster you have permission to read_write
.
Deleting a Cluster is a destructive action and cannot be undone.
Deleting a Cluster:
- Deletes all Linodes in all pools within this Kubernetes cluster
- Deletes all supporting Kubernetes services for this Kubernetes cluster (API server, etcd, etc)
- Deletes all NodeBalancers created by this Kubernetes cluster
- Does not delete any of the volumes created by this Kubernetes cluster
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
-X DELETE \
https://api.linode.com/v4/lke/clusters/12345
linode-cli lke cluster-delete 12345
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Kubernetes Cluster View
Get a specific Cluster by ID.
Authorizations
personalAccessToken | |
oauth | lke:read_only |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/lke/clusters/12345
linode-cli lke cluster-view 12345
Response Samples
{
"control_plane": {
"high_availability": true
},
"created": "2019-09-12T21:25:30Z",
"id": 1234,
"k8s_version": "1.27",
"label": "lkecluster12345",
"region": "us-central",
"tags": [
"ecomm",
"blogs"
],
"updated": "2019-09-13T21:24:16Z"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
control_plane | object Defines settings for the Kubernetes Control Plane. Allows for the enabling of High Availability (HA) for Control Plane Components. Enabling High Avaialability for LKE is an irreversible change.
| ||
created | string<date-time> When this Kubernetes cluster was created. | ||
id | integer This Kubernetes cluster’s unique ID. | ||
k8s_version | string The desired Kubernetes version for this Kubernetes cluster in the format of <major>.<minor>, and the latest supported patch version will be deployed. | ||
label | string
1..32
charactersThis Kubernetes cluster’s unique label for display purposes only. Labels have the following constraints:
| ||
region | string This Kubernetes cluster’s location. | ||
tags | array
of strings An array of tags applied to the Kubernetes cluster. Tags are for organizational purposes only. | ||
updated | string<date-time> When this Kubernetes cluster was updated. |
errors | array
of objects
|
Kubernetes Cluster Update
Updates a Kubernetes cluster.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
Request Samples
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X PUT -d '{
"label": "lkecluster54321",
"tags" : ["ecomm", "blog", "prod", "monitoring"],
"control_plane": {
"high_availability": true
},
"k8s_version": "1.27"
}' \
https://api.linode.com/v4/lke/clusters/12345
linode-cli lke cluster-update 12345 \
--label lkecluster54321 \
--control_plane.high_availability true \
--k8s_version 1.27 \
--tags ecomm \
--tags blog \
--tags prod \
--tags monitoring
Request Body Schema
control_plane | object Defines settings for the Kubernetes Control Plane. Allows for the enabling of High Availability (HA) for Control Plane Components. Enabling High Availability for LKE is an irreversible change. When upgrading pre-existing LKE clusters to use the HA Control Plane, the following changes will additionally occur:
| ||
k8s_version | string The desired Kubernetes version for this Kubernetes cluster in the format of <major>.<minor>. New and recycled Nodes in this cluster will be installed with the latest available patch for the Cluster’s Kubernetes version. When upgrading the Kubernetes version, only the next latest minor version following the current version can be deployed. For example, a cluster with Kubernetes version 1.19 can be upgraded to version 1.20, but not directly to 1.21. The Kubernetes version of a cluster can not be downgraded. | ||
label | string
1..32
charactersThis Kubernetes cluster’s unique label for display purposes only. Labels have the following constraints:
| ||
tags | array
of strings An array of tags applied to the Kubernetes cluster. Tags are for organizational purposes only. To delete a tag, exclude it from your |
Response Samples
{
"created": "2019-09-12T21:25:30Z",
"k8s_version": "1.27",
"label": "lkecluster12345",
"region": "us-central",
"tags": [
"prod",
"monitoring",
"ecomm",
"blog"
],
"updated": "2019-09-13T21:24:16Z"
}
Responses
created | string<date-time> When this Kubernetes cluster was created. |
k8s_version | string The desired Kubernetes version for this Kubernetes cluster in the format of <major>.<minor>, and the latest supported patch version will be deployed. |
label | string
1..32
charactersThis Kubernetes cluster’s unique label for display purposes only. Labels have the following constraints:
|
region | string This Kubernetes cluster’s location. |
tags | array
of strings An array of tags applied to the Kubernetes cluster. Tags are for organizational purposes only. To delete a tag, exclude it from your |
updated | string<date-time> When this Kubernetes cluster was updated. |
Kubernetes API Endpoints List
List the Kubernetes API server endpoints for this cluster. Please note that it often takes 2-5 minutes before the endpoint is ready after first creating a new cluster.
Authorizations
personalAccessToken | |
oauth | lke:read_only |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/lke/clusters/12345/api-endpoints
linode-cli lke api-endpoints-list 12345
Response Samples
{
"data": [
{
"endpoint": "https://192.0.2.1:6443"
}
],
"page": 1,
"pages": 1,
"results": 1
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
data | array
of objects
| ||
page | integer The current page. | ||
pages | integer The total number of pages. | ||
results | integer The total number of results. |
errors | array
of objects
|
Kubernetes Cluster Dashboard URL View
Get a Kubernetes Dashboard access URL for this Cluster, which enables performance of administrative tasks through a web interface.
Dashboards are installed for Clusters by default.
To access the Cluster Dashboard login prompt, enter the URL in a web browser. Select either Token or Kubeconfig authentication, then select Sign in.
For additional guidance on using the Cluster Dashboard, see the Navigating the Cluster Dashboard section of our guide on Using the Kubernetes Dashboard on LKE.
Authorizations
personalAccessToken | |
oauth | lke:read_only |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/lke/clusters/12345/dashboard
linode-cli lke cluster-dashboard-url 12345
Response Samples
{
"url": "https://example.dashboard.linodelke.net"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
url | string The Cluster Dashboard access URL. |
errors | array
of objects
|
Kubeconfig Delete
Delete and regenerate the Kubeconfig file for a Cluster.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
-X DELETE \
https://api.linode.com/v4/lke/clusters/12345/kubeconfig
linode-cli lke kubeconfig-delete 12345
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Kubeconfig View
Get the Kubeconfig file for a Cluster. Please note that it often takes 2-5 minutes before the Kubeconfig file is ready after first creating a new cluster.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/lke/clusters/12345/kubeconfig
linode-cli lke kubeconfig-view 12345
Response Samples
{
"kubeconfig": null
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
kubeconfig | string The Base64-encoded Kubeconfig file for this Cluster. |
errors | array
of objects
|
Node Delete
Deletes a specific Node from a Node Pool.
Deleting a Node is a destructive action and cannot be undone.
Deleting a Node will reduce the size of the Node Pool it belongs to.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster containing the Node. |
nodeId | string RequiredID of the Node to look up. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
-X DELETE \
https://api.linode.com/v4/lke/clusters/12345/nodes/12345-6aa78910bc
linode-cli lke node-delete 12345 12345-6aa78910bc
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Node View
Returns the values for a specified node object.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster containing the Node. |
nodeId | string RequiredID of the Node to look up. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/lke/clusters/12345/nodes/12345-6aa78910bc
linode-cli lke node-view 123456 12345-6aa78910bc
Response Samples
{
"id": "12345-6aa78910bc",
"instance_id": 123456,
"status": "ready"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
id | string The Node’s ID. |
instance_id | integer The Linode’s ID. If no Linode is currently provisioned for this Node, this is |
status | string Enum:
ready
not_ready The creation status of this Node. This status is distinct from this Node’s readiness as a Kubernetes Node Object as determined by the command
|
errors | array
of objects
|
Node Recycle
Recycles an individual Node in the designated Kubernetes Cluster. The Node will be deleted and replaced with a new Linode, which may take a few minutes. Replacement Nodes are installed with the latest available patch for the Cluster’s Kubernetes Version.
Any local storage on deleted Linodes (such as “hostPath” and “emptyDir” volumes, or “local” PersistentVolumes) will be erased.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster containing the Node. |
nodeId | string RequiredID of the Node to be recycled. |
Request Samples
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X POST \
https://api.linode.com/v4/lke/clusters/12345/nodes/12345-6aa78910bc/recycle
linode-cli lke node-recycle 12345 12345-6aa78910bc
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Node Pools List
Returns all active Node Pools on a Kubernetes cluster.
Authorizations
personalAccessToken | |
oauth | lke:read_only |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/lke/clusters/12345/pools
linode-cli lke pools-list 12345
Response Samples
{
"data": [
{
"autoscaler": {
"enabled": true,
"max": 12,
"min": 3
},
"count": 6,
"disks": [
{
"size": 1024,
"type": "ext-4"
}
],
"id": 456,
"nodes": [
{
"id": "123456",
"instance_id": 123458,
"status": "ready"
}
],
"tags": [
"example tag",
"another example"
],
"type": "g6-standard-4"
}
],
"page": 1,
"pages": 1,
"results": 1
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
data | array
of objects
| ||||||||||||||||||||||||||||||
page | integer The current page. | ||||||||||||||||||||||||||||||
pages | integer The total number of pages. | ||||||||||||||||||||||||||||||
results | integer The total number of results. |
errors | array
of objects
|
Node Pool Create
Creates a new Node Pool for the designated Kubernetes cluster.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
Request Samples
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X POST -d '{
"type": "g6-standard-4",
"count": 6,
"tags": ["example-tag"],
"autoscaler": {
"enabled": true,
"max": 12,
"min": 3
}
}' \
https://api.linode.com/v4/lke/clusters/12345/pools
linode-cli lke pool-create 12345 \
--type g6-standard-4 \
--count 6 \
--tags example-tag \
--autoscaler.enabled true \
--autoscaler.max 12 \
--autoscaler.min 3
Request Body Schema
autoscaler | object When enabled, the number of nodes autoscales within the defined minimum and maximum values. When making a request,
| ||||||
count Required | integer
1..100The number of nodes in the Node Pool. | ||||||
disks | array
of objects Note: This field should be omitted except for special use cases. The disks specified here are partitions in addition to the primary partition and reduce the size of the primary partition, which can lead to stability problems for the Node. This Node Pool’s custom disk layout. Each item in this array will create a new disk partition for each node in this Node Pool.
| ||||||
tags | array
of strings An array of tags applied to this object. Tags are for organizational purposes only. | ||||||
type Required | string The Linode Type for all of the nodes in the Node Pool. |
Response Samples
{
"autoscaler": {
"enabled": true,
"max": 12,
"min": 3
},
"count": 6,
"disks": [
{
"size": 1024,
"type": "ext-4"
}
],
"id": 456,
"nodes": [
{
"id": "123456",
"instance_id": 123458,
"status": "ready"
}
],
"tags": [
"example tag",
"another example"
],
"type": "g6-standard-4"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
autoscaler | object When enabled, the number of nodes autoscales within the defined minimum and maximum values.
| ||||||
count | integer
1..100The number of nodes in the Node Pool. | ||||||
disks | array
of objects This Node Pool’s custom disk layout.
| ||||||
id | integer This Node Pool’s unique ID. | ||||||
nodes | array
of objects Status information for the Nodes which are members of this Node Pool. If a Linode has not been provisioned for a given Node slot, the instance_id will be returned as null.
| ||||||
tags | array
of strings An array of tags applied to this object. Tags are for organizational purposes only. | ||||||
type | string The Linode Type for all of the nodes in the Node Pool. |
errors | array
of objects
|
Node Pool Delete
Delete a specific Node Pool from a Kubernetes cluster.
Deleting a Node Pool is a destructive action and cannot be undone.
Deleting a Node Pool will delete all Linodes within that Pool.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
poolId | integer RequiredID of the Pool to look up |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
-X DELETE \
https://api.linode.com/v4/lke/clusters/12345/pools/456
linode-cli lke pool-delete 12345 456
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Node Pool View
Get a specific Node Pool by ID.
Authorizations
personalAccessToken | |
oauth | lke:read_only |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
poolId | integer RequiredID of the Pool to look up |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/lke/clusters/12345/pools/456
linode-cli lke pool-view 12345 456
Response Samples
{
"autoscaler": {
"enabled": true,
"max": 12,
"min": 3
},
"count": 6,
"disks": [
{
"size": 1024,
"type": "ext-4"
}
],
"id": 456,
"nodes": [
{
"id": "123456",
"instance_id": 123458,
"status": "ready"
}
],
"tags": [
"example tag",
"another example"
],
"type": "g6-standard-4"
}
Responses
autoscaler | object When enabled, the number of nodes autoscales within the defined minimum and maximum values.
| ||||||
count | integer
1..100The number of nodes in the Node Pool. | ||||||
disks | array
of objects This Node Pool’s custom disk layout.
| ||||||
id | integer This Node Pool’s unique ID. | ||||||
nodes | array
of objects Status information for the Nodes which are members of this Node Pool. If a Linode has not been provisioned for a given Node slot, the instance_id will be returned as null.
| ||||||
tags | array
of strings An array of tags applied to this object. Tags are for organizational purposes only. | ||||||
type | string The Linode Type for all of the nodes in the Node Pool. |
Node Pool Update
Updates a Node Pool’s count and autoscaler configuration.
Linodes will be created or deleted to match changes to the Node Pool’s count.
Any local storage on deleted Linodes (such as “hostPath” and “emptyDir” volumes, or “local” PersistentVolumes) will be erased.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster to look up. |
poolId | integer RequiredID of the Pool to look up |
Request Samples
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X PUT -d '{
"count": 6,
"autoscaler": {
"enabled": true,
"max": 12,
"min": 3
}' \
https://api.linode.com/v4/lke/clusters/12345/pools/456
linode-cli lke pool-update 12345 456 \
--count 6 \
--autoscaler.enabled true \
--autoscaler.max 12 \
--autoscaler.min 3
Request Body Schema
autoscaler | object When enabled, the number of nodes autoscales within the defined minimum and maximum values. When making a request,
| ||||||
count | integer
1..100The number of nodes in the Node Pool. |
Response Samples
{
"autoscaler": {
"enabled": true,
"max": 12,
"min": 3
},
"count": 6,
"disks": [
{
"size": 1024,
"type": "ext-4"
}
],
"id": 456,
"nodes": [
{
"id": "123456",
"instance_id": 123458,
"status": "ready"
}
],
"tags": [
"example tag",
"another example"
],
"type": "g6-standard-4"
}
Responses
autoscaler | object When enabled, the number of nodes autoscales within the defined minimum and maximum values.
| ||||||
count | integer
1..100The number of nodes in the Node Pool. | ||||||
disks | array
of objects This Node Pool’s custom disk layout.
| ||||||
id | integer This Node Pool’s unique ID. | ||||||
nodes | array
of objects Status information for the Nodes which are members of this Node Pool. If a Linode has not been provisioned for a given Node slot, the instance_id will be returned as null.
| ||||||
tags | array
of strings An array of tags applied to this object. Tags are for organizational purposes only. | ||||||
type | string The Linode Type for all of the nodes in the Node Pool. |
Node Pool Recycle
Recycles a Node Pool for the designated Kubernetes Cluster. All Linodes within the Node Pool will be deleted and replaced with new Linodes on a rolling basis, which may take several minutes. Replacement Nodes are installed with the latest available patch for the Cluster’s Kubernetes Version.
Any local storage on deleted Linodes (such as “hostPath” and “emptyDir” volumes, or “local” PersistentVolumes) will be erased.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster this Node Pool is attached to. |
poolId | integer RequiredID of the Node Pool to be recycled. |
Request Samples
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X POST \
https://api.linode.com/v4/lke/clusters/12345/pools/456/recycle
linode-cli lke pool-recycle 12345 456
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Cluster Nodes Recycle
Recycles all nodes in all pools of a designated Kubernetes Cluster. All Linodes within the Cluster will be deleted and replaced with new Linodes on a rolling basis, which may take several minutes. Replacement Nodes are installed with the latest available patch version for the Cluster’s current Kubernetes minor release.
Any local storage on deleted Linodes (such as “hostPath” and “emptyDir” volumes, or “local” PersistentVolumes) will be erased.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the Kubernetes cluster which contains nodes to be recycled. |
Request Samples
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X POST \
https://api.linode.com/v4/lke/clusters/12345/recycle
linode-cli lke cluster-nodes-recycle 12345
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Kubernetes Cluster Regenerate
Regenerate the Kubeconfig file and/or the service account token for a Cluster.
This is a helper command that allows performing both the Kubeconfig Delete and the Service Token Delete actions with a single request.
When using this command, at least one of kubeconfig
or servicetoken
is required.
Note: When regenerating a service account token, the Cluster’s control plane components and Linode CSI drivers are also restarted and configured with the new token. High Availability Clusters should not experience any disruption, while standard Clusters may experience brief control plane downtime while components are restarted.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the target Kubernetes cluster. |
Request Samples
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X POST -d '{
"kubeconfig": true,
"servicetoken": true
}' \
https://api.linode.com/v4/lke/clusters/12345/regenerate
linode-cli lke regenerate 12345 \
--kubeconfig true \
--servicetoken true
Request Body Schema
kubeconfig | boolean Default:
false Whether to delete and regenerate the Kubeconfig file for this Cluster. |
servicetoken | boolean Default:
false Whether to delete and regenerate the service access token for this Cluster. |
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Service Token Delete
Delete and regenerate the service account token for a Cluster.
Note: When regenerating a service account token, the Cluster’s control plane components and Linode CSI drivers are also restarted and configured with the new token. High Availability Clusters should not experience any disruption, while standard Clusters may experience brief control plane downtime while components are restarted.
Authorizations
personalAccessToken | |
oauth | lke:read_write |
Path Parameters
clusterId | integer RequiredID of the target Kubernetes cluster. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
-X DELETE \
https://api.linode.com/v4/lke/clusters/12345/servicetoken
linode-cli lke service-token-delete 12345
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Kubernetes Versions List
List the Kubernetes versions available for deployment to a Kubernetes cluster.
Authorizations
personalAccessToken | |
oauth | lke:read_only |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/lke/versions
linode-cli lke versions-list
Response Samples
{
"data": [
{
"id": "1.27"
}
],
"page": 1,
"pages": 1,
"results": 1
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
data | array
of objects
| ||
page | integer The current page. | ||
pages | integer The total number of pages. | ||
results | integer The total number of results. |
errors | array
of objects
|
Kubernetes Version View
View a Kubernetes version available for deployment to a Kubernetes cluster.
Authorizations
personalAccessToken | |
oauth | lke:read_only |
Path Parameters
version | string RequiredThe LKE version to view. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/lke/versions/1.27
linode-cli lke version-view 1.27
Response Samples
{
"id": "1.27"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
id | string A Kubernetes version number available for deployment to a Kubernetes cluster in the format of <major>.<minor>, and the latest supported patch version. |
errors | array
of objects
|