---
title: Changing the control plane type with CLI (v2)
description: This page explains how to change the control plane type with CLI (v2)
tags: kubernetes-kapsule cli cli-v2 kapsule
dates:
  validation: 2025-10-01
  posted:  2023-09-07
---
import Requirements from '@macros/iam/requirements.mdx'


Different Kubernetes [cluster types](/kubernetes/faq/#can-i-choose-the-type-of-control-plane-for-my-cluster) are available.

You can use the CLI to specify your cluster type of choice when [creating a new cluster](https://github.com/scaleway/scaleway-cli/blob/master/docs/commands/k8s.md#create-a-new-cluster), as well as changing the cluster type once the cluster has already been created.

In this tutorial, we show you how to change your cluster type using the Scaleway CLI (v2).

<Requirements />

- A Scaleway account logged into the [console](https://console.scaleway.com)
- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization
- A valid [API key](/iam/how-to/create-api-keys/)
- Downloaded and installed the most recent version of the [Scaleway CLI](https://github.com/scaleway/scaleway-cli#scaleway-cli-v2)
- [Created a cluster](/kubernetes/how-to/create-cluster/)

1. Run the following command to list the viable cluster types.
    ```
    scw k8s cluster-type list
    ```

    The output provides the details of each type, such as available stock, features, and commitment:

    ```
    $ scw k8s cluster-type list
    NAME                     AVAILABILITY  MAX NODES  COMMITMENT DELAY  SLA
    kapsule                  available     150        0 seconds         0
    kapsule-dedicated-4      available     250        30 days           99.5
    kapsule-dedicated-8      available     500        30 days           99.5
    kapsule-dedicated-16     available     500        30 days           99.5
    multicloud               available     150        0 seconds         0
    multicloud-dedicated-4   available     250        30 days           99.5
    multicloud-dedicated-8   available     500        30 days           99.5
    multicloud-dedicated-16  available     500        30 days           99.5
    ```
2. Run the following command to know which clusters are available and compatible with your current type. Availability is defined by current type, commitment, and overall stock.

    Replace `<cluster-id>` with the ID of your current cluster.

    ```
    scw k8s cluster list-available-types <cluster-id>
    ```

    An output like the following displays:

    ```
    ClusterTypes.0.Name             kapsule
    ClusterTypes.0.Availability     available
    ClusterTypes.0.MaxNodes         150
    ClusterTypes.0.CommitmentDelay  0 seconds
    ClusterTypes.0.SLA              0
    ClusterTypes.0.Resiliency       standard
    ClusterTypes.0.Memory           4.0 GB
    ClusterTypes.0.Dedicated        false
    ClusterTypes.1.Name             kapsule-dedicated-4
    ClusterTypes.1.Availability     available
    ClusterTypes.1.MaxNodes         250
    ClusterTypes.1.CommitmentDelay  30 days
    ClusterTypes.1.SLA              99.5
    ClusterTypes.1.Resiliency       high_availability
    ClusterTypes.1.Memory           4.0 GB
    ClusterTypes.1.Dedicated        true
    ClusterTypes.2.Name             kapsule-dedicated-8
    ClusterTypes.2.Availability     available
    ClusterTypes.2.MaxNodes         500
    ClusterTypes.2.CommitmentDelay  30 days
    ClusterTypes.2.SLA              99.5
    ClusterTypes.2.Resiliency       high_availability
    ClusterTypes.2.Memory           8.0 GB
    ClusterTypes.2.Dedicated        true
    ClusterTypes.3.Name             kapsule-dedicated-16
    ClusterTypes.3.Availability     available
    ClusterTypes.3.MaxNodes         500
    ClusterTypes.3.CommitmentDelay  30 days
    ClusterTypes.3.SLA              99.5
    ClusterTypes.3.Resiliency       high_availability
    ClusterTypes.3.Memory           16 GB
    ClusterTypes.3.Dedicated        true
    TotalCount                      4
    ```
3. Retrieve the details of your cluster to determine the commitment period.
    ```
    scw k8s cluster get <cluster-id>
    ```

    <Message type="important">
    Dedicated control plane environments come with a commitment to keep the environment for at least 30 calendar days. Keep in mind that:
      - Upgrading to a higher tier cluster type restarts the 30 days of commitment
      - Downgrading a cluster’s control plane is not possible during an active commitment period
      - No commitment extensions are applied for downgrades after the commitment period. Once the commitment period is completed, migrating to a lower tier is possible from the console.
    </Message>

    An output like the following displays:

    ```
    ID                3b5f45cf-a915-4657-aabb-1e5b5c20f8a1
    Type              kapsule
    Name              name-of-your-cluster
    Status            pool_required
    Version           1.28.0
    Region            fr-par
    OrganizationID    e6af22c7-45d6-4ba7-a286-551c6d8409c5
    ProjectID         e6af22c7-45d6-4ba7-a286-551c6d8409c5
    Cni               cilium
    Description       -
    ClusterURL        https://3b5f45cf-a915-4657-aabb-1e5b5c20f8a1.api.k8s.fr-par.scw.cloud:6443
    DNSWildcard       *.3b5f45cf-a915-4657-aabb-1e5b5c20f8a1.nodes.k8s.fr-par.scw.cloud
    CreatedAt         1 hour ago
    UpdatedAt         1 hour ago
    DashboardEnabled  false
    Ingress           none
    UpgradeAvailable  false
    CommitmentEndsAt  1 hour ago

    [...]
    ```
4. Change the cluster type.
    <Message type="important">
      Upgrading or downgrading causes no downtime to your workload. Your control plane might be unreachable for a maximum of two minutes during a change of offers.
    </Message>

    ```
    scw k8s cluster set-type <cluster-id> type=<cluster-type> region=<region-of-cluster>
    ```

    Replace `<cluster-id>`, `<cluster-type>` and `<region-of-cluster>` with their respective values.

    <Message type="important">
    The region of your cluster cannot be changed. If your cluster is located in a region other than `fr-par`, you must specify which one in the command. Otherwise, an error will be returned.
    </Message>

    If the operation is successful, your cluster starts updating to the new cluster type.


