einfra logoDocumentation
How-to guides

Create Kubernetes on OpenStack (KOST)

You can create your own unmanaged Kubernetes cluster with full cluster-admin privileges.

Architecture

  • 1× bastion server
  • 1–3× master nodes
  • Multiple worker nodes

Prerequisites

To create a Kubernetes cluster, you need an OpenStack group project with sufficient quotas and enabled flavors.

Example quota requirements for a simple testing cluster:

  • e1.small for the bastion
  • r3.4core-8ram-30edisk for master nodes
  • c2.4core-16ram for worker nodes
  • 1× floating IP
  • 250 GB of storage

Things to consider:

  • Number of control nodes – for simple testing, one node is enough; for production or business workloads, use three.
  • Worker node sizing – determine how many and how powerful worker nodes you need. See flavor types and flavor list.
  • Public IPs – one floating IP is required to access the cluster. If you need to expose applications (e.g., via nginx ingress), allocate an additional floating IP.
  • Storage – request more storage if you plan to use persistent volumes.

Create a new cluster

You can create a cluster through OpenOnDemand.

Accessing the cluster

From localhost via command line

After deployment is complete, download the kubeconfig file for cluster access.
Install kubectl, save the kubeconfig to ~/.kube/config, and then you can use kubectl commands to manage the cluster.

For advanced users

If you need a more complex solution than OpenOnDemand currently provides, you can create KOST via CLI by following the steps in this repository.
Alternatively, you can contact our support.

Last updated on

publicity banner