DocsGetting startedCreate your first Kubernetes cluster

Create your first Kubernetes cluster

Provision a small managed Kubernetes cluster, wait for it to become Provisioned, and connect with kubectl.

This tutorial provisions a minimal managed Kubernetes cluster — one control-plane node and one or two workers — and connects to it. Akasha runs each cluster node as a virtual machine on your project's private network, so you need a network and a storage pool available in your project before you start.

Create the cluster

  1. In the sidebar, go to KubernetesClusters, then click Create Cluster.

  2. Fill in the form:

    FieldWhat to enter
    Cluster NameFor example my-first-cluster. Lowercase letters, digits, and hyphens only.
    NetworkThe project network the cluster nodes attach to.
    Root Disk PoolThe storage pool for the node root disks.
    Add-onsOptionally check Ingress to have an ingress controller (Traefik) and cert-manager installed for you. Leave the other bundles unchecked for now.
    CP SizeLeave the default flavor c2-m4 (2 vCPUs, 4 GB RAM).
    CP Replicas1.
    Worker SizeLeave the default c2-m4.
    Worker Count1 or 2.
  3. Click create. A toast confirms Cluster "my-first-cluster" creation started and the console opens the cluster detail page.

You do not choose a Kubernetes version — Akasha provisions all clusters at a fixed, platform-managed version. Add-ons and node pools can be changed after creation — you can scale pools and add new pools with different sizes, though you cannot resize an existing pool; see Manage node pools and Add-ons.; see Manage node pools and Add-ons.

Wait for the cluster to be Provisioned

Provisioning creates the node VMs, bootstraps Kubernetes, and installs the selected add-ons. Watch progress in two places:

  • The cluster's status on the KubernetesClusters list moves from Provisioning (yellow) to Provisioned (green). The Overview tab of the cluster shows control-plane and worker readiness counts and machine phases.
  • The Operations page has a Kubernetes tab listing the cluster-create operation with its status.

Until the cluster is Provisioned, the terminal and config downloads in the cluster header stay disabled.

Download the kubeconfig

  1. On the cluster detail page, open the Download config menu in the header and choose Kubeconfig.
  2. A dialog asks for an API Server Address. Leave it empty to use the cluster's internal IP, or enter an externally reachable address if your administrator has mapped one for you.
  3. The file downloads as my-first-cluster-kubeconfig.yaml.

The internal endpoint is on your project's private network, so a kubeconfig built with it works from machines that can reach that network — for example an instance in the same project. From outside, you need an externally reachable address; how that is provided is specific to your deployment, so check with your administrator. See Access clusters for the options, including the built-in browser terminal.

Connect with kubectl

export KUBECONFIG=./my-first-cluster-kubeconfig.yaml
kubectl get nodes

You should see one control-plane node and your worker node(s), all in Ready state. No network access from your workstation? Use the cluster's Terminal tab instead — it opens a k9s session against the cluster directly in your browser.

Next steps

  • Expose a service to the outside world with an External IP and HTTP route: Ingress.
  • Install more add-ons — storage, databases, CI/CD: Add-ons.
  • Scale or add worker pools, including autoscaling: Manage node pools.
  • Manage the cluster from Git: GitOps.

To delete the cluster later, use Delete cluster in the header — this destroys all machines and workloads, and asks you to type the cluster name to confirm.