Linode Kubernetes Engine (LKE)

Node Pools List

get
https://api.linode.com/v4/lke/clusters/{clusterId}/pools

Returns all active Node Pools on a Kubernetes cluster.

Path Parameters

clusterId
Required
integer

ID of the Kubernetes cluster to look up.

Request Samples

curl -H "Authorization: Bearer $TOKEN" \
      https://api.linode.com/v4/lke/clusters/12345/pools

Response Samples

{
  "data": [
    {
      "id": "",
      "type": "g6-standard-4",
      "tags": [
        "example tag",
        "another example"
      ],
      "autoscaler": {
        "enabled": true,
        "max": 12,
        "min": 3
      },
      "count": 6,
      "disks": [],
      "nodes": []
    }
  ],
  "page": 1,
  "pages": 1,
  "results": 1
}

Responses

200: Returns an array of all Pools in this Kubernetes cluster.

data
array of objects
id
Filterable
integer

This Node Pool's unique ID.

type
string

The Linode Type for all of the nodes in the Node Pool.

tags
Filterable
array

An array of tags applied to this object. Tags are for organizational purposes only.

autoscaler
object

When enabled, the number of nodes autoscales within the defined minimum and maximum values.

enabled
boolean

Whether autoscaling is enabled for this Node Pool. Defaults to false.

max
integer

The maximum number of nodes to autoscale to. Defaults to the Node Pool's count.

min
integer

The minimum number of nodes to autoscale to. Defaults to the Node Pool's count.

count
integer

The number of nodes in the Node Pool.

disks
array

This Node Pool's custom disk layout.

nodes
array

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.

page
integer

The current page.

pages
integer

The total number of pages.

results
integer

The total number of results.

default: Error

errors
array of objects
reason
string

What happened to cause this error. In most cases, this can be fixed immediately by changing the data you sent in the request, but in some cases you will be instructed to open a Support Ticket or perform some other action before you can complete the request successfully.

field
string

The field in the request that caused this error. This may be a path, separated by periods in the case of nested fields. In some cases this may come back as "null" if the error is not specific to any single element of the request.

Node Pool Create

post
https://api.linode.com/v4/lke/clusters/{clusterId}/pools

Creates a new Node Pool for the designated Kubernetes cluster.

Path Parameters

clusterId
Required
integer

ID of the Kubernetes cluster to look up.

Request Body Schema

count
Required
integer

The number of nodes in the Node Pool.

type
Required
string

The Linode Type for all of the nodes in the Node Pool.

autoscaler
object

When enabled, the number of nodes autoscales within the defined minimum and maximum values.

When making a request, max and min require each other.

enabled
boolean

Whether autoscaling is enabled for this Node Pool. Defaults to false.

max
integer

The maximum number of nodes to autoscale to. Defaults to the Node Pool's count. Defaults to the value provided by the count field.

min
integer

The minimum number of nodes to autoscale to. Defaults to the Node Pool's count.

disks
array

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.

  • The custom disk layout is applied to each node in this Node Pool.
  • The maximum number of custom disk partitions that can be configured is 7.
  • Once the requested disk paritions are allocated, the remaining disk space is allocated to the node's boot disk.
  • A Node Pool's custom disk layout is immutable over the lifetime of the Node Pool.
tags
Filterable
array

An array of tags applied to this object. Tags are for organizational purposes only.

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

Response Samples

{
  "id": 1234,
  "type": "g6-standard-4",
  "tags": [],
  "disks": [
    {
      "size": 1024,
      "type": "ext-4"
    }
  ],
  "autoscaler": {
    "enabled": true,
    "max": 12,
    "min": 3
  },
  "count": 6,
  "nodes": [
    {
      "id": "123456",
      "instance_id": 123458,
      "status": "ready"
    }
  ]
}

Responses

200: Node Pool has been created.

id
Filterable
integer

This Node Pool's unique ID.

type
string

The Linode Type for all of the nodes in the Node Pool.

tags
Filterable
array of objects

An array of tags applied to this object. Tags are for organizational purposes only.

disks
array of objects

This Node Pool's custom disk layout.

size
integer

The size of this custom disk partition in MB.

  • The size of this disk partition must not exceed the capacity of the node's plan type.
type
string
Enum: "raw""ext4"

This custom disk partition's filesystem type.

autoscaler
object

When enabled, the number of nodes autoscales within the defined minimum and maximum values.

enabled
boolean

Whether autoscaling is enabled for this Node Pool. Defaults to false.

max
integer

The maximum number of nodes to autoscale to. Defaults to the Node Pool's count.

min
integer

The minimum number of nodes to autoscale to. Defaults to the Node Pool's count.

count
integer

The number of nodes in the Node Pool.

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.

id
string

The Node's ID.

instance_id
string

The Linode's ID. When no Linode is currently provisioned for this Node, this will be null.

status
string
Enum: "ready""not_ready"

The Node's status as it pertains to being a Kubernetes node.

default: Error

errors
array of objects
reason
string

What happened to cause this error. In most cases, this can be fixed immediately by changing the data you sent in the request, but in some cases you will be instructed to open a Support Ticket or perform some other action before you can complete the request successfully.

field
string

The field in the request that caused this error. This may be a path, separated by periods in the case of nested fields. In some cases this may come back as "null" if the error is not specific to any single element of the request.