v32

latestOpenAPI 3.1.0raw.githubusercontent.com2026-05-151,1412,2144.5 MB
Managed Kubernetes

Update k8s cluster

patch/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name}

Path parameters

project_idinteger required

Project ID

Example:1

Project ID

region_idinteger required

Region ID

Example:7

Region ID

cluster_namestring required

Cluster name

Example:my-cluster

Cluster name

Request body

autoscaler_configobject nullable

Cluster autoscaler configuration.

It allows you to override the default cluster-autoscaler parameters provided by the platform with your preferred values.

Supported parameters (in alphabetical order):

  • balance-similar-node-groups (boolean: true/false) - Detect similar node groups and balance the number of nodes between them.
  • expander (string: random, most-pods, least-waste, price, priority, grpc) - Type of node group expander to be used in scale up. Specifying multiple values separated by commas will call the expanders in succession until there is only one option remaining.
  • expendable-pods-priority-cutoff (float) - Pods with priority below cutoff will be expendable. They can be killed without any consideration during scale down and they don't cause scale up. Pods with null priority (PodPriority disabled) are non expendable.
  • ignore-daemonsets-utilization (boolean: true/false) - Should CA ignore DaemonSet pods when calculating resource utilization for scaling down.
  • max-empty-bulk-delete (integer) - Maximum number of empty nodes that can be deleted at the same time.
  • max-graceful-termination-sec (integer) - Maximum number of seconds CA waits for pod termination when trying to scale down a node.
  • max-node-provision-time (duration: e.g., '15m') - The default maximum time CA waits for node to be provisioned - the value can be overridden per node group.
  • max-total-unready-percentage (float) - Maximum percentage of unready nodes in the cluster. After this is exceeded, CA halts operations.
  • new-pod-scale-up-delay (duration: e.g., '10s') - Pods less than this old will not be considered for scale-up. Can be increased for individual pods through annotation.
  • ok-total-unready-count (integer) - Number of allowed unready nodes, irrespective of max-total-unready-percentage.
  • scale-down-delay-after-add (duration: e.g., '10m') - How long after scale up that scale down evaluation resumes.
  • scale-down-delay-after-delete (duration: e.g., '10s') - How long after node deletion that scale down evaluation resumes.
  • scale-down-delay-after-failure (duration: e.g., '3m') - How long after scale down failure that scale down evaluation resumes.
  • scale-down-enabled (boolean: true/false) - Should CA scale down the cluster.
  • scale-down-unneeded-time (duration: e.g., '10m') - How long a node should be unneeded before it is eligible for scale down.
  • scale-down-unready-time (duration: e.g., '20m') - How long an unready node should be unneeded before it is eligible for scale down.
  • scale-down-utilization-threshold (float) - The maximum value between the sum of cpu requests and sum of memory requests of all pods running on the node divided by node's corresponding allocatable resource, below which a node can be considered for scale down.
  • scan-interval (duration: e.g., '10s') - How often cluster is reevaluated for scale up or down.
  • skip-nodes-with-custom-controller-pods (boolean: true/false) - If true cluster autoscaler will never delete nodes with pods owned by custom controllers.
  • skip-nodes-with-local-storage (boolean: true/false) - If true cluster autoscaler will never delete nodes with pods with local storage, e.g. EmptyDir or HostPath.
  • skip-nodes-with-system-pods (boolean: true/false) - If true cluster autoscaler will never delete nodes with pods from kube-system (except for DaemonSet or mirror pods).

Example request

{
  "add_ons": {
    "slurm": {
      "enabled": true,
      "file_share_id": "cbc94d0e-06c6-4d12-9e86-9782ba14fc8c",
      "ssh_key_ids": [
        "25735292-bd97-44b0-a1af-d7eab876261d",
        "efc01f3a-35b9-4385-89f9-e38439093ee7"
      ],
      "worker_count": 2
    }
  },
  "authentication": {
    "oidc": {
      "client_id": "kubernetes",
      "groups_claim": "groups",
      "groups_prefix": "oidc:",
      "issuer_url": "https://accounts.provider.example",
      "required_claims": {
        "claim": "value"
      },
      "signing_algs": [
        "RS512"
      ],
      "username_claim": "sub",
      "username_prefix": "oidc:"
    }
  },
  "autoscaler_config": {
    "scale-down-unneeded-time": "5m"
  },
  "cni": {
    "cilium": {
      "mask_size": 24,
      "mask_size_v6": 120
    }
  },
  "ddos_profile": {
    "enabled": true,
    "fields": [
      {
        "base_field": 10,
        "field_value": [
          45046,
          45047
        ]
      }
    ],
    "profile_template": 29
  },
  "logging": {
    "destination_region_id": 1,
    "enabled": true,
    "retention_policy": {
      "period": 45
    },
    "topic_name": "my-log-name"
  }
}

Response

OK

tasksstring[] required

List of task IDs representing asynchronous operations. Use these IDs to monitor operation progress:

  • GET /v1/tasks/{task_id} - Check individual task status and details Poll task status until completion (FINISHED/ERROR) before proceeding with dependent operations.
idstring required

Example response

{
  "tasks": [
    "d478ae29-dedc-4869-82f0-96104425f565"
  ]
}