Kubernetes
Last updated
Last updated
The "Kubernetes" section allows for the management of Kubernetes clusters, supporting a multicloud approach. This means that worker nodes can be deployed on one cloud provider, such as Azure, while the master node is hosted on another, like Kraud.Cloud.
GET
{{BASE_URL}}/api/k8s/versions
Get all available versions of Kubernetes.
Name | Type | Description |
---|---|---|
[
{
"_id": "6548a383e2442d14b6bf969c",
"name": "latest",
"displayName": "Latest v1.28.1"
},
{
"_id": "6548a383e2442d14b6bf969d",
"name": "k8s_1.27.5",
"displayName": "Kubernetes v1.27.5"
},
{
"_id": "6548a383e2442d14b6bf969e",
"name": "k8s_1.26.8",
"displayName": "Kuberbetes v1.26.8"
}
]
Once the cluster is created, you can download the kubectl file to manage the k8s.
POST
{{BASE_URL}}/api/clusters
Cluster Creation. Currently, only ( Kraud.Cloud, Azure ) can be created.
{
"status": 0,
"attestationId": "55f18486-6e07-4263-9e86-48a01b2761cd",
"tags": [],
"_id": "654904b9ff600e06af2a9759",
"name": "k8s-development-1",
"version": "6548a383e2442d14b6bf969c",
"project": "6548a41f38406c14db33b62c",
"team": "6548a41f38406c14db33b61e",
"owner": "6548a41138406c14db33b606",
"createdAt": "2023-11-06T15:22:33.826Z",
"updatedAt": "2023-11-06T15:22:33.826Z"
}
{
"name": "k8s-development-1",
"version": "6548a383e2442d14b6bf969c",
"project": "6548a41f38406c14db33b62c",
"tags": [],
"masterNode": {
"provider": "6548a383e2442d14b6bf9697",
"cloudProvider": "6548a383e2442d14b6bf9685",
"region": "6548a383e2442d14b6bf96aa",
"datacenter": "berlin",
"size": "6548a383e2442d14b6bf974c",
"price": "6548a383e2442d14b6bf9712"
},
"pools": [
{
"name": "pool-0-kraud-1vCPUs-4RAM",
"provider": "6548a383e2442d14b6bf9695",
"cloudProvider": "6548a383e2442d14b6bf9685",
"region": "6548a383e2442d14b6bf96a9",
"datacenter": "berlin",
"size": "6548a383e2442d14b6bf9748",
"price": "6548a383e2442d14b6bf970e",
"nodes": 1
}
],
"team": "6548a41f38406c14db33b61e"
}
GET
{{BASE_URL}}/api/teams/{team}/projects/{project}/clusters
Get all active clusters for a specific project.
[
{
"_id": "654904b9ff600e06af2a9759",
"status": 0,
"attestationId": "55f18486-6e07-4263-9e86-48a01b2761cd",
"name": "k8s-development-1",
"version": {
"_id": "6548a383e2442d14b6bf969c",
"name": "latest",
"displayName": "Latest v1.28.1"
},
"pools": [
{
"_id": "654904b9ff600e06af2a975c",
"name": "pool-0-kraud-1vCPUs-4RAM",
"provider": {
"_id": "6548a383e2442d14b6bf9695",
"type": "k8sNode",
"isDisabled": false,
"cloudProvider": {
"_id": "6548a383e2442d14b6bf9685",
"name": "Kraud.Cloud",
"isDisabled": false
}
},
"size": {
"_id": "6548a383e2442d14b6bf9748",
"provider": "6548a383e2442d14b6bf9695",
"location": "berlin",
"name": "Standart_berlin_1_4_50",
"vCPUs": 1,
"memoryGB": 4,
"spaceGB": 50,
"group": 0
},
"nodes": [
{
"_id": "654904b9ff600e06af2a975f",
"attestationId": "",
"status": 0,
"isBlocked": false,
"name": "pool-0-kraud-1vCPUs-4RAM_node0",
"ipConfigurations": [],
"attestation": null
}
]
}
],
"masterNode": {
"_id": "654904b9ff600e06af2a975b",
"name": "master-node",
"attestationId": "",
"status": 0,
"isBlocked": false,
"provider": {
"_id": "6548a383e2442d14b6bf9697",
"type": "k8sControlPlane",
"isDisabled": false,
"cloudProvider": {
"_id": "6548a383e2442d14b6bf9685",
"name": "Kraud.Cloud",
"isDisabled": false
}
},
"size": {
"_id": "6548a383e2442d14b6bf974c",
"provider": "6548a383e2442d14b6bf9697",
"location": "berlin",
"name": "Standart_berlin_2_8_100",
"vCPUs": 2,
"memoryGB": 8,
"spaceGB": 100,
"group": 0
},
"ipConfigurations": [],
"attestation": null
}
}
]
PUT
{{BASE_URL}}/api/clusters/{id}/stop
Stop cluster by unique id.
{
"_id": "6549ec825205cf0c45f24e54",
"status": 3,
"attestationId": "07e74c92-fb0b-4fff-a7d7-fb15d5a97032",
"tags": [],
"name": "k8s-development-1",
"version": {
"_id": "6548a383e2442d14b6bf969c",
"name": "latest",
"displayName": "Latest v1.28.1"
},
"project": "6548a41f38406c14db33b62c",
"team": "6548a41f38406c14db33b61e",
"owner": "6548a41138406c14db33b606",
"createdAt": "2023-11-07T07:51:30.893Z",
"updatedAt": "2023-11-07T08:05:19.056Z",
"pools": [
{
"_id": "6549ec825205cf0c45f24e57",
"name": "pool-0-kraud-1vCPUs-4RAM",
"provider": {
"_id": "6548a383e2442d14b6bf9695",
"type": "k8sNode",
"isDisabled": false,
"cloudProvider": {
"_id": "6548a383e2442d14b6bf9685",
"name": "Kraud.Cloud",
"isDisabled": false
}
},
"size": {
"_id": "6548a383e2442d14b6bf9748",
"provider": "6548a383e2442d14b6bf9695",
"location": "berlin",
"name": "Standart_berlin_1_4_50",
"vCPUs": 1,
"memoryGB": 4,
"spaceGB": 50,
"group": 0
},
"nodes": [
{
"_id": "6549ec825205cf0c45f24e5a",
"attestationId": "",
"status": 1,
"isBlocked": true,
"name": "pool-0-kraud-1vCPUs-4RAM_node0",
"ipConfigurations": [
{
"_id": "6549ec8f5205cf0c45f24e84",
"type": "public",
"method": "Dynamic",
"version": "IPv4",
"address": "185.112.181.100"
}
],
"attestation": null
}
]
}
],
"masterNode": {
"_id": "6549ec825205cf0c45f24e56",
"name": "master-node",
"attestationId": "",
"status": 1,
"isBlocked": true,
"provider": {
"_id": "6548a383e2442d14b6bf9697",
"type": "k8sControlPlane",
"isDisabled": false,
"cloudProvider": {
"_id": "6548a383e2442d14b6bf9685",
"name": "Kraud.Cloud",
"isDisabled": false
}
},
"size": {
"_id": "6548a383e2442d14b6bf974c",
"provider": "6548a383e2442d14b6bf9697",
"location": "berlin",
"name": "Standart_berlin_2_8_100",
"vCPUs": 2,
"memoryGB": 8,
"spaceGB": 100,
"group": 0
},
"ipConfigurations": [
{
"_id": "6549ec935205cf0c45f24e8e",
"type": "public",
"method": "Dynamic",
"version": "IPv4",
"address": "185.112.181.102"
}
],
"attestation": null
}
}
PUT
{{BASE_URL}}/api/clusters/{id}/start
Start cluster by unique id.
{
"_id": "6549ec825205cf0c45f24e54",
"status": 2,
"attestationId": "07e74c92-fb0b-4fff-a7d7-fb15d5a97032",
"tags": [],
"name": "k8s-development-1",
"version": {
"_id": "6548a383e2442d14b6bf969c",
"name": "latest",
"displayName": "Latest v1.28.1"
},
"project": "6548a41f38406c14db33b62c",
"team": "6548a41f38406c14db33b61e",
"owner": "6548a41138406c14db33b606",
"createdAt": "2023-11-07T07:51:30.893Z",
"updatedAt": "2023-11-07T08:05:49.256Z",
"pools": [
{
"_id": "6549ec825205cf0c45f24e57",
"name": "pool-0-kraud-1vCPUs-4RAM",
"provider": {
"_id": "6548a383e2442d14b6bf9695",
"type": "k8sNode",
"isDisabled": false,
"cloudProvider": {
"_id": "6548a383e2442d14b6bf9685",
"name": "Kraud.Cloud",
"isDisabled": false
}
},
"size": {
"_id": "6548a383e2442d14b6bf9748",
"provider": "6548a383e2442d14b6bf9695",
"location": "berlin",
"name": "Standart_berlin_1_4_50",
"vCPUs": 1,
"memoryGB": 4,
"spaceGB": 50,
"group": 0
},
"nodes": [
{
"_id": "6549ec825205cf0c45f24e5a",
"attestationId": "",
"status": 4,
"isBlocked": true,
"name": "pool-0-kraud-1vCPUs-4RAM_node0",
"ipConfigurations": [
{
"_id": "6549ec8f5205cf0c45f24e84",
"type": "public",
"method": "Dynamic",
"version": "IPv4",
"address": "185.112.181.100"
}
],
"attestation": null
}
]
}
],
"masterNode": {
"_id": "6549ec825205cf0c45f24e56",
"name": "master-node",
"attestationId": "",
"status": 4,
"isBlocked": true,
"provider": {
"_id": "6548a383e2442d14b6bf9697",
"type": "k8sControlPlane",
"isDisabled": false,
"cloudProvider": {
"_id": "6548a383e2442d14b6bf9685",
"name": "Kraud.Cloud",
"isDisabled": false
}
},
"size": {
"_id": "6548a383e2442d14b6bf974c",
"provider": "6548a383e2442d14b6bf9697",
"location": "berlin",
"name": "Standart_berlin_2_8_100",
"vCPUs": 2,
"memoryGB": 8,
"spaceGB": 100,
"group": 0
},
"ipConfigurations": [
{
"_id": "6549ec935205cf0c45f24e8e",
"type": "public",
"method": "Dynamic",
"version": "IPv4",
"address": "185.112.181.102"
}
],
"attestation": null
}
}
DELETE
{{BASE_URL}}/api/clusters/{id}
Delete a specific cluster by unique id.
{"message":"ok"}
The user can add pools to the created cluster and manage the pools.
POST
{{BASE_URL}}/api/pools
Create a pool to a specific cluster.
{
"_id": "6549f1bb5205cf0c45f25071",
"status": 0,
"name": "pool-0-kraud-1vCPUs-4RAM",
"provider": {
"_id": "6548a383e2442d14b6bf9695",
"type": "k8sNode",
"isDisabled": false,
"cloudProvider": {
"_id": "6548a383e2442d14b6bf9685",
"name": "Kraud.Cloud",
"isDisabled": false
}
},
"region": "6548a383e2442d14b6bf96a9",
"datacenter": "berlin",
"size": {
"_id": "6548a383e2442d14b6bf9748",
"provider": "6548a383e2442d14b6bf9695",
"location": "berlin",
"name": "Standart_berlin_1_4_50",
"vCPUs": 1,
"memoryGB": 4,
"spaceGB": 50,
"group": 0
},
"price": "6548a383e2442d14b6bf970e",
"cluster": {
"_id": "6549f05e5205cf0c45f24feb",
"status": 2,
"attestationId": "b4cef8ca-fed7-49b2-87a3-db7f67ee0e8d",
"tags": [],
"name": "k8s-development-1",
"version": "6548a383e2442d14b6bf969c",
"project": "6548a41f38406c14db33b62c",
"team": "6548a41f38406c14db33b61e",
"owner": "6548a41138406c14db33b606",
"createdAt": "2023-11-07T08:07:58.630Z",
"updatedAt": "2023-11-07T08:13:01.739Z"
},
"nodes": [
{
"_id": "6549f1bb5205cf0c45f25073",
"attestationId": "",
"status": 0,
"isBlocked": false,
"name": "pool-0-kraud-1vCPUs-4RAM_node0",
"ipConfigurations": [],
"attestation": null
}
]
}
{
"name": "pool-0-kraud-1vCPUs-4RAM",
"provider": "6548a383e2442d14b6bf9695",
"region": "6548a383e2442d14b6bf96a9",
"datacenter": "berlin",
"size": "6548a383e2442d14b6bf9748",
"price": "6548a383e2442d14b6bf970e",
"nodes": 1,
"cluster": "6549f05e5205cf0c45f24feb"
}
DELETE
{{BASE_URL}}/api/pools/{id}
Delete a specific pool by unique id.
{"message":"ok"}
The user can delete nodes. Note that a user can only delete a worker node.
DELETE
{{BASE_URL}}/api/nodes/{id}
Delete a specific node by unique id. Currently, only worker node can be deleted.
{"message":"ok"}
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|