Scaleway logo
Kubernetes API

A pool is a set of identical nodes A pool has a name, a size (its desired number of nodes), node number limits (min, max), and a Scaleway Instance type. Changing those limits increases/decreases the size of a pool. As a result and depending on its load, the pool will grow or shrink within those limits when autoscaling is enabled.


List Pools in a Cluster

GET
https://api.scaleway.com
/k8s/v1/regions/{region}/clusters/{cluster_id}/pools

List all the existing pools for a specific Kubernetes cluster.

List Pools in a Cluster › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
it-mil
cluster_id
​string · required

ID of the cluster whose pools will be listed.

List Pools in a Cluster › query Parameters

order_by
​scaleway.k8s.v1.ListPoolsRequest.OrderBy · enum

Sort order of returned pools.

Enum values:
created_at_asc
created_at_desc
updated_at_asc
updated_at_desc
name_asc
name_desc
status_asc
status_desc
Default: created_at_asc
page
​integer · int32

Page number for the returned pools.

page_size
​integer · uint32

Maximum number of pools per page.

name
​string

Name to filter on, only pools containing this substring in their name will be returned.

status
​scaleway.k8s.v1.Pool.Status · enum

Status to filter on, only pools with this status will be returned.

Enum values:
unknown
ready
deleting
deleted
scaling
warning
locked
upgrading
Default: unknown

List Pools in a Cluster › Responses

200
total_count
​integer · uint64

Total number of pools that exists for the cluster.

Paginated returned pools.


Create a new Pool in a Cluster

POST
https://api.scaleway.com
/k8s/v1/regions/{region}/clusters/{cluster_id}/pools

Create a new pool in a specific Kubernetes cluster.

Create a new Pool in a Cluster › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
it-mil
cluster_id
​string · required

Cluster ID to which the pool will be attached.

Create a new Pool in a Cluster › Request Body

name
​string · required

Pool name.

node_type
​string · required

Node type is the type of Scaleway Instance wanted for the pool. Nodes with insufficient memory are not eligible (DEV1-S, PLAY2-PICO, STARDUST). 'external' is a special node type used to provision instances from other cloud providers in a Kosmos Cluster.

size
​integer · uint32 · required

Size (number of nodes) of the pool.

placement_group_id
​string | null

Placement group ID in which all the nodes of the pool will be created, placement groups are limited to 20 instances.

autoscaling
​boolean

Defines whether the autoscaling feature is enabled for the pool.

min_size
​integer | null · uint32

Defines the minimum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

max_size
​integer | null · uint32

Defines the maximum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

container_runtime
​scaleway.k8s.v1.Runtime · enum

Customization of the container runtime is available for each pool.

Enum values:
unknown_runtime
containerd
Default: unknown_runtime
autohealing
​boolean

Defines whether the autohealing feature is enabled for the pool.

tags
​string[]

Tags associated with the pool, see managing tagsOpen in new context.

​object

Kubelet arguments to be used by this pool. Note that this feature is experimental.

Defines how node provisioning should behave during pool version upgrade.

zone
​string

Zone in which the pool's nodes will be spawned.

root_volume_type
​scaleway.k8s.v1.Pool.VolumeType · enum

Defines the system volume disk type. Several types of volume (volume_type) are provided:.

  • l_ssd is a local block storage which means your system is stored locally on your node's hypervisor. This type is not available for all node types
  • sbs_5k is a remote block storage which means your system is stored on a centralized and resilient cluster with 5k IOPS limits
  • sbs_15k is a faster remote block storage which means your system is stored on a centralized and resilient cluster with 15k IOPS limits
  • b_ssd is the legacy remote block storage which means your system is stored on a centralized and resilient cluster. Not available for new pools, use sbs_5k or sbs_15k instead.
Enum values:
default_volume_type
l_ssd
b_ssd
sbs_5k
sbs_15k
Default: default_volume_type
root_volume_size
​integer | null · uint64

System volume disk size. (in bytes)

public_ip_disabled
​boolean

Defines if the public IP should be removed from Nodes. To use this feature, your Cluster must have an attached Private Network set up with a Public Gateway.

security_group_id
​string | null

Security group ID in which all the nodes of the pool will be created. If unset, the pool will use default Kapsule security group in current zone.

​object

Kubernetes labels applied and reconciled on the nodes.

Kubernetes taints applied and reconciled on the nodes.

​scaleway.k8s.v1.CoreV1Taint[]

Kubernetes taints applied at node creation but not reconciled afterwards.

​object

User data applied and reconciled with the pool.

max_termination_grace_period
​string | null

Maximum amount of time before the API forces the drain and deletion of a deleting node. It overrides pods PodDisruptionBudget and terminationGracePeriodSeconds. Defaults to 15 minutes, up to 1 hour. (in seconds)

