Skip to main content
PATCH
/
cloud
/
v2
/
k8s
/
clusters
/
{project_id}
/
{region_id}
/
{cluster_name}
Update k8s cluster
curl --request PATCH \
  --url https://api.gcore.com/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name} \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "authentication": {
    "oidc": {
      "client_id": "kubernetes",
      "groups_claim": "groups",
      "groups_prefix": "oidc:",
      "issuer_url": "https://accounts.provider.example",
      "required_claims": {
        "claim": "value"
      },
      "signing_algs": [
        "RS256",
        "RS512"
      ],
      "username_claim": "sub",
      "username_prefix": "oidc:"
    }
  },
  "autoscaler_config": {
    "scale-down-unneeded-time": "5m"
  },
  "cni": {
    "cilium": {
      "encryption": true,
      "hubble_relay": true,
      "hubble_ui": true,
      "lb_acceleration": true,
      "lb_mode": "snat",
      "tunnel": "geneve"
    },
    "provider": "cilium"
  },
  "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"
  }
}
'
{
  "tasks": [
    "d478ae29-dedc-4869-82f0-96104425f565"
  ]
}

Authorizations

Authorization
string
header
required

API key for authentication. Make sure to include the word apikey, followed by a single space and then your token. Example: apikey 1234$abcdef

Path Parameters

project_id
integer
required

Project identifier

region_id
integer
required

Region identifier

cluster_name
string
required

Cluster name

Body

application/json
authentication
object | null

Authentication settings

Examples:
{
"oidc": {
"client_id": "kubernetes",
"groups_claim": "groups",
"groups_prefix": "oidc:",
"issuer_url": "https://accounts.provider.example",
"required_claims": { "claim": "value" },
"signing_algs": ["RS256", "RS512"],
"username_claim": "sub",
"username_prefix": "oidc:"
}
}
autoscaler_config
object | null

Cluster autoscaler configuration params

Examples:
{ "scale-down-unneeded-time": "5m" }
cni
object | null

Cluster CNI settings

Examples:
{
"cilium": {
"encryption": true,
"hubble_relay": true,
"hubble_ui": true,
"lb_acceleration": true,
"lb_mode": "snat",
"tunnel": "geneve"
},
"provider": "cilium"
}
ddos_profile
object | null

Advanced DDoS Protection profile

Examples:
{
"enabled": true,
"fields": [
{
"base_field": 10,
"field_value": [45046, 45047]
}
],
"profile_template": 29
}
{ "enabled": false }
logging
object | null

Logging configuration

Examples:
{
"destination_region_id": 1,
"enabled": true,
"retention_policy": { "period": 45 },
"topic_name": "my-log-name"
}
{ "enabled": false }

null

Response

Task IDs for cluster update

tasks
string[]
required

List of task IDs

Examples:
["d478ae29-dedc-4869-82f0-96104425f565"]