v8

latestOpenAPI 3.0.0Apache 2.0raw.githubusercontent.com2025-10-165266542.4 MB
DigitalOcean-public.v2-new_Kubernetes

Update a Kubernetes Cluster

To update a Kubernetes cluster, send a PUT request to /v2/kubernetes/clusters/$K8S_CLUSTER_ID and specify one or more of the attributes below.

put/v2/kubernetes/clusters/{cluster_id}

Path parameters

cluster_idstring uuid required

A unique ID that can be used to reference a Kubernetes cluster.

Request body

namestring required

A human-readable name for a Kubernetes cluster.

tagsstring[]

An array of tags applied to the Kubernetes cluster. All clusters are automatically tagged k8s and k8s:$K8S_CLUSTER_ID.

auto_upgradeboolean

A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window.

surge_upgradeboolean

A boolean value indicating whether surge upgrade is enabled/disabled for the cluster. Surge upgrade makes cluster upgrades fast and reliable by bringing up new nodes before destroying the outdated nodes.

haboolean

A boolean value indicating whether the control plane is run in a highly available configuration in the cluster. Highly available control planes incur less downtime. The property cannot be disabled.

Example request

{
  "name": "prod-cluster-01",
  "tags": [
    "k8s",
    "k8s:bd5f5959-5e1e-4205-a714-a914373942af",
    "production",
    "web-team"
  ],
  "maintenance_policy": {
    "start_time": "12:00",
    "duration": "4h0m0s",
    "day": "any"
  },
  "auto_upgrade": true,
  "surge_upgrade": true,
  "ha": true,
  "control_plane_firewall": {
    "enabled": true,
    "allowed_addresses": [
      "1.2.3.4/32",
      "1.1.0.0/16"
    ]
  },
  "cluster_autoscaler_configuration": {
    "scale_down_utilization_threshold": 0.65,
    "scale_down_unneeded_time": "1m0s",
    "expanders": [
      "priority",
      "random"
    ]
  },
  "routing_agent": {
    "enabled": true
  },
  "amd_gpu_device_plugin": {
    "enabled": true
  },
  "amd_gpu_device_metrics_exporter_plugin": {
    "enabled": true
  },
  "nvidia_gpu_device_plugin": {
    "enabled": true
  }
}

Response

The response will be a JSON object with a key called kubernetes_cluster. The value of this will be an object containing the standard attributes of a Kubernetes cluster.

Example response

{
  "kubernetes_cluster": {
    "id": "bd5f5959-5e1e-4205-a714-a914373942af",
    "name": "prod-cluster-01",
    "region": "nyc1",
    "version": "1.18.6-do.0",
    "cluster_subnet": "192.168.0.0/20",
    "service_subnet": "192.168.16.0/24",
    "vpc_uuid": "c33931f2-a26a-4e61-b85c-4e95a2ec431b",
    "ipv4": "68.183.121.157",
    "endpoint": "https://bd5f5959-5e1e-4205-a714-a914373942af.k8s.ondigitalocean.com",
    "tags": [
      "k8s",
      "k8s:bd5f5959-5e1e-4205-a714-a914373942af",
      "production",
      "web-team"
    ],
    "node_pools": [
      {
        "size": "s-1vcpu-2gb",
        "id": "cdda885e-7663-40c8-bc74-3a036c66545d",
        "name": "frontend-pool",
        "count": 3,
        "tags": [
          "k8s",
          "k8s:bd5f5959-5e1e-4205-a714-a914373942af",
          "k8s-worker",
          "production",
          "web-team"
        ],
        "taints": [
          {
            "key": "priority",
            "value": "high",
            "effect": "NoSchedule"
          }
        ],
        "auto_scale": true,
        "min_nodes": 3,
        "max_nodes": 6,
        "nodes": [
          {
            "id": "e78247f8-b1bb-4f7a-8db9-2a5f8d4b8f8f",
            "name": "adoring-newton-3niq",
            "status": {
              "state": "provisioning"
            },
            "droplet_id": "205545370",
            "created_at": "2018-11-15T16:00:11Z",
            "updated_at": "2018-11-15T16:00:11Z"
          }
        ]
      }
    ],
    "maintenance_policy": {
      "start_time": "12:00",
      "duration": "4h0m0s",
      "day": "any"
    },
    "auto_upgrade": true,
    "status": {
      "state": "provisioning",
      "message": "provisioning"
    },
    "created_at": "2018-11-15T16:00:11Z",
    "updated_at": "2018-11-15T16:00:11Z",
    "surge_upgrade": true,
    "ha": true,
    "registry_enabled": true,
    "control_plane_firewall": {
      "enabled": true,
      "allowed_addresses": [
        "1.2.3.4/32",
        "1.1.0.0/16"
      ]
    },
    "cluster_autoscaler_configuration": {
      "scale_down_utilization_threshold": 0.65,
      "scale_down_unneeded_time": "1m0s",
      "expanders": [
        "priority",
        "random"
      ]
    },
    "routing_agent": {
      "enabled": true
    },
    "amd_gpu_device_plugin": {
      "enabled": true
    },
    "amd_gpu_device_metrics_exporter_plugin": {
      "enabled": true
    },
    "nvidia_gpu_device_plugin": {
      "enabled": true
    }
  }
}