Create a new Pool in a Cluster › Responses

200
node_type
​string · required

Node type is the type of Scaleway Instance wanted for the pool. Nodes with insufficient memory are not eligible (DEV1-S, PLAY2-PICO, STARDUST). 'external' is a special node type used to provision instances from other cloud providers in a Kosmos Cluster.

size
​integer · uint32 · required

Size (number of nodes) of the pool.

id
​string

Pool ID. (UUID format)

cluster_id
​string

Cluster ID of the pool. (UUID format)

created_at
​string | null · date-time

Date on which the pool was created. (RFC 3339 format)

updated_at
​string | null · date-time

Date on which the pool was last updated. (RFC 3339 format)

name
​string

Pool name.

status
​scaleway.k8s.v1.Pool.Status · enum

Pool status.

Enum values:
unknown
ready
deleting
deleted
scaling
warning
locked
upgrading
Default: unknown
version
​string

Pool version.

autoscaling
​boolean

Defines whether the autoscaling feature is enabled for the pool.

min_size
​integer · uint32

Defines the minimum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

max_size
​integer · uint32

Defines the maximum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

container_runtime
​scaleway.k8s.v1.Runtime · enum

Customization of the container runtime is available for each pool.

Enum values:
unknown_runtime
containerd
Default: unknown_runtime
autohealing
​boolean

Defines whether the autohealing feature is enabled for the pool.

tags
​string[]

Tags associated with the pool, see managing tagsOpen in new context.

placement_group_id
​string | null

Placement group ID in which all the nodes of the pool will be created, placement groups are limited to 20 instances. (UUID format)

​object

Kubelet arguments to be used by this pool. Note that this feature is experimental.

Defines how node provisioning should behave during pool version upgrade.

zone
​string

Zone in which the pool's nodes will be spawned.

root_volume_type
​scaleway.k8s.v1.Pool.VolumeType · enum

Defines the system volume disk type. Several types of volume (volume_type) are provided:.

  • l_ssd is a local block storage which means your system is stored locally on your node's hypervisor. This type is not available for all node types
  • sbs_5k is a remote block storage which means your system is stored on a centralized and resilient cluster with 5k IOPS limits
  • sbs_15k is a faster remote block storage which means your system is stored on a centralized and resilient cluster with 15k IOPS limits
  • b_ssd is the legacy remote block storage which means your system is stored on a centralized and resilient cluster. Not available for new pools, use sbs_5k or sbs_15k instead.
Enum values:
default_volume_type
l_ssd
b_ssd
sbs_5k
sbs_15k
Default: default_volume_type
root_volume_size
​integer | null · uint64

System volume disk size. (in bytes)

public_ip_disabled
​boolean

Defines if the public IP should be removed from Nodes. To use this feature, your Cluster must have an attached Private Network set up with a Public Gateway.

security_group_id
​string

Security group ID in which all the nodes of the pool will be created. If unset, the pool will use default Kapsule security group in current zone. (UUID format)

​object

Kubernetes labels applied and reconciled on the nodes.

Kubernetes taints applied and reconciled on the nodes.

​scaleway.k8s.v1.CoreV1Taint[]

Kubernetes taints applied at node creation but not reconciled afterwards.

error_message
​string | null

Details of the error, if any occurred when managing the pool.

max_termination_grace_period
​string | null

Maximum amount of time before the API forces the drain and deletion of a deleting node. It overrides pods PodDisruptionBudget and terminationGracePeriodSeconds. Defaults to 15 minutes, up to 1 hour. (in seconds)

srn
​string

The SRN of the pool.

region
​string

Cluster region of the pool.


Get a Pool in a Cluster

GET
https://api.scaleway.com
/k8s/v1/regions/{region}/pools/{pool_id}

Retrieve details about a specific pool in a Kubernetes cluster.

Get a Pool in a Cluster › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
it-mil
pool_id
​string · required

ID of the requested pool.

Get a Pool in a Cluster › Responses

200
node_type
​string · required

Node type is the type of Scaleway Instance wanted for the pool. Nodes with insufficient memory are not eligible (DEV1-S, PLAY2-PICO, STARDUST). 'external' is a special node type used to provision instances from other cloud providers in a Kosmos Cluster.

size
​integer · uint32 · required

Size (number of nodes) of the pool.

id
​string

Pool ID. (UUID format)

cluster_id
​string

Cluster ID of the pool. (UUID format)

created_at
​string | null · date-time

Date on which the pool was created. (RFC 3339 format)

updated_at
​string | null · date-time

Date on which the pool was last updated. (RFC 3339 format)

name
​string

Pool name.

status
​scaleway.k8s.v1.Pool.Status · enum

