ByCloud Docs
GuidesCLIAPISDK

Go SDK

Kubernetes

Kubernetes clusters

7 methods

GET

ListKubernetesClusters()

List Kubernetes clusters

Parameters

limit

integer

- Maximum number of items to return

marker

string

- ID of the last item from the previous page (for pagination)

name

string

- Filter by name (exact match or prefix with *)

status

string

- Filter by cluster status

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Kubernetes.ListKubernetesClusters(ctx)
if err != nil {
panic(err)
}
fmt.Println(result)
}
POST

CreateKubernetesCluster()

Create Kubernetes cluster

Parameters

name

string

required
cluster_template_id

string

required
keypair

string

- SSH keypair name

docker_volume_size

integer

- Docker volume size in GB

labels

object

master_flavor_id

string

flavor_id

string

master_count

integer

node_count

integer

create_timeout

integer

fixed_network

string

fixed_subnet

string

floating_ip_enabled

boolean

master_lb_enabled

boolean

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Kubernetes.CreateKubernetesCluster(ctx, &bycloud.CreateKubernetesClusterParams{
Name: "production-cluster",
Cluster_template_id: "550e8400-e29b-41d4-a716-446655440000",
})
if err != nil {
panic(err)
}
fmt.Println(result)
}
GET

GetKubernetesCluster()

Get Kubernetes cluster

Parameters

cluster_id

string

required

- Kubernetes Cluster ID

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Kubernetes.GetKubernetesCluster(ctx, &bycloud.GetKubernetesClusterParams{
Cluster_id: "550e8400-e29b-41d4-a716-446655440000",
})
if err != nil {
panic(err)
}
fmt.Println(result)
}
PATCH

UpdateKubernetesCluster()

Update Kubernetes cluster

Parameters

cluster_id

string

required

- Kubernetes Cluster ID

node_count

integer

- New worker node count (for scaling)

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Kubernetes.UpdateKubernetesCluster(ctx, &bycloud.UpdateKubernetesClusterParams{
Cluster_id: "550e8400-e29b-41d4-a716-446655440000",
})
if err != nil {
panic(err)
}
fmt.Println(result)
}
DELETE

DeleteKubernetesCluster()

Delete Kubernetes cluster

Parameters

cluster_id

string

required

- Kubernetes Cluster ID

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Kubernetes.DeleteKubernetesCluster(ctx, &bycloud.DeleteKubernetesClusterParams{
Cluster_id: "550e8400-e29b-41d4-a716-446655440000",
})
if err != nil {
panic(err)
}
fmt.Println(result)
}
GET

GetKubernetesClusterKubeconfig()

Get cluster kubeconfig

Parameters

cluster_id

string

required

- Kubernetes Cluster ID

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Kubernetes.GetKubernetesClusterKubeconfig(ctx, &bycloud.GetKubernetesClusterKubeconfigParams{
Cluster_id: "550e8400-e29b-41d4-a716-446655440000",
})
if err != nil {
panic(err)
}
fmt.Println(result)
}
POST

ResizeKubernetesCluster()

Resize Kubernetes cluster

Parameters

cluster_id

string

required

- Kubernetes Cluster ID

node_count

integer

required

- New worker node count

nodes_to_remove

array

- Specific nodes to remove (by name)

nodegroup

string

- Node group to resize

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Kubernetes.ResizeKubernetesCluster(ctx, &bycloud.ResizeKubernetesClusterParams{
Cluster_id: "550e8400-e29b-41d4-a716-446655440000",
Node_count: 10,
})
if err != nil {
panic(err)
}
fmt.Println(result)
}