---
title: "Update Cluster"
method: PUT
path: "/ocean/azure/np/cluster/{oceanClusterId}"
tags: ["Ocean AKS"]
---

# Update Cluster

`PUT /ocean/azure/np/cluster/{oceanClusterId}`

Update a specified Ocean cluster.
<br />
This API supports partial updates, so specific fields can be updated separately.

Notes:
<br />
When labels, tags and taints are updated in the VNG template, all <b>existing</b> nodes from VNGs that inherit these properties
from the tamplate will be updated as well.

## Parameters

- `#/paths/~1azure~1costs/get/parameters/0` — unresolved $ref
- `#/paths/~1ocean~1aws~1ecs~1cluster~1%7BoceanClusterId%7D/get/parameters/1` — unresolved $ref

## Request body

- object
  - `cluster` object, required — The Ocean cluster.
    - `name` string — A name for the Ocean cluster.
    - `autoScaler` AutoScaler — unresolved $ref
    - `scheduling` Scheduling — unresolved $ref
    - `logging` Logging — unresolved $ref
    - `health` Health — unresolved $ref
    - `virtualNodeGroupTemplate` object
      - `availabilityZones` string[] — An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
      - `nodePoolProperties` NodePoolProperties — unresolved $ref
      - `nodeCountLimits` NodeCountLimits — unresolved $ref
      - `strategy` Strategy — unresolved $ref
      - `autoScale` AutoScale — unresolved $ref
      - `labels` object — key-value pairs of labels to add to the virtual node group.\ Only custom user labels are allowed, and not Kubernetes built-in labels or Spot internal labels.\ The following are not allowed: * "kubernetes.azure.com/agentpool" * "kubernetes.io/arch"* "kubernetes.io/os" * "node.kubernetes.io/instance-type" * "topology.kubernetes.io/region" * "topology.kubernetes.io/zone" * "kubernetes.azure.com/cluster" * "kubernetes.azure.com/mode" * "kubernetes.azure.com/role" * "kubernetes.azure.com/scalesetpriority" * "kubernetes.io/hostname" * "kubernetes.azure.com/storageprofile" * "kubernetes.azure.com/storagetier" * "kubernetes.azure.com/instance-sku" * "kubernetes.azure.com/node-image-version" * "kubernetes.azure.com/subnet" * "kubernetes.azure.com/vnet" * "kubernetes.azure.com/ppg" * "kubernetes.azure.com/encrypted-set" * "kubernetes.azure.com/accelerator" * "kubernetes.azure.com/fips_enabled" * "kubernetes.azure.com/os-sku"
      - `taints` object[] — Add taints to a virtual node group.
        - `key` string — Set taint key. The following are not allowed: * "kubernetes.azure.com/scalesetpriority"
        - `value` string — Set taint value.
        - `effect` 'NoSchedule' | 'PreferNoSchedule' | 'NoExecute' | 'PreferNoExecute' — Set taint effect.
      - `tags` object — A maximum of 20 unique key-value pairs for VM tags in the virtual node group. Note: Azure has a tag limit of 50 per node pool.
      - `vmSizes` VmSizes — unresolved $ref
      - `scheduling` Scheduling — unresolved $ref
      - `restrictScaleDown` boolean — When set to True, VNG nodes will be treated as if all pods running have the [restrict-scale-down label](https://docs.flexera.com/spot/ocean/features/labels-and-taints). Therefore, Ocean will not scale nodes down unless they are empty.

## Other responses

- `400` — Bad Request

---

[API](https://skmtc.net/spot/apis/spot-by-flexera-api.md) · [All operations](https://skmtc.net/spot/apis/spot-by-flexera-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/spot/spot-by-flexera-api/revisions/72813baf8d47/schema)