Pool status.

Enum values:
unknown
ready
deleting
deleted
scaling
warning
locked
upgrading
Default: unknown
version
​string

Pool version.

autoscaling
​boolean

Defines whether the autoscaling feature is enabled for the pool.

min_size
​integer · uint32

Defines the minimum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

max_size
​integer · uint32

Defines the maximum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

container_runtime
​scaleway.k8s.v1.Runtime · enum

Customization of the container runtime is available for each pool.

Enum values:
unknown_runtime
containerd
Default: unknown_runtime
autohealing
​boolean

Defines whether the autohealing feature is enabled for the pool.

tags
​string[]

Tags associated with the pool, see managing tagsOpen in new context.

placement_group_id
​string | null

Placement group ID in which all the nodes of the pool will be created, placement groups are limited to 20 instances. (UUID format)

​object

Kubelet arguments to be used by this pool. Note that this feature is experimental.

Defines how node provisioning should behave during pool version upgrade.

zone
​string

Zone in which the pool's nodes will be spawned.

root_volume_type
​scaleway.k8s.v1.Pool.VolumeType · enum

Defines the system volume disk type. Several types of volume (volume_type) are provided:.

  • l_ssd is a local block storage which means your system is stored locally on your node's hypervisor. This type is not available for all node types
  • sbs_5k is a remote block storage which means your system is stored on a centralized and resilient cluster with 5k IOPS limits
  • sbs_15k is a faster remote block storage which means your system is stored on a centralized and resilient cluster with 15k IOPS limits
  • b_ssd is the legacy remote block storage which means your system is stored on a centralized and resilient cluster. Not available for new pools, use sbs_5k or sbs_15k instead.
Enum values:
default_volume_type
l_ssd
b_ssd
sbs_5k
sbs_15k
Default: default_volume_type
root_volume_size
​integer | null · uint64

System volume disk size. (in bytes)

public_ip_disabled
​boolean

Defines if the public IP should be removed from Nodes. To use this feature, your Cluster must have an attached Private Network set up with a Public Gateway.

security_group_id
​string

Security group ID in which all the nodes of the pool will be created. If unset, the pool will use default Kapsule security group in current zone. (UUID format)

​object

Kubernetes labels applied and reconciled on the nodes.

Kubernetes taints applied and reconciled on the nodes.

​scaleway.k8s.v1.CoreV1Taint[]

Kubernetes taints applied at node creation but not reconciled afterwards.

error_message
​string | null

Details of the error, if any occurred when managing the pool.

max_termination_grace_period
​string | null

Maximum amount of time before the API forces the drain and deletion of a deleting node. It overrides pods PodDisruptionBudget and terminationGracePeriodSeconds. Defaults to 15 minutes, up to 1 hour. (in seconds)

srn
​string

The SRN of the pool.

region
​string

Cluster region of the pool.


Delete a Pool in a Cluster

DELETE
https://api.scaleway.com
/k8s/v1/regions/{region}/pools/{pool_id}

Delete a specific pool from a cluster. Note that all the pool's nodes will also be deleted.

Delete a Pool in a Cluster › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
it-mil
pool_id
​string · required

ID of the pool to delete.

Delete a Pool in a Cluster › Responses

200
node_type
​string · required

Node type is the type of Scaleway Instance wanted for the pool. Nodes with insufficient memory are not eligible (DEV1-S, PLAY2-PICO, STARDUST). 'external' is a special node type used to provision instances from other cloud providers in a Kosmos Cluster.

size
​integer · uint32 · required

Size (number of nodes) of the pool.

id
​string

Pool ID. (UUID format)

cluster_id
​string

Cluster ID of the pool. (UUID format)

created_at
​string | null · date-time

Date on which the pool was created. (RFC 3339 format)

updated_at
​string | null · date-time

Date on which the pool was last updated. (RFC 3339 format)

name
​string

Pool name.

status
​scaleway.k8s.v1.Pool.Status · enum

Pool status.

Enum values:
unknown
ready
deleting
deleted
scaling
warning
locked
upgrading
Default: unknown
version
​string

Pool version.

autoscaling
​boolean

Defines whether the autoscaling feature is enabled for the pool.

min_size
​integer · uint32

Defines the minimum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

max_size
​integer · uint32

Defines the maximum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

container_runtime
​scaleway.k8s.v1.Runtime · enum

Customization of the container runtime is available for each pool.

Enum values:
unknown_runtime
containerd
Default: unknown_runtime
autohealing
​boolean

Defines whether the autohealing feature is enabled for the pool.

tags
​string[]

Tags associated with the pool, see managing tagsOpen in new context.

placement_group_id
​string | null

Placement group ID in which all the nodes of the pool will be created, placement groups are limited to 20 instances. (UUID format)

