APIs related to the Kubernetes product.
Endpoints related to the creation, listing, deletion, and retrieval of the kubeconfig for a Kubernetes cluster.
Creates a Kubernetes cluster in Magalu Cloud.
| x-tenant-id required | string <uuid> User's UUID for identification. |
| name required | string <= 63 characters Kubernetes cluster name. The name is primarily intended for idempotence, and must be unique within a namespace. The name cannot be changed. The name must follow the following rules:
|
| version | string The Kubernetes version for the cluster, specified in the standard "vX.Y.Z" format. If no version is provided, the latest available version will be used by default. |
| description | string Default: "" A brief description of the Kubernetes cluster. |
| zone | string Deprecated This parameter is deprecated and its use won't create a cluster at requested zone. Identifier of the zone where the Kubernetes cluster will be located. |
| enabled_bastion | boolean Deprecated Default: false This parameter is deprecated and its use won't create a bastion server Enables the use of a bastion host for secure access to the cluster. |
| enabled_server_group | boolean Deprecated Default: true Enables the use of a server group with anti-affinity policy during the creation of the cluster and its node pools. |
Array of objects (CreateNodePoolRequest) An array representing a set of nodes within a Kubernetes cluster. | |
| allowed_cidrs | Array of strings List of allowed CIDR blocks for API server access. |
| cluster_ipv4_cidr | string (ClusterIpv4Cidr) Default: "192.168.0.0/16" The IP address CIDR used by the Pods in the cluster. The CIDR is always subdivided with a "/24" mask per node. If "192.168.0.0/16" is used, the first node PodCIDR will be "192.168.0.0/24", the second will be "192.168.1.0/24" and so forth. This configuration can only be used during the cluster creation and can not be updated later. If not specified, the "192.168.0.0/16" value is used by default. |
| services_ipv4_cidr | string (ServicesIpv4Cidr) Default: "10.96.0.0/12" The IPv4 subnet CIDR used by Kubernetes Services. This parameter can only be set when creating a new cluster and can not be updated later. If not specified, the value of "10.96.0.0/12" will be used by default. |
| cni | string (CNI) Deprecated Default: "cilium-kube-router" The CNI by the Kubernetes Cluster. This parameter can only be set when creating a new cluster and can not be updated later. |
{- "name": "cluster-example",
- "version": "v1.33.6",
- "description": "This is an example cluster.",
- "zone": "br-region-zone",
- "enabled_bastion": false,
- "enabled_server_group": false,
- "node_pools": [
- {
- "name": "nodepool-example",
- "flavor": "BV2-4-40",
- "replicas": 3,
- "taints": [
- {
- "key": "example-key",
- "value": "valor1",
- "effect": "NoSchedule"
}
], - "auto_scale": {
- "min_replicas": 2,
- "max_replicas": 5
}, - "availability_zones": [
- "a",
- "b",
- "c"
]
}
], - "allowed_cidrs": [
- "192.168.1.0/24",
- "10.0.0.0/16"
], - "cluster_ipv4_cidr": "10.128.0.0/12",
- "services_ipv4_cidr": "10.128.0.0/12",
- "cni": "calico"
}{- "name": "cluster-example",
- "id": "10113826-624a-4801-900f-6a5742433411",
- "status": {
- "state": "Pending",
- "message": "Ready"
}, - "allowed_cidrs": [
- "192.168.1.0/24",
- "10.0.0.0/16"
], - "cluster_ipv4_cidr": "10.128.0.0/12",
- "services_ipv4_cidr": "10.128.0.0/12",
- "cni": "calico"
}Lists all clusters for a user.
| x-tenant-id required | string <uuid> User's UUID for identification. |
{- "results": [
- {
- "id": "10113826-624a-4801-900f-6a5742433411",
- "name": "cluster-example",
- "status": {
- "state": "Pending",
- "message": "Ready"
}, - "version": "v1.22.9",
- "kube_api_server": {
- "disable_api_server_fip": true,
- "fixed_ip": "172.100.10.1",
- "floating_ip": "172.100.10.1",
- "port": 6443
}, - "description": "This is an example cluster",
- "project_id": "0000806e53ec429792a7885e63264411",
- "region": "br-ne-1a",
- "created_at": "2023-03-01T09:00:00Z",
- "machine_types_source": "external",
- "cluster_ipv4_cidr": "10.128.0.0/12",
- "services_ipv4_cidr": "10.128.0.0/12",
- "cni": "calico",
- "platform": {
- "version": "v0.1.0"
}
}
]
}Lists detailed cluster information by cluster_uuid.
| cluster_id required | string <uuid> Cluster's UUID. |
| x-tenant-id required | string <uuid> User's UUID for identification. |
{- "name": "cluster-example",
- "id": "10113826-624a-4801-900f-6a5742433411",
- "status": {
- "state": "Pending",
- "message": "Ready"
}, - "version": "v1.22.9",
- "description": "This is an example cluster",
- "project_id": "0000806e53ec429792a7885e63264411",
- "region": "br-ne-1a",
- "created_at": "2023-03-01T09:00:00Z",
- "updated_at": "2023-03-01T09:10:00Z",
- "network": {
- "uuid": "7c24eb01-9423-4f09-a2d2-99ba5df01411",
- "cidr": "00.0.0.0/00",
- "name": "k8s-clusterapi-cluster-example",
- "subnet_id": "c5f750a0-a032-477e-a23a-bcffab8b0707"
}, - "controlplane": {
- "id": "2cc6f625-7d67-4ed2-8c5e-24e5b40b951b",
- "name": "nodepool-example",
- "instance_template": {
- "flavor": {
- "name": "cloud-k8s.gp1.small",
- "id": "c777eaa7-d67c-46f4-9e4f-232bc9b67b58",
- "vcpu": 2,
- "ram": 4096,
- "size": 20
}, - "node_image": "ubuntu-2004-kube-v1.22.9-v1",
- "disk_size": 0,
- "disk_type": "string"
}, - "replicas": 3,
- "zone": [
- "br-ne-1b"
], - "tags": [
- "tag-example"
], - "labels": {
- "key1": "value1"
}, - "taints": [
- {
- "key": "example-key",
- "value": "value1",
- "effect": "NoSchedule"
}
], - "securityGroups": [
- "security-group-name"
], - "created_at": "2023-03-01T09:00:00Z",
- "updated_at": "2023-03-01T09:10:00Z",
- "auto_scale": {
- "min_replicas": 2,
- "max_replicas": 5
}, - "status": {
- "state": "Pending",
- "messages": [
- "Ready"
]
}, - "max_pods_per_node": 32,
- "availability_zones": [
- "a",
- "b",
- "c"
]
}, - "kube_api_server": {
- "disable_api_server_fip": true,
- "fixed_ip": "172.100.10.1",
- "floating_ip": "172.100.10.1",
- "port": 6443
}, - "node_pools": [
- {
- "id": "2cc6f625-7d67-4ed2-8c5e-24e5b40b951b",
- "name": "nodepool-example",
- "instance_template": {
- "flavor": {
- "name": "cloud-k8s.gp1.small",
- "id": "c777eaa7-d67c-46f4-9e4f-232bc9b67b58",
- "vcpu": 2,
- "ram": 4096,
- "size": 20
}, - "node_image": "ubuntu-2004-kube-v1.22.9-v1",
- "disk_size": 0,
- "disk_type": "string"
}, - "replicas": 3,
- "zone": [
- "br-ne-1b"
], - "tags": [
- "tag-example"
], - "labels": {
- "key1": "value1"
}, - "taints": [
- {
- "key": "example-key",
- "value": "value1",
- "effect": "NoSchedule"
}
], - "securityGroups": [
- "security-group-name"
], - "created_at": "2023-03-01T09:00:00Z",
- "updated_at": "2023-03-01T09:10:00Z",
- "auto_scale": {
- "min_replicas": 2,
- "max_replicas": 5
}, - "status": {
- "state": "Pending",
- "messages": [
- "Ready"
]
}, - "max_pods_per_node": 32,
- "availability_zones": [
- "a",
- "b",
- "c"
]
}
], - "addons": {
- "loadbalance": "string",
- "volume": "string",
- "secrets": "string"
}, - "allowed_cidrs": [
- "192.168.1.0/24",
- "10.0.0.0/16"
], - "machine_types_source": "external",
- "cluster_ipv4_cidr": "10.128.0.0/12",
- "services_ipv4_cidr": "10.128.0.0/12",
- "cni": "calico",
- "platform": {
- "version": "v0.1.0"
}
}Deletes a cluster by cluster_uuid.
| cluster_id required | string <uuid> Cluster's UUID. |
| x-tenant-id required | string <uuid> User's UUID for identification. |
{- "id": "string",
- "message": "string"
}Patches the mutable fields of a cluster
| cluster_id required | string <uuid> Cluster's UUID |
| x-tenant-id required | string <uuid> User's UUID for identification. |
| allowed_cidrs | Array of strings |
{- "allowed_cidrs": [
- "string"
]
}{- "allowed_cidrs": [
- "string"
]
}Retrieves the kubeconfig of a Kubernetes cluster by cluster_uuid.
| cluster_id required | string <uuid> Schema to get the cluster's kubeconfig file. |
| x-tenant-id required | string <uuid> User's UUID for identification. |
{- "id": "string",
- "message": "string"
}Endpoints related to the creation, listing of nodepools and nodes, updating, and deletion of nodepools for a Kubernetes cluster.
Creates a node pool in a Kubernetes cluster.
| cluster_id required | string <uuid> Cluster's UUID. |
| x-tenant-id required | string <uuid> User's UUID for identification. |
| name required | string <= 63 characters Name of the node pool. The name is primarily for idempotence and must be unique within a namespace. The name cannot be changed. The name must follow the following rules:
|
| flavor required | string Name of the machine type. The machine type defines the CPU, RAM, and storage capacity of the nodes. The full list of available machine types can be found in the Virtual Machine by listing the machine types. The smallest supported machine type is BV2-4-40. For V1 Clusters, the list of available flavors can be retrieved using the /v1/flavors endpoint (deprecated) or via the MGC CLI with the command |
| replicas required | integer or null Default: 1 Number of replicas of the nodes in the node pool. |
| tags | Array of strings Deprecated List of tags applied to the node pool. |
Array of objects (Taint) Property associating a set of nodes. | |
object (AutoScale) Object specifying properties for updating workload resources in the Kubernetes cluster. | |
| max_pods_per_node | integer (MaxPodsPerNode) [ 8 .. 110 ] Default: 110 Maximum number of Pods allowed per node. |
| availability_zones | Array of strings (AvailabilityZones) Items Enum: "a" "b" "c" List of availability zones where the resource can be created. |
{- "name": "nodepool-example",
- "flavor": "BV2-4-40",
- "replicas": 3,
- "tags": [
- "tag-value1"
], - "taints": [
- {
- "key": "example-key",
- "value": "value1",
- "effect": "NoSchedule"
}
], - "auto_scale": {
- "min_replicas": 2,
- "max_replicas": 5
}, - "max_pods_per_node": 32,
- "availability_zones": [
- "a",
- "b",
- "c"
]
}{- "id": "2cc6f625-7d67-4ed2-8c5e-24e5b40b951b",
- "name": "nodepool-example",
- "instance_template": {
- "flavor": {
- "name": "cloud-k8s.gp1.small",
- "id": "c777eaa7-d67c-46f4-9e4f-232bc9b67b58",
- "vcpu": 2,
- "ram": 4096,
- "size": 20
}, - "node_image": "ubuntu-2004-kube-v1.22.9-v1",
- "disk_size": 0,
- "disk_type": "string"
}, - "replicas": 3,
- "zone": [
- "br-ne-1b"
], - "tags": [
- "tag-example"
], - "labels": {
- "key1": "value1"
}, - "taints": [
- {
- "key": "example-key",
- "value": "value1",
- "effect": "NoSchedule"
}
], - "securityGroups": [
- "security-group-name"
], - "created_at": "2023-03-01T09:00:00Z",
- "updated_at": "2023-03-01T09:10:00Z",
- "auto_scale": {
- "min_replicas": 2,
- "max_replicas": 5
}, - "status": {
- "state": "Pending",
- "messages": [
- "Ready"
]
}, - "max_pods_per_node": 32,
- "availability_zones": [
- "a",
- "b",
- "c"
]
}Gets a node pool from a Kubernetes cluster by cluster_uuid.
| cluster_id required | string <uuid> Cluster's UUID. |
| x-tenant-id required | string <uuid> User's UUID for identification. |
{- "results": [
- {
- "id": "2cc6f625-7d67-4ed2-8c5e-24e5b40b951b",
- "name": "nodepool-example",
- "instance_template": {
- "flavor": {
- "name": "cloud-k8s.gp1.small",
- "id": "c777eaa7-d67c-46f4-9e4f-232bc9b67b58",
- "vcpu": 2,
- "ram": 4096,
- "size": 20
}, - "node_image": "ubuntu-2004-kube-v1.22.9-v1",
- "disk_size": 0,
- "disk_type": "string"
}, - "replicas": 3,
- "zone": [
- "br-ne-1b"
], - "tags": [
- "tag-example"
], - "labels": {
- "key1": "value1"
}, - "taints": [
- {
- "key": "example-key",
- "value": "value1",
- "effect": "NoSchedule"
}
], - "securityGroups": [
- "security-group-name"
], - "created_at": "2023-03-01T09:00:00Z",
- "updated_at": "2023-03-01T09:10:00Z",
- "auto_scale": {
- "min_replicas": 2,
- "max_replicas": 5
}, - "status": {
- "state": "Pending",
- "messages": [
- "Ready"
]
}, - "max_pods_per_node": 32,
- "availability_zones": [
- "a",
- "b",
- "c"
]
}
]
}Gets nodes in a node pool by nodepool_uuid.
| cluster_id required | string <uuid> Cluster's UUID. |
| node_pool_id required | string <uuid> Nodepool's UUID. |
| x-tenant-id required | string <uuid> User's UUID for identification. |
{- "id": "2cc6f625-7d67-4ed2-8c5e-24e5b40b951b",
- "name": "nodepool-example",
- "instance_template": {
- "flavor": {
- "name": "cloud-k8s.gp1.small",
- "id": "c777eaa7-d67c-46f4-9e4f-232bc9b67b58",
- "vcpu": 2,
- "ram": 4096,
- "size": 20
}, - "node_image": "ubuntu-2004-kube-v1.22.9-v1",
- "disk_size": 0,
- "disk_type": "string"
}, - "replicas": 3,
- "zone": [
- "br-ne-1b"
], - "tags": [
- "tag-example"
], - "labels": {
- "key1": "value1"
}, - "taints": [
- {
- "key": "example-key",
- "value": "value1",
- "effect": "NoSchedule"
}
], - "securityGroups": [
- "security-group-name"
], - "created_at": "2023-03-01T09:00:00Z",
- "updated_at": "2023-03-01T09:10:00Z",
- "auto_scale": {
- "min_replicas": 2,
- "max_replicas": 5
}, - "status": {
- "state": "Pending",
- "messages": [
- "Ready"
]
}, - "max_pods_per_node": 32,
- "availability_zones": [
- "a",
- "b",
- "c"
]
}Updates nodes from a node pool by nodepool_uuid.
| cluster_id required | string <uuid> Cluster's UUID. |
| node_pool_id required | string <uuid> Nodepool's UUID. |
| x-tenant-id required | string <uuid> User's UUID for identification. |
| replicas | integer Number of replicas of the nodes in the node pool. |
object (AutoScale) Object specifying properties for updating workload resources in the Kubernetes cluster. |
{- "replicas": 0,
- "auto_scale": {
- "min_replicas": 2,
- "max_replicas": 5
}
}{- "id": "2cc6f625-7d67-4ed2-8c5e-24e5b40b951b",
- "name": "nodepool-example",
- "instance_template": {
- "flavor": {
- "name": "cloud-k8s.gp1.small",
- "id": "c777eaa7-d67c-46f4-9e4f-232bc9b67b58",
- "vcpu": 2,
- "ram": 4096,
- "size": 20
}, - "node_image": "ubuntu-2004-kube-v1.22.9-v1",
- "disk_size": 0,
- "disk_type": "string"
}, - "replicas": 3,
- "zone": [
- "br-ne-1b"
], - "tags": [
- "tag-example"
], - "labels": {
- "key1": "value1"
}, - "taints": [
- {
- "key": "example-key",
- "value": "value1",
- "effect": "NoSchedule"
}
], - "securityGroups": [
- "security-group-name"
], - "created_at": "2023-03-01T09:00:00Z",
- "updated_at": "2023-03-01T09:10:00Z",
- "auto_scale": {
- "min_replicas": 2,
- "max_replicas": 5
}, - "status": {
- "state": "Pending",
- "messages": [
- "Ready"
]
}, - "max_pods_per_node": 32,
- "availability_zones": [
- "a",
- "b",
- "c"
]
}Deletes a node pool in a Kubernetes cluster by nodepool_uuid.
| cluster_id required | string <uuid> Cluster's UUID. |
| node_pool_id required | string <uuid> Nodepool's UUID. |
| x-tenant-id required | string <uuid> User's UUID for identification. |
{- "id": "string",
- "message": "string"
}Lists nodes in a node pool by nodepool_uuid.
| cluster_id required | string <uuid> Cluster's UUID. |
| node_pool_id required | string <uuid> Nodepool's UUID. |
| x-tenant-id required | string <uuid> User's UUID for identification. |
{- "results": [
- {
- "id": "77b3a951-dc2c-4802-a246-63a3c7f7ecac",
- "name": "node-example",
- "namespace": "namespace-example",
- "cluster_name": "cluster-example",
- "nodepool_name": "nodepool-example",
- "created_at": "2023-03-01T09:00:00Z",
- "annotations": {
- "annotation-key1": "value1"
}, - "labels": {
- "label-key1": "value1"
}, - "taints": [
- {
- "key": "example-key",
- "value": "value1",
- "effect": "NoSchedule"
}
], - "addresses": [
- {
- "address": "address-example",
- "type": "Hostname"
}
], - "flavor": "BV2-4-40",
- "infrastructure": {
- "architecture": "amd64",
- "containerRuntimeVersion": "containerd://1.6.2",
- "kernelVersion": "5.4.0-122-generic",
- "kubeProxyVersion": "v1.22.9",
- "kubeletVersion": "v1.22.9",
- "operatingSystem": "linux",
- "osImage": "Ubuntu 20.04.4 LTS",
- "allocatable": {
- "cpu": "2",
- "ephemeral_storage": "18859814062",
- "hugepages_1Gi": "string",
- "hugepages_2Mi": "string",
- "memory": "3923640Ki",
- "pods": "110"
}, - "capacity": {
- "cpu": "2",
- "ephemeral_storage": "18859814062",
- "hugepages_1Gi": "string",
- "hugepages_2Mi": "string",
- "memory": "3923640Ki",
- "pods": "110"
}
}, - "status": {
- "state": "Pending",
- "message": "Ready"
}
}
]
}V1alpha0 Gets a node pool from a Kubernetes cluster by cluster_uuid.
| cluster_id required | string <uuid> Cluster's UUID. |
| x-tenant-id required | string <uuid> User's UUID for identification. |
{- "results": [
- {
- "id": "2cc6f625-7d67-4ed2-8c5e-24e5b40b951b",
- "name": "nodepool-example",
- "flavor": "BV2-4-40",
- "replicas": 3,
- "auto_scale": {
- "min_replicas": 2,
- "max_replicas": 5
}, - "status": {
- "state": "Pending",
- "messages": [
- "Ready"
]
}, - "availability_zones": [
- "a",
- "b",
- "c"
]
}
]
}Lists all available flavors.
{- "results": [
- {
- "nodepool": [
- {
- "name": "cloud-k8s.gp1.small",
- "id": "c777eaa7-d67c-46f4-9e4f-232bc9b67b58",
- "vcpu": 2,
- "ram": 4096,
- "size": 20,
- "sku": "sku-1234"
}
], - "controlplane": [
- {
- "name": "cloud-k8s.gp1.small",
- "id": "c777eaa7-d67c-46f4-9e4f-232bc9b67b58",
- "vcpu": 2,
- "ram": 4096,
- "size": 20,
- "sku": "sku-1234"
}
]
}
]
}