CreateNodePool

post

/20180222/nodePools

Create a new node pool. Specify the following:

  • clusterId - The OCID of the cluster where you want to add this node pool. See ListClusters.
  • compartmentId - The OCID of the compartment for the node pool. See ListCompartments.
  • name - A name for the node pool.
  • cniType - Specify FLANNEL_OVERLAY.
  • faultDomains - Specify the name of a fault domain. See ListFaultDomains. Do not specify more than one fault domain. To allow the system to select the best fault domains, do not specify any fault domain.
  • subnetId - The OCID of the subnet that has the configuration of 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).
  • size - The number of nodes to create in the node pool. See "OKE Service Limits" (https://docs.oracle.com/en/engineered-systems/private-cloud-appliance/3.0-latest/oke/oke-overview.html).
  • nodeShape - The name of the shape for the node pool nodes. See ListShapes.
  • ocpus - If you specify a flexible shape, then you must specify the number of OCPUs per node. You can optionally specify memoryInGBs. By default, the number of gigabytes of memory is 16 times the number of OCPUs.
  • sourceType - Specify IMAGE.
  • imageID - The OCID of the image to be used to create the nodes. See ListImages. You must specify an image that has -OKE- in its display name, and its Kubernetes version must not be newer than the Kubernetes version that you specified when you created the cluster. Use ListClusters to find the Kubernetes version of your cluster. In the following example, the Kubernetes version of the image is 1.28.3: uln-pca-Oracle-Linux8-OKE-1.28.3-20240210.oci
  • sshPublicKey - Your public SSH key.
  • Proxy settings. If your network requires proxy settings to enable worker nodes to reach outside registries or repositories, for example, use nodeMetadata to provide values for crio-proxy and crio-noproxy as key/value pairs.
  • nodeEvictionNodePoolSettings - Specify how to handle node deletion when you delete a node pool, delete a specified node, decrement the size of the node pool, or change the node pool nodes placement configuration. Use evictionGraceDuration to specify the number of minutes in ISO 8601 format after which OKE will give up eviction (cordon and drain) of the pods on the node. The default is 60 minutes (PT60M), minimum PT1M, maximum PT60M. The isForceDeleteAfterGraceDuration specifies 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.

Do not specify any value for the OraclePCA-OKE defined tag or for the ClusterResourceIdentifier free-form tag.

To assign defined or freeform tags to all nodes in the node pool, use nodeConfigDetails > definedTags and nodeConfigDetails > freeformTags. The definedTags and freeformTags options in the top-level request body set tags on the node pool resource, not on the nodes.

You cannot customize the OKE cloud-init scripts.

Request

Supported Media Types
Header Parameters
  • Unique Oracle-assigned identifier for the request. Provide this request OCID if you need to contact Oracle about this request.
  • Minimum Length: 1
    Maximum Length: 64
    A token you supply to uniquely identify the request and provide idempotency if the request is retried. Idempotency tokens expire after 24 hours.
Body ()
The details of the node pool to create.
Root Schema : CreateNodePoolDetails
Type: object
The properties that define a request to create a node pool.
Show Source
Nested Schema : definedTags
Type: object
Additional Properties Allowed
Show Source
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
Not supported. A list of key/value pairs to add to nodes after they join the Kubernetes cluster.
Show Source
Nested Schema : CreateNodePoolNodeConfigDetails
Type: object
The size and placement configuration of nodes in the node pool.
Show Source
Nested Schema : NodeEvictionNodePoolSettings
Type: object
Node Eviction Details configuration
Show Source
  • 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
  • Default Value: true
    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.
Nested Schema : CreateNodeShapeConfigDetails
Type: object
The shape configuration of the nodes.
Match All
Show Source
Nested Schema : NodeSourceDetails
Type: object
Discriminator: sourceType
The details of the node's source.
Show Source
Nested Schema : subnetIds
Type: array
The OCIDs of the subnets in which to place nodes for this node pool. When used, quantityPerSubnet can be provided. This property is deprecated, use nodeConfigDetails. Exactly one of the subnetIds or nodeConfigDetails properties must be specified.
Show Source
Nested Schema : additionalProperties
Type: object
Additional Properties Allowed
Show Source
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
Nested Schema : definedTags
Type: object
Additional Properties Allowed
Show Source
Defined tags for each node in the node pool. 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 each node in the node pool. 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
  • Minimum Length: 1
    Maximum Length: 255
    Allowed Values: [ "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
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
Nested Schema : additionalProperties
Type: object
Additional Properties Allowed
Show Source
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
  • Minimum Length: 1
    Maximum Length: 255
    The availability domain in which to place nodes. Example: AD-1
  • Minimum Length: 0
    Maximum Length: 255
    The OCID of the compute capacity reservation in which to place the compute instance.
  • faultDomains
    Maximum Number of Items: 3
    Unique Items Required: true
    A list of fault domains in which to place nodes.
  • PreemptibleNodeConfigDetails
    Configuration options for preemptible nodes.
  • 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
Nested Schema : PreemptibleNodeConfigDetails
Type: object
Configuration options for preemptible nodes.
Show Source
Nested Schema : PreemptionAction
Type: object
Discriminator: type
The action to run when the preemptible node is interrupted for eviction.
Show Source
  • 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
Back to Top

Response

Supported Media Types

202 Response

Accepted
Headers

400 Response

Bad Request
Headers
  • Unique Oracle-assigned identifier for the request. Provide this request OCID if you need to contact Oracle about this request.
Body ()
Root Schema : Error
Type: object
The properties that define an error.
Show Source

401 Response

Unauthorized
Headers
  • Unique Oracle-assigned identifier for the request. Provide this request OCID if you need to contact Oracle about this request.
Body ()
Root Schema : Error
Type: object
The properties that define an error.
Show Source

404 Response

Not Found
Headers
  • Unique Oracle-assigned identifier for the request. Provide this request OCID if you need to contact Oracle about this request.
Body ()
Root Schema : Error
Type: object
The properties that define an error.
Show Source

409 Response

Conflict
Headers
  • Unique Oracle-assigned identifier for the request. Provide this request OCID if you need to contact Oracle about this request.
Body ()
Root Schema : Error
Type: object
The properties that define an error.
Show Source

429 Response

Too Many Requests
Headers
  • Unique Oracle-assigned identifier for the request. Provide this request OCID if you need to contact Oracle about this request.
Body ()
Root Schema : Error
Type: object
The properties that define an error.
Show Source

500 Response

Internal Server Error
Headers
  • Unique Oracle-assigned identifier for the request. Provide this request OCID if you need to contact Oracle about this request.
Body ()
Root Schema : Error
Type: object
The properties that define an error.
Show Source

Default Response

An error has occurred.
Headers
  • Unique Oracle-assigned identifier for the request. Provide this request OCID if you need to contact Oracle about this request.
Body ()
Root Schema : Error
Type: object
The properties that define an error.
Show Source
Back to Top