​object

Kubelet arguments to be used by this pool. Note that this feature is experimental.

Defines how node provisioning should behave during pool version upgrade.

zone
​string

Zone in which the pool's nodes will be spawned.

root_volume_type
​scaleway.k8s.v1.Pool.VolumeType · enum

Defines the system volume disk type. Several types of volume (volume_type) are provided:.

  • l_ssd is a local block storage which means your system is stored locally on your node's hypervisor. This type is not available for all node types
  • sbs_5k is a remote block storage which means your system is stored on a centralized and resilient cluster with 5k IOPS limits
  • sbs_15k is a faster remote block storage which means your system is stored on a centralized and resilient cluster with 15k IOPS limits
  • b_ssd is the legacy remote block storage which means your system is stored on a centralized and resilient cluster. Not available for new pools, use sbs_5k or sbs_15k instead.
Enum values:
default_volume_type
l_ssd
b_ssd
sbs_5k
sbs_15k
Default: default_volume_type
root_volume_size
​integer | null · uint64

System volume disk size. (in bytes)

public_ip_disabled
​boolean

Defines if the public IP should be removed from Nodes. To use this feature, your Cluster must have an attached Private Network set up with a Public Gateway.

security_group_id
​string

Security group ID in which all the nodes of the pool will be created. If unset, the pool will use default Kapsule security group in current zone. (UUID format)

​object

Kubernetes labels applied and reconciled on the nodes.

Kubernetes taints applied and reconciled on the nodes.

​scaleway.k8s.v1.CoreV1Taint[]

Kubernetes taints applied at node creation but not reconciled afterwards.

error_message
​string | null

Details of the error, if any occurred when managing the pool.

max_termination_grace_period
​string | null

Maximum amount of time before the API forces the drain and deletion of a deleting node. It overrides pods PodDisruptionBudget and terminationGracePeriodSeconds. Defaults to 15 minutes, up to 1 hour. (in seconds)

srn
​string

The SRN of the pool.

region
​string

Cluster region of the pool.


Update a Pool in a Cluster

PATCH
https://api.scaleway.com
/k8s/v1/regions/{region}/pools/{pool_id}

Update the attributes of a specific pool, such as its desired size, autoscaling settings, and tags. To upgrade a pool, you will need to use the dedicated endpoint.

Update a Pool in a Cluster › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
it-mil
pool_id
​string · required

ID of the pool to update.

Update a Pool in a Cluster › Request Body

autoscaling
​boolean | null

New value for the pool autoscaling enablement.

size
​integer | null · uint32

New desired pool size.

min_size
​integer | null · uint32

New minimum size for the pool.

max_size
​integer | null · uint32

New maximum size for the pool.

autohealing
​boolean | null

New value for the pool autohealing enablement.

tags
​array | null

New tags associated with the pool.

kubelet_args
​object | null

New Kubelet arguments to be used by this pool. Note that this feature is experimental.

New upgrade policy for the pool.

security_group_id
​string | null

Security group ID in which all the nodes of the pool will be moved.

max_termination_grace_period
​string | null

New maximum amount of time before the API forces the drain and deletion of a deleting node. (in seconds)

Update a Pool in a Cluster › Responses

200
node_type
​string · required

Node type is the type of Scaleway Instance wanted for the pool. Nodes with insufficient memory are not eligible (DEV1-S, PLAY2-PICO, STARDUST). 'external' is a special node type used to provision instances from other cloud providers in a Kosmos Cluster.

size
​integer · uint32 · required

Size (number of nodes) of the pool.

id
​string

Pool ID. (UUID format)

cluster_id
​string

Cluster ID of the pool. (UUID format)

created_at
​string | null · date-time

Date on which the pool was created. (RFC 3339 format)

updated_at
​string | null · date-time

Date on which the pool was last updated. (RFC 3339 format)

name
​string

Pool name.

status
​scaleway.k8s.v1.Pool.Status · enum

Pool status.

Enum values:
unknown
ready
deleting
deleted
scaling
warning
locked
upgrading
Default: unknown
version
​string

Pool version.

autoscaling
​boolean

Defines whether the autoscaling feature is enabled for the pool.

min_size
​integer · uint32

Defines the minimum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

max_size
​integer · uint32

Defines the maximum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

container_runtime
​scaleway.k8s.v1.Runtime · enum

Customization of the container runtime is available for each pool.

Enum values:
unknown_runtime
containerd
Default: unknown_runtime
autohealing
​boolean

Defines whether the autohealing feature is enabled for the pool.

tags
​string[]

Tags associated with the pool, see managing tagsOpen in new context.

placement_group_id
​string | null

Placement group ID in which all the nodes of the pool will be created, placement groups are limited to 20 instances. (UUID format)

