UpdateNodePool
put
/20180222/nodePools/{node_pool_id}
Update a node pool. You can update any configuration that you can set when you create a node pool except for the compartment where nodes will be created. Use overrideEvictionGraceDuration to change the eviction grace duration.nodePoolCyclingDetails isNodeCyclingEnabled - To apply the changes in this update to all nodes in the nodepool (to node cycle the node pool), set isNodeCyclingEnabled to true. The default value is false. nodePoolCyclingDetails maximumSurge - The maximum number of new nodes that can be starting at any time during this update. nodePoolCyclingDetails maximumUnavailable - The maximum number of existing nodes that can be terminating at any time during this update operation.
By default, existing nodes are not updated. The updated values only apply to new nodes that are created. To replace existing nodes with new nodes that use these updated settings, use nodePoolCyclingDetails. For more information, see "Node Cycling an OKE Node Pool" (https://docs.oracle.com/en/engineered-systems/private-cloud-appliance/3.0-latest/oke/oke-nodepool-nodecycling.html).
Request
Supported Media Types
- application/json
Path Parameters
-
nodePoolId(required): string
The OCID of the node pool.
Query Parameters
-
isForceDeletionAfterOverrideGraceDuration: boolean
Whether the underlying compute instance should be deleted if you cannot evict all the pods within grace period. Private Cloud Appliance always behaves as if this value is true.
-
overrideEvictionGraceDuration: string(x-obmcs-duration)
The number of minutes after which OKE will give up eviction of the pods on the node, specified in ISO 8601 format. Specify PT0M to delete the node without cordon and drain. The default value is PT60M, the minimum is PT0M, and the maximum is PT60M.
Header Parameters
-
if-match: string
For optimistic concurrency control. In the PUT or DELETE call for a resource, set the if-match parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. Provide this request OCID if you need to contact Oracle about this request.
The fields to update in a node pool.
Root Schema : UpdateNodePoolDetails
Type:
object
The properties that define a request to update a node pool.
Show Source
-
definedTags:
object definedTags
Additional Properties Allowed: additionalPropertiesDefined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"Operations": {"CostCenter": "42"}}
-
freeformTags:
object freeformTags
Additional Properties Allowed: additionalPropertiesFree-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. Example: {"Department": "Finance"}
-
initialNodeLabels:
array initialNodeLabels
A list of key/value pairs to add to nodes after they join the Kubernetes cluster. Labels can be used to target pods for scheduling on specific nodes or groups of nodes.
-
kubernetesVersion:
string
The version of Kubernetes to which to upgrade the nodes in the node pool.Example:
v1.9.4
-
name:
string
The new name for the cluster. Avoid entering confidential information.Example:
My Updated Node Pool
-
nodeConfigDetails:
object UpdateNodePoolNodeConfigDetails
The size and placement configuration of nodes in the node pool.
-
nodeEvictionNodePoolSettings:
object NodeEvictionNodePoolSettings
Node eviction details configuration.
-
nodeMetadata:
object nodeMetadata
Additional Properties Allowed: additionalPropertiesA list of key/value pairs to add to each underlying OCI instance in the node pool on launch. For example, use nodeMetadata to provide values for crio-proxy and crio-noproxy.
-
nodePoolCyclingDetails:
object NodePoolCyclingDetails
Node pool cycling settings.
-
nodeShape:
string
The name of the node shape of the nodes in the node pool used on launch.Example:
VM.Standard2.4
-
nodeShapeConfig:
object UpdateNodeShapeConfigDetails
The shape configuration of the nodes.
-
nodeSourceDetails:
object NodeSourceDetails
Discriminator:
sourceType
The details of the node's source. -
quantityPerSubnet:
integer(int32)
The number of nodes to have in each subnet specified in the subnetIds property. This property is deprecated. Use nodeConfigDetails instead. If the current value of quantityPerSubnet is greater than 0, you can only use quantityPerSubnet to scale the node pool. If the current value of quantityPerSubnet is equal to 0 and the current value of size in nodeConfigDetails is greater than 0, before you can use quantityPerSubnet, you must first scale the node pool to 0 nodes using nodeConfigDetails.Example:
1
-
sshPublicKey:
string
The SSH public key to add to each node in the node pool on launch.Example:
ssh-rsa AAAAB3NzaC1yc2abc123...
-
subnetIds:
array subnetIds
The OCIDs of the subnets in which to place nodes for this node pool. This property is deprecated. Use nodeConfigDetails instead. Only one of the subnetIds or nodeConfigDetails properties can be specified.
Nested Schema : definedTags
Type:
object
Additional Properties Allowed
Show Source
-
object additionalProperties
Additional Properties Allowed: additionalPropertiesKey-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}`
Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"Operations": {"CostCenter": "42"}}
Example:
{
"Operations":{
"CostCenter":42
}
}
Nested Schema : freeformTags
Type:
object
Additional Properties Allowed
Show Source
Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. Example: {"Department": "Finance"}
Example:
{
"Department":"Finance"
}
Nested Schema : initialNodeLabels
Type:
array
A list of key/value pairs to add to nodes after they join the Kubernetes cluster. Labels can be used to target pods for scheduling on specific nodes or groups of nodes.
Show Source
-
Array of:
object KeyValue
The properties that define a key value pair.
Nested Schema : UpdateNodePoolNodeConfigDetails
Type:
object
The size and placement configuration of nodes in the node pool.
Show Source
-
definedTags:
object definedTags
Additional Properties Allowed: additionalPropertiesDefined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"Operations": {"CostCenter": "42"}}
-
freeformTags:
object freeformTags
Additional Properties Allowed: additionalPropertiesFree-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. Example: {"Department": "Finance"}
-
isPvEncryptionInTransitEnabled:
boolean
Default Value:
false
Whether to enable in-transit encryption for the data volume's paravirtualized attachment. This field applies to both block volumes and boot volumes. The default value is false. -
kmsKeyId:
string
The OCID of the Key Management Service key assigned to the boot volume.
-
nodePoolPodNetworkOptionDetails:
object NodePoolPodNetworkOptionDetails
Discriminator:
cniType
The CNI type and network details for the pods of a given node pool. -
nsgIds:
array nsgIds
Maximum Number of Items:
5
Unique Items Required:true
The OCIDs of the Network Security Groups (NSGs) to associate nodes for this node pool with. -
placementConfigs:
array placementConfigs
The placement configurations for the node pool. Provide one placement configuration for each availability domain in which you intend to launch a node. To use the node pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.
-
size:
integer(int32)
The number of nodes in the node pool.
Nested Schema : NodeEvictionNodePoolSettings
Type:
object
Node eviction details configuration.
Show Source
-
evictionGraceDuration:
string
Number of minutes in ISO 8601 format after which OKE will give up eviction (cordon and drain) of the pods on the node. Default PT60M, minimum PT1M, maximum PT60M.Example:
PT30M
-
isForceDeleteAfterGraceDuration:
boolean
Default Value:
false
Whether the underlying compute instance should be deleted if you cannot evict all the pods within the grace period. Private Cloud Appliance always deletes the compute instance after the grace period even if some pods are not evicted.
Nested Schema : nodeMetadata
Type:
object
Additional Properties Allowed
Show Source
A list of key/value pairs to add to each underlying OCI instance in the node pool on launch. For example, use nodeMetadata to provide values for crio-proxy and crio-noproxy.
Nested Schema : NodePoolCyclingDetails
Type:
object
Node pool cycling settings.
Show Source
-
isNodeCyclingEnabled:
boolean
Default Value:
false
To apply the changes in this update to all nodes in the nodepool (to node cycle the node pool), set isNodeCyclingEnabled to true. -
maximumSurge:
string
Minimum Length:
1
Maximum Length:4
Default Value:1
The maximum number of new nodes that can be starting at any time during this update operation. Set this value to avoid adding too many new nodes before existing nodes are terminated, which could incur excessive cost. The default value is 1. The maximum value is 5. Either maximumUnavailable or maximumSurge must be greater than 0. The value can be set to either a number (from 0 to the configured number of nodes in the node pool, but not greater than 5) or a percentage (from 0% to 100%, but not a percentage that would result in a number greater than 5).Example:10%
- maximumUnavailable: string
Nested Schema : UpdateNodeShapeConfigDetails
Type:
object
The shape configuration of the nodes.
Match All
The shape configuration of the nodes.
Show Source
-
object
NodeShapeConfig
The shape configuration of the nodes.
Nested Schema : NodeSourceDetails
Type:
object
Discriminator:
sourceType
The details of the node's source.
Show Source
-
sourceType(required):
string
Allowed Values:
[ "IMAGE" ]
The source type for the node. Use IMAGE when specifying an OCID of an image.
Nested Schema : subnetIds
Type:
array
The OCIDs of the subnets in which to place nodes for this node pool. This property is deprecated. Use nodeConfigDetails instead. Only one of the subnetIds or nodeConfigDetails properties can be specified.
Show Source
-
Array of:
string
Minimum Length:
1
Maximum Length:255
Nested Schema : additionalProperties
Type:
object
Additional Properties Allowed
Show Source
-
object additionalProperties
The value of the tag. Only the String type is supported.
Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}`
Nested Schema : additionalProperties
Type:
object
The value of the tag. Only the String type is supported.
Nested Schema : KeyValue
Type:
object
The properties that define a key value pair.
Show Source
-
key:
string
The key of the pair.Example:
mykey
-
value:
string
The value of the pair.Example:
myvalue
Nested Schema : definedTags
Type:
object
Additional Properties Allowed
Show Source
-
object additionalProperties
Additional Properties Allowed: additionalPropertiesKey-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}`
Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: {"Operations": {"CostCenter": "42"}}
Example:
{
"Operations":{
"CostCenter":42
}
}
Nested Schema : freeformTags
Type:
object
Additional Properties Allowed
Show Source
Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. Example: {"Department": "Finance"}
Example:
{
"Department":"Finance"
}
Nested Schema : NodePoolPodNetworkOptionDetails
Type:
object
Discriminator:
cniType
The CNI type and network details for the pods of a given node pool.
Show Source
-
cniType(required):
string
Minimum Length:
1
Maximum Length:255
Allowed Values:[ "OCI_VCN_IP_NATIVE", "FLANNEL_OVERLAY" ]
The CNI plugin used by this node pool.
Nested Schema : nsgIds
Type:
array
Maximum Number of Items:
5
Unique Items Required:
true
The OCIDs of the Network Security Groups (NSGs) to associate nodes for this node pool with.
Show Source
-
Array of:
string
Minimum Length:
1
Maximum Length:255
Nested Schema : placementConfigs
Type:
array
The placement configurations for the node pool. Provide one placement configuration for each availability domain in which you intend to launch a node. To use the node pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.
Show Source
-
Array of:
object NodePoolPlacementConfigDetails
The location where a node pool will place nodes.
Nested Schema : additionalProperties
Type:
object
Additional Properties Allowed
Show Source
-
object additionalProperties
The value of the tag. Only the String type is supported.
Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}`
Nested Schema : additionalProperties
Type:
object
The value of the tag. Only the String type is supported.
Nested Schema : NodePoolPlacementConfigDetails
Type:
object
The location where a node pool will place nodes.
Show Source
-
availabilityDomain(required):
string
Minimum Length:
1
Maximum Length:255
The availability domain in which to place nodes. Example: AD-1 -
capacityReservationId:
string
Minimum Length:
0
Maximum Length:255
The OCID of the compute capacity reservation in which to place the compute instance. -
faultDomains:
array faultDomains
Maximum Number of Items:
3
Unique Items Required:true
A list of fault domains in which to place nodes. -
preemptibleNodeConfig:
object PreemptibleNodeConfigDetails
Configuration options for preemptible nodes.
-
subnetId(required):
string
Minimum Length:
1
Maximum Length:255
The OCID of the subnet in which to place nodes. Specify a subnet that has configuration like the worker subnet described in "Creating an OKE Worker Subnet" (https://docs.oracle.com/en/engineered-systems/private-cloud-appliance/3.0-latest/oke/oke-subnet-worker.html#oke-subnet-worker). The subnet must have rules set to communicate with the control plane endpoint. The subnet must use the private route table and must have a security list like the worker-seclist security list.
Nested Schema : faultDomains
Type:
array
Maximum Number of Items:
3
Unique Items Required:
true
A list of fault domains in which to place nodes.
Show Source
-
Array of:
string
Minimum Length:
0
Maximum Length:255
Nested Schema : PreemptibleNodeConfigDetails
Type:
object
Configuration options for preemptible nodes.
Show Source
-
preemptionAction(required):
object PreemptionAction
Discriminator:
type
The action to run when the preemptible node is interrupted for eviction.
Nested Schema : PreemptionAction
Type:
object
Discriminator:
type
The action to run when the preemptible node is interrupted for eviction.
Show Source
-
type(required):
string
Allowed Values:
[ "TERMINATE" ]
The type of action to run when the instance is interrupted for eviction.
Nested Schema : NodeShapeConfig
Type:
object
The shape configuration of the nodes.
Show Source
-
memoryInGBs:
number(float)
Minimum Value:
0
The total amount of memory available to each node, in gigabytes. -
ocpus:
number(float)
Minimum Value:
0
The total number of OCPUs available to each node in the node pool.
Response
Supported Media Types
- application/json
202 Response
Accepted
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
-
opc-work-request-id: string
The OCID of the work request handling the operation.
400 Response
Bad Request
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
object
The properties that define an error.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing. See [API Errors](https://docs.us-phoenix-1.oraclecloud.com/Content/API/References/apierrors.htm).
-
message(required):
string
A human-readable error string.
401 Response
Unauthorized
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
object
The properties that define an error.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing. See [API Errors](https://docs.us-phoenix-1.oraclecloud.com/Content/API/References/apierrors.htm).
-
message(required):
string
A human-readable error string.
404 Response
Not Found
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
object
The properties that define an error.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing. See [API Errors](https://docs.us-phoenix-1.oraclecloud.com/Content/API/References/apierrors.htm).
-
message(required):
string
A human-readable error string.
409 Response
Conflict
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
object
The properties that define an error.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing. See [API Errors](https://docs.us-phoenix-1.oraclecloud.com/Content/API/References/apierrors.htm).
-
message(required):
string
A human-readable error string.
412 Response
Precondition Failed
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
object
The properties that define an error.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing. See [API Errors](https://docs.us-phoenix-1.oraclecloud.com/Content/API/References/apierrors.htm).
-
message(required):
string
A human-readable error string.
429 Response
Too Many Requests
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
object
The properties that define an error.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing. See [API Errors](https://docs.us-phoenix-1.oraclecloud.com/Content/API/References/apierrors.htm).
-
message(required):
string
A human-readable error string.
500 Response
Internal Server Error
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
object
The properties that define an error.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing. See [API Errors](https://docs.us-phoenix-1.oraclecloud.com/Content/API/References/apierrors.htm).
-
message(required):
string
A human-readable error string.
Default Response
An error has occurred.
Headers
-
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
Root Schema : Error
Type:
object
The properties that define an error.
Show Source
-
code(required):
string
A short error code that defines the error, meant for programmatic parsing. See [API Errors](https://docs.us-phoenix-1.oraclecloud.com/Content/API/References/apierrors.htm).
-
message(required):
string
A human-readable error string.