Clusters
Contents
Clusters
Kubernetes clusters represent a set of computational nodes that run containerized applications. These clusters can be deployed by a user on a cloud provider.
List clusters
GET /v3/kubernetes/clusters
This action returns information about all the kubernetes clusters inside a customer.
Inputs
None
Returns
An array of clusters, with the following fields:
Field | Type | Description |
---|---|---|
id | String | Identifier of the cluster. |
name | String | Logical name of the cluster. |
version | String | Kubernetes version of the cluster. |
endpoint | String | Endpoint of the cluster. |
remote_id | String | Identifier of the cluster on the cloud provider. |
state | String | State of the cluster. It can be any of the following: start, waiting_for_vpc, applying, applied, application_error, decommissioning, decommissioning_error, end. |
cluster_plan_id | String | Identifier of the cluster plan the cluster has. |
vpc_id | String | Identifier of the VPC the cluster has. |
cloud_account_id | String | Identifier of the cloud account. |
realm_id | String | Identifier of the realm. |
public_access_ip_addresses | Array of Strings | Array of CIDR blocks that the cluster will allow to receive requests. An empty array indicates the cluster can be accessed from any CIDR block. |
brownfield | Boolean | Flag indicating if the cluster was imported from a cloud account (true) or created using IMCO (false). |
label_ids | String | List of ids corresponding to the labels the cluster has assigned. |
desired_remote_id | String | Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards. |
resource_type | String | An identifier for the type of resource, specifically "cluster". |
Show cluster
GET /v3/kubernetes/clusters/:id
This action returns information about the cluster identified by the given id.
Inputs
None
Returns
Field | Type | Description |
---|---|---|
id | String | Identifier of the cluster. |
name | String | Logical name of the cluster. |
version | String | Kubernetes version of the cluster. |
endpoint | String | Endpoint of the cluster. |
remote_id | String | Identifier of the cluster on the cloud provider. |
state | String | State of the cluster. It can be any of the following: start, waiting_for_vpc, applying, applied, application_error, decommissioning, decommissioning_error, end. |
cluster_plan_id | String | Identifier of the cluster plan the cluster has. |
vpc_id | String | Identifier of the VPC the cluster has. |
cloud_account_id | String | Identifier of the cloud account. |
realm_id | String | Identifier of the realm. |
public_access_ip_addresses | Array of Strings | Array of CIDR blocks the cluster will allow to receive requests. An empty array indicates the cluster can be accessed from any CIDR block. |
brownfield | Boolean | Flag indicating if the cluster was imported from a cloud account (true) or created using IMCO (false). |
label_ids | String | List of ids corresponding to the labels the cluster has assigned. |
desired_remote_id | String | Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards. |
resource_type | String | An identifier for the type of resource, specifically "cluster". |
Create cluster
POST /v3/kubernetes/clusters/
This action creates a new cluster.
Inputs
Field | Type | Description | Required |
---|---|---|---|
name | String | Logical name of the cluster. | Yes |
version | String | Kubernetes version of the cluster. | Yes |
public_access_ip_addresses | Array of Strings | Array of strings with CIDR blocks the cluster will allow to receive requests. | No |
default_vpc_creation | Boolean | Flag indicating if the cluster must create a VPC first. | No* |
default_vpc_cidr | String | CIDR block where the default VPC will have when created. | No* |
cluster_plan_id | String | Identifier of the cluster plan that will use the cluster to be created. | Yes |
cloud_account_id | String | Identifier of the cloud account the cluster will be deployed. | Yes |
vpc_id | String | Identifier of the VPC where the cluster will be deployed. | Yes* |
label_ids | Array of strings | List of ids corresponding to the labels to assign to the cluster. | No |
desired_remote_id | String | Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards. | No |
(*) Note: If default_vpc_creation is set as true, default_vpc_cidr must be provided. If default_vpc_creation is provided as false or not provided, vpc_id must be provided.
Returns
Field | Type | Description |
---|---|---|
id | String | Identifier of the cluster. |
name | String | Logical name of the cluster. |
version | String | Kubernetes version of the cluster. |
endpoint | String | Endpoint of the cluster. |
remote_id | String | Identifier of the cluster on the cloud provider. |
state | String | State of the cluster. It can be any of the following: start, waiting_for_vpc, applying, applied, application_error, decommissioning, decommissioning_error, end. |
cluster_plan_id | String | Identifier of the cluster plan the cluster has. |
vpc_id | String | Identifier of the VPC the cluster has. |
cloud_account_id | String | Identifier of the cloud account. |
realm_id | String | Identifier of the realm. |
public_access_ip_addresses | Array of Strings | Array of CIDR blocks the cluster will allow to receive requests. An empty array indicates the cluster can be accessed from any CIDR block. |
brownfield | Boolean | Flag indicating if the cluster was imported from a cloud account (true) or created using IMCO (false). |
label_ids | String | List of ids corresponding to the labels the cluster has assigned. |
desired_remote_id | String | Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards. |
resource_type | String | An identifier for the type of resource, specifically "cluster". |
Update cluster
PUT /v3/kubernetes/clusters/:id
This action modifies the cluster with the given parameters.
Inputs
Field | Type | Description | Required |
---|---|---|---|
name | String | Logical name of the cluster. | No |
version | String | Kubernetes version of the cluster. | No |
public_access_ip_addresses | Array of Strings | Array of strings with CIDR blocks the cluster will allow to receive requests. | No |
Returns
Field | Type | Description |
---|---|---|
id | String | Identifier of the cluster. |
name | String | Logical name of the cluster. |
version | String | Kubernetes version of the cluster. |
endpoint | String | Endpoint of the cluster. |
remote_id | String | Identifier of the cluster on the cloud provider. |
state | String | State of the cluster. It can be any of the following: start, waiting_for_vpc, applying, applied, application_error, decommissioning, decommissioning_error, end. |
cluster_plan_id | String | Identifier of the cluster plan the cluster has. |
vpc_id | String | Identifier of the VPC the cluster has. |
cloud_account_id | String | Identifier of the cloud account. |
realm_id | String | Identifier of the realm. |
public_access_ip_addresses | Array of Strings | Array of CIDR blocks the cluster will allow to receive requests. An empty array indicates the cluster can be accessed from any CIDR block. |
brownfield | Boolean | Flag indicating if the cluster was imported from a cloud account (true) or created using IMCO (false). |
label_ids | String | List of ids corresponding to the labels the cluster has assigned. |
desired_remote_id | String | Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards. |
resource_type | String | An identifier for the type of resource, specifically "cluster". |
Delete cluster
DELETE /v3/kubernetes/clusters/:id
This action deletes the cluster with the given id.
Inputs
None
Returns
Field | Type | Description |
---|---|---|
id | String | Identifier of the cluster. |
name | String | Logical name of the cluster. |
version | String | Kubernetes version of the cluster. |
endpoint | String | Endpoint of the cluster. |
remote_id | String | Identifier of the cluster on the cloud provider. |
state | String | State of the cluster. It can be any of the following: start, waiting_for_vpc, applying, applied, application_error, decommissioning, decommissioning_error, end. |
cluster_plan_id | String | Identifier of the cluster plan the cluster has. |
vpc_id | String | Identifier of the VPC the cluster has. |
cloud_account_id | String | Identifier of the cloud account. |
realm_id | String | Identifier of the realm. |
public_access_ip_addresses | Array of Strings | Array of CIDR blocks the cluster will allow to receive requests. An empty array indicates the cluster can be accessed from any CIDR block. |
brownfield | Boolean | Flag indicating if the cluster was imported from a cloud account (true) or created using IMCO (false). |
label_ids | String | List of ids corresponding to the labels the cluster has assigned. |
desired_remote_id | String | Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards. |
resource_type | String | An identifier for the type of resource, specifically "cluster". |
Retry cluster
PUT /v3/kubernetes/clusters/:id/retry
This action retries the application of cluster with the given id on IMCO.
Inputs
None
Returns
Field | Type | Description |
---|---|---|
id | String | Identifier of the cluster. |
name | String | Logical name of the cluster. |
version | String | Kubernetes version of the cluster. |
endpoint | String | Endpoint of the cluster. |
remote_id | String | Identifier of the cluster on the cloud provider. |
state | String | State of the cluster. It can be any of the following: start, waiting_for_vpc, applying, applied, application_error, decommissioning, decommissioning_error, end. |
cluster_plan_id | String | Identifier of the cluster plan the cluster has. |
vpc_id | String | Identifier of the VPC the cluster has. |
cloud_account_id | String | Identifier of the cloud account. |
realm_id | String | Identifier of the realm. |
public_access_ip_addresses | Array of Strings | Array of CIDR blocks the cluster will allow to receive requests. An empty array indicates the cluster can be accessed from any CIDR block. |
brownfield | Boolean | Flag indicating if the cluster was imported from a cloud account (true) or created using IMCO (false). |
label_ids | String | List of ids corresponding to the labels the cluster has assigned. |
desired_remote_id | String | Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards. |
resource_type | String | An identifier for the type of resource, specifically "cluster". |
Discard cluster
DELETE /v3/kubernetes/clusters/:id/discard
This action indicates to IMCO that the user discards the brownfield cluster, that is to say, it deletes the cluster on IMCO but not in the cloud provider. Cluster must be a brownfield cluster.
Inputs
None
Returns
Field | Type | Description |
---|---|---|
id | String | Identifier of the cluster. |
name | String | Logical name of the cluster. |
version | String | Kubernetes version of the cluster. |
endpoint | String | Endpoint of the cluster. |
remote_id | String | Identifier of the cluster on the cloud provider. |
state | String | State of the cluster. It can be any of the following: start, waiting_for_vpc, applying, applied, application_error, decommissioning, decommissioning_error, end. |
cluster_plan_id | String | Identifier of the cluster plan the cluster has. |
vpc_id | String | Identifier of the VPC the cluster has. |
cloud_account_id | String | Identifier of the cloud account. |
realm_id | String | Identifier of the realm. |
public_access_ip_addresses | Array of Strings | Array of CIDR blocks the cluster will allow to receive requests. An empty array indicates the cluster can be accessed from any CIDR block. |
brownfield | Boolean | Flag indicating if the cluster was imported from a cloud account (true) or created using IMCO (false). |
label_ids | String | List of ids corresponding to the labels the cluster has assigned. |
desired_remote_id | String | Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards. |
resource_type | String | An identifier for the type of resource, specifically "cluster". |
List node pools of a cluster
GET /v3/kubernetes/clusters/:cluster_id/node_pools
This action returns the node pools that the cluster identified by the given cluster_id has.
Inputs
None
Returns
An array of node pools, with the following fields:
Field | Type | Description |
---|---|---|
id | String | Identifier of the node pool. |
name | String | Logical name of the node pool. |
cluster_id | String | Identifier of the cluster which the node pool belongs. |
remote_id | String | Identifier of the node pool on the cloud provider. |
state | String | State of the node pool. It can be one of these values: start, applying, applied, decommissioning, application_error, decommission_error, end. |
node_pool_plan_id | String | Identifier of the node pool plan that this node pool is based. |
subnet_id | String | Identifier of the subnet where this node pool is deployed. |
disk_size | Integer | Size of the disk each node of the node pool will have, expressed in Gigabytes (GB). |
os_type | String | Type of Operative System each node of the node pool will have. |
cpu_type | String | Type of CPU each node of the node pools will have. |
min_nodes | Integer | Minimum number of nodes the node pool will have. |
max_nodes | Integer | Maximum number of nodes the node pool will have. |
desired_nodes | Integer | Amount of nodes the node pool will tend to have if the node pool does not have autoscaling. |
pods_per_node | Integer | Amount of pods each node of the node pool will have if the node pool plan has pods_per_node_presence set as true. |
brownfield | Boolean | Flag indicating if the node pool has been imported from a cloud account (true) or created using IMCO (false). |
desired_remote_id | String | Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards. |
resource_type | String | An identifier for the type of resource, specifically "node_pool". |