​object

Kubelet arguments to be used by this pool. Note that this feature is experimental.

Defines how node provisioning should behave during pool version upgrade.

zone
​string

Zone in which the pool's nodes will be spawned.

root_volume_type
​scaleway.k8s.v1.Pool.VolumeType · enum

Defines the system volume disk type. Several types of volume (volume_type) are provided:.

  • l_ssd is a local block storage which means your system is stored locally on your node's hypervisor. This type is not available for all node types
  • sbs_5k is a remote block storage which means your system is stored on a centralized and resilient cluster with 5k IOPS limits
  • sbs_15k is a faster remote block storage which means your system is stored on a centralized and resilient cluster with 15k IOPS limits
  • b_ssd is the legacy remote block storage which means your system is stored on a centralized and resilient cluster. Not available for new pools, use sbs_5k or sbs_15k instead.
Enum values:
default_volume_type
l_ssd
b_ssd
sbs_5k
sbs_15k
Default: default_volume_type
root_volume_size
​integer | null · uint64

System volume disk size. (in bytes)

public_ip_disabled
​boolean

Defines if the public IP should be removed from Nodes. To use this feature, your Cluster must have an attached Private Network set up with a Public Gateway.

security_group_id
​string

Security group ID in which all the nodes of the pool will be created. If unset, the pool will use default Kapsule security group in current zone. (UUID format)

​object

Kubernetes labels applied and reconciled on the nodes.

Kubernetes taints applied and reconciled on the nodes.

​scaleway.k8s.v1.CoreV1Taint[]

Kubernetes taints applied at node creation but not reconciled afterwards.

error_message
​string | null

Details of the error, if any occurred when managing the pool.

max_termination_grace_period
​string | null

Maximum amount of time before the API forces the drain and deletion of a deleting node. It overrides pods PodDisruptionBudget and terminationGracePeriodSeconds. Defaults to 15 minutes, up to 1 hour. (in seconds)

srn
​string

The SRN of the pool.

region
​string

Cluster region of the pool.


Set a list of labels for a specific pool

PUT
https://api.scaleway.com
/k8s/v1/regions/{region}/pools/{pool_id}/set-labels

Apply a list of taints to all nodes of the pool (only apply to labels which was set through scaleway api).

Set a list of labels for a specific pool › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
it-mil
pool_id
​string · required

Set a list of labels for a specific pool › Request Body

​object

Set a list of labels for a specific pool › Responses

200
node_type
​string · required

Node type is the type of Scaleway Instance wanted for the pool. Nodes with insufficient memory are not eligible (DEV1-S, PLAY2-PICO, STARDUST). 'external' is a special node type used to provision instances from other cloud providers in a Kosmos Cluster.

size
​integer · uint32 · required

Size (number of nodes) of the pool.

id
​string

Pool ID. (UUID format)

cluster_id
​string

Cluster ID of the pool. (UUID format)

created_at
​string | null · date-time

Date on which the pool was created. (RFC 3339 format)

updated_at
​string | null · date-time

Date on which the pool was last updated. (RFC 3339 format)

name
​string

Pool name.

status
​scaleway.k8s.v1.Pool.Status · enum

Pool status.

Enum values:
unknown
ready
deleting
deleted
scaling
warning
locked
upgrading
Default: unknown
version
​string

Pool version.

autoscaling
​boolean

Defines whether the autoscaling feature is enabled for the pool.

min_size
​integer · uint32

Defines the minimum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

max_size
​integer · uint32

Defines the maximum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

container_runtime
​scaleway.k8s.v1.Runtime · enum

Customization of the container runtime is available for each pool.

Enum values:
unknown_runtime
containerd
Default: unknown_runtime
autohealing
​boolean

Defines whether the autohealing feature is enabled for the pool.

tags
​string[]

Tags associated with the pool, see managing tagsOpen in new context.

placement_group_id
​string | null

Placement group ID in which all the nodes of the pool will be created, placement groups are limited to 20 instances. (UUID format)

​object

Kubelet arguments to be used by this pool. Note that this feature is experimental.

Defines how node provisioning should behave during pool version upgrade.

zone
​string

Zone in which the pool's nodes will be spawned.

root_volume_type
​scaleway.k8s.v1.Pool.VolumeType · enum

Defines the system volume disk type. Several types of volume (volume_type) are provided:.

  • l_ssd is a local block storage which means your system is stored locally on your node's hypervisor. This type is not available for all node types
  • sbs_5k is a remote block storage which means your system is stored on a centralized and resilient cluster with 5k IOPS limits
  • sbs_15k is a faster remote block storage which means your system is stored on a centralized and resilient cluster with 15k IOPS limits
  • b_ssd is the legacy remote block storage which means your system is stored on a centralized and resilient cluster. Not available for new pools, use sbs_5k or sbs_15k instead.
Enum values:
default_volume_type
l_ssd
b_ssd
sbs_5k
sbs_15k
Default: default_volume_type
root_volume_size
​integer | null · uint64

System volume disk size. (in bytes)

public_ip_disabled
​boolean

Defines if the public IP should be removed from Nodes. To use this feature, your Cluster must have an attached Private Network set up with a Public Gateway.

security_group_id
​string

Security group ID in which all the nodes of the pool will be created. If unset, the pool will use default Kapsule security group in current zone. (UUID format)

​object

Kubernetes labels applied and reconciled on the nodes.

Kubernetes taints applied and reconciled on the nodes.

​scaleway.k8s.v1.CoreV1Taint[]

Kubernetes taints applied at node creation but not reconciled afterwards.

error_message
​string | null

Details of the error, if any occurred when managing the pool.

max_termination_grace_period
​string | null

Maximum amount of time before the API forces the drain and deletion of a deleting node. It overrides pods PodDisruptionBudget and terminationGracePeriodSeconds. Defaults to 15 minutes, up to 1 hour. (in seconds)

srn
​string

The SRN of the pool.

region
​string

Cluster region of the pool.


Set a list of startup taints for a specific pool

PUT
https://api.scaleway.com
/k8s/v1/regions/{region}/pools/{pool_id}/set-startup-taints

Apply a list of taints to new nodes of the pool which would not be reconciled by scaleway.

Set a list of startup taints for a specific pool › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
it-mil
pool_id
​string · required

ID of the pool to update.

Set a list of startup taints for a specific pool › Request Body

​scaleway.k8s.v1.CoreV1Taint[]

List of startup taints to set.

Set a list of startup taints for a specific pool › Responses

200
node_type
​string · required

Node type is the type of Scaleway Instance wanted for the pool. Nodes with insufficient memory are not eligible (DEV1-S, PLAY2-PICO, STARDUST). 'external' is a special node type used to provision instances from other cloud providers in a Kosmos Cluster.

size
​integer · uint32 · required

Size (number of nodes) of the pool.

id
​string

Pool ID. (UUID format)

cluster_id
​string

Cluster ID of the pool. (UUID format)

created_at
​string | null · date-time

Date on which the pool was created. (RFC 3339 format)

updated_at
​string | null · date-time

Date on which the pool was last updated. (RFC 3339 format)

name
​string

Pool name.

status
​scaleway.k8s.v1.Pool.Status · enum

Pool status.

Enum values:
unknown
ready
deleting
deleted
scaling
warning
locked
upgrading
Default: unknown
version
​string

Pool version.

autoscaling
​boolean

Defines whether the autoscaling feature is enabled for the pool.

min_size
​integer · uint32

Defines the minimum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

max_size
​integer · uint32

Defines the maximum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

container_runtime
​scaleway.k8s.v1.Runtime · enum

Customization of the container runtime is available for each pool.

Enum values:
unknown_runtime
containerd
Default: unknown_runtime
autohealing
​boolean

Defines whether the autohealing feature is enabled for the pool.

tags
​string[]

Tags associated with the pool, see managing tagsOpen in new context.

placement_group_id
​string | null

Placement group ID in which all the nodes of the pool will be created, placement groups are limited to 20 instances. (UUID format)

​object

Kubelet arguments to be used by this pool. Note that this feature is experimental.

Defines how node provisioning should behave during pool version upgrade.

zone
​string

Zone in which the pool's nodes will be spawned.

root_volume_type
​scaleway.k8s.v1.Pool.VolumeType · enum

Defines the system volume disk type. Several types of volume (volume_type) are provided:.

  • l_ssd is a local block storage which means your system is stored locally on your node's hypervisor. This type is not available for all node types
  • sbs_5k is a remote block storage which means your system is stored on a centralized and resilient cluster with 5k IOPS limits
  • sbs_15k is a faster remote block storage which means your system is stored on a centralized and resilient cluster with 15k IOPS limits
  • b_ssd is the legacy remote block storage which means your system is stored on a centralized and resilient cluster. Not available for new pools, use sbs_5k or sbs_15k instead.
Enum values:
default_volume_type
l_ssd
b_ssd
sbs_5k
sbs_15k
Default: default_volume_type
root_volume_size
​integer | null · uint64

System volume disk size. (in bytes)

public_ip_disabled
​boolean

Defines if the public IP should be removed from Nodes. To use this feature, your Cluster must have an attached Private Network set up with a Public Gateway.

security_group_id
​string

Security group ID in which all the nodes of the pool will be created. If unset, the pool will use default Kapsule security group in current zone. (UUID format)

​object

Kubernetes labels applied and reconciled on the nodes.

Kubernetes taints applied and reconciled on the nodes.

​scaleway.k8s.v1.CoreV1Taint[]

Kubernetes taints applied at node creation but not reconciled afterwards.

error_message
​string | null

Details of the error, if any occurred when managing the pool.

max_termination_grace_period
​string | null

Maximum amount of time before the API forces the drain and deletion of a deleting node. It overrides pods PodDisruptionBudget and terminationGracePeriodSeconds. Defaults to 15 minutes, up to 1 hour. (in seconds)

srn
​string

The SRN of the pool.

region
​string

Cluster region of the pool.


Set a list of taints for a specific pool

PUT
https://api.scaleway.com
/k8s/v1/regions/{region}/pools/{pool_id}/set-taints

Apply a list of taints to all nodes of the pool which will be periodically reconciled by scaleway.

Set a list of taints for a specific pool › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
it-mil
pool_id
​string · required

ID of the pool to update.

Set a list of taints for a specific pool › Request Body

List of taints to set.

Set a list of taints for a specific pool › Responses

200
node_type
​string · required

Node type is the type of Scaleway Instance wanted for the pool. Nodes with insufficient memory are not eligible (DEV1-S, PLAY2-PICO, STARDUST). 'external' is a special node type used to provision instances from other cloud providers in a Kosmos Cluster.

size
​integer · uint32 · required

Size (number of nodes) of the pool.

id
​string

Pool ID. (UUID format)

cluster_id
​string

Cluster ID of the pool. (UUID format)

created_at
​string | null · date-time

Date on which the pool was created. (RFC 3339 format)

updated_at
​string | null · date-time

Date on which the pool was last updated. (RFC 3339 format)

name
​string

Pool name.

status
​scaleway.k8s.v1.Pool.Status · enum

Pool status.

Enum values:
unknown
ready
deleting
deleted
scaling
warning
locked
upgrading
Default: unknown
version
​string

Pool version.

autoscaling
​boolean

Defines whether the autoscaling feature is enabled for the pool.

min_size
​integer · uint32

Defines the minimum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

max_size
​integer · uint32

Defines the maximum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

container_runtime
​scaleway.k8s.v1.Runtime · enum

Customization of the container runtime is available for each pool.

Enum values:
unknown_runtime
containerd
Default: unknown_runtime
autohealing
​boolean

Defines whether the autohealing feature is enabled for the pool.

tags
​string[]

Tags associated with the pool, see managing tagsOpen in new context.

placement_group_id
​string | null

Placement group ID in which all the nodes of the pool will be created, placement groups are limited to 20 instances. (UUID format)

​object

Kubelet arguments to be used by this pool. Note that this feature is experimental.

Defines how node provisioning should behave during pool version upgrade.

zone
​string

Zone in which the pool's nodes will be spawned.

root_volume_type
​scaleway.k8s.v1.Pool.VolumeType · enum

Defines the system volume disk type. Several types of volume (volume_type) are provided:.

  • l_ssd is a local block storage which means your system is stored locally on your node's hypervisor. This type is not available for all node types
  • sbs_5k is a remote block storage which means your system is stored on a centralized and resilient cluster with 5k IOPS limits
  • sbs_15k is a faster remote block storage which means your system is stored on a centralized and resilient cluster with 15k IOPS limits
  • b_ssd is the legacy remote block storage which means your system is stored on a centralized and resilient cluster. Not available for new pools, use sbs_5k or sbs_15k instead.
Enum values:
default_volume_type
l_ssd
b_ssd
sbs_5k
sbs_15k
Default: default_volume_type
root_volume_size
​integer | null · uint64

System volume disk size. (in bytes)

public_ip_disabled
​boolean

Defines if the public IP should be removed from Nodes. To use this feature, your Cluster must have an attached Private Network set up with a Public Gateway.

security_group_id
​string

Security group ID in which all the nodes of the pool will be created. If unset, the pool will use default Kapsule security group in current zone. (UUID format)

​object

Kubernetes labels applied and reconciled on the nodes.

Kubernetes taints applied and reconciled on the nodes.

​scaleway.k8s.v1.CoreV1Taint[]

Kubernetes taints applied at node creation but not reconciled afterwards.

error_message
​string | null

Details of the error, if any occurred when managing the pool.

max_termination_grace_period
​string | null

Maximum amount of time before the API forces the drain and deletion of a deleting node. It overrides pods PodDisruptionBudget and terminationGracePeriodSeconds. Defaults to 15 minutes, up to 1 hour. (in seconds)

srn
​string

The SRN of the pool.

region
​string

Cluster region of the pool.


Upgrade a Pool in a Cluster

POST
https://api.scaleway.com
/k8s/v1/regions/{region}/pools/{pool_id}/upgrade

Upgrade the Kubernetes version of a specific pool. Note that it only works if the targeted version matches the cluster's version. This will drain and replace the nodes in that pool.

Upgrade a Pool in a Cluster › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
it-mil
pool_id
​string · required

ID of the pool to upgrade.

Upgrade a Pool in a Cluster › Request Body

version
​string · required

New Kubernetes version for the pool.

Upgrade a Pool in a Cluster › Responses

200
node_type
​string · required

Node type is the type of Scaleway Instance wanted for the pool. Nodes with insufficient memory are not eligible (DEV1-S, PLAY2-PICO, STARDUST). 'external' is a special node type used to provision instances from other cloud providers in a Kosmos Cluster.

size
​integer · uint32 · required

Size (number of nodes) of the pool.

id
​string

Pool ID. (UUID format)

cluster_id
​string

Cluster ID of the pool. (UUID format)

created_at
​string | null · date-time

Date on which the pool was created. (RFC 3339 format)

updated_at
​string | null · date-time

Date on which the pool was last updated. (RFC 3339 format)

name
​string

Pool name.

status
​scaleway.k8s.v1.Pool.Status · enum

Pool status.

Enum values:
unknown
ready
deleting
deleted
scaling
warning
locked
upgrading
Default: unknown
version
​string

Pool version.

autoscaling
​boolean

Defines whether the autoscaling feature is enabled for the pool.

min_size
​integer · uint32

Defines the minimum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

max_size
​integer · uint32

Defines the maximum size of the pool. Note that this field is only used when autoscaling is enabled on the pool.

container_runtime
​scaleway.k8s.v1.Runtime · enum

Customization of the container runtime is available for each pool.

Enum values:
unknown_runtime
containerd
Default: unknown_runtime
autohealing
​boolean

Defines whether the autohealing feature is enabled for the pool.

tags
​string[]

Tags associated with the pool, see managing tagsOpen in new context.

placement_group_id
​string | null

Placement group ID in which all the nodes of the pool will be created, placement groups are limited to 20 instances. (UUID format)

​object

Kubelet arguments to be used by this pool. Note that this feature is experimental.

Defines how node provisioning should behave during pool version upgrade.

zone
​string

Zone in which the pool's nodes will be spawned.

root_volume_type
​scaleway.k8s.v1.Pool.VolumeType · enum

Defines the system volume disk type. Several types of volume (volume_type) are provided:.

  • l_ssd is a local block storage which means your system is stored locally on your node's hypervisor. This type is not available for all node types
  • sbs_5k is a remote block storage which means your system is stored on a centralized and resilient cluster with 5k IOPS limits
  • sbs_15k is a faster remote block storage which means your system is stored on a centralized and resilient cluster with 15k IOPS limits
  • b_ssd is the legacy remote block storage which means your system is stored on a centralized and resilient cluster. Not available for new pools, use sbs_5k or sbs_15k instead.
Enum values:
default_volume_type
l_ssd
b_ssd
sbs_5k
sbs_15k
Default: default_volume_type
root_volume_size
​integer | null · uint64

System volume disk size. (in bytes)

public_ip_disabled
​boolean

Defines if the public IP should be removed from Nodes. To use this feature, your Cluster must have an attached Private Network set up with a Public Gateway.

security_group_id
​string

Security group ID in which all the nodes of the pool will be created. If unset, the pool will use default Kapsule security group in current zone. (UUID format)

​object

Kubernetes labels applied and reconciled on the nodes.

Kubernetes taints applied and reconciled on the nodes.

​scaleway.k8s.v1.CoreV1Taint[]

Kubernetes taints applied at node creation but not reconciled afterwards.

error_message
​string | null

Details of the error, if any occurred when managing the pool.

max_termination_grace_period
​string | null

Maximum amount of time before the API forces the drain and deletion of a deleting node. It overrides pods PodDisruptionBudget and terminationGracePeriodSeconds. Defaults to 15 minutes, up to 1 hour. (in seconds)

srn
​string

The SRN of the pool.

region
​string

Cluster region of the pool.


GET
https://api.scaleway.com
/k8s/v1/regions/{region}/pools/{pool_id}/user-data

This list only the user data key and not the content.

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
it-mil
pool_id
​string · required

Pool the user data are associated to.


GET
https://api.scaleway.com
/k8s/v1/regions/{region}/pools/{pool_id}/user-data/{key}

Retrieve specific user data content for a given pool. Tip: add ?dl=1 at the end of the URL to directly retrieve the base64 decoded content of your user data.

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
it-mil
pool_id
​string · required

Pool the user data are associated to.

key
​string · required

User data key to retrieved.

200
name
​string
content_type
​string
content
​string