Create a cluster
A cluster is where your deployments run in your own AWS account. This page walks through creating one. If you have not decided on a shape yet, Clusters compares Starter (one EC2 instance, no Ownkube fee) with Production (managed EKS across availability zones).
Before you start
Section titled “Before you start”- A connected AWS account. The wizard will not open without one.
- A rough idea of what you will run. Dev, staging or a side project: Starter. Live traffic that needs to survive an availability zone outage: Production.
From the dashboard
Section titled “From the dashboard”Open your dashboard and click New cluster.
-
Choose Starter
Select Deploy on EC2.
-
Name and target
Pick a cluster name (
dev,side-project), the AWS account, and a region. Names are lowercase letters, digits and dashes. -
Pick an instance type
Instance vCPU Memory Good for t3.medium2 4 GiB First apps, light prototypes t3.large2 8 GiB Small production web app and a database t3.xlarge4 16 GiB Several services t3.2xlarge8 32 GiB Busy workloads on one node You pay AWS for the instance and nothing to Ownkube. Current prices are on the EC2 pricing page.
-
Review and create
Starter skips the networking and compute steps. Confirm the summary and click Create cluster. Provisioning takes about five minutes.
-
Choose Production
Select Deploy on EKS.
-
Details
Pick a cluster name, the AWS account, a region and a Kubernetes version. The defaults are fine for most teams.
-
Networking
Accept the defaults unless they clash with address ranges you already use:
- Pods CIDR, default
10.244.0.0/16 - Services CIDR, default
10.96.0.0/12
- Pods CIDR, default
-
Compute
Set Workload vCPUs and Memory to your starting capacity. Defaults are 8 vCPU and 16 GiB. This is the floor; the node pool scales above it on its own once the cluster is live.
-
Review and create
The summary shows the estimated monthly Ownkube fee ($5 per vCPU and $1 per GiB on what you request). Click Create cluster. Provisioning takes about ten minutes.
From the CLI
Section titled “From the CLI”# Starter: one instance, no Ownkube feeokctl clusters create --name dev --account <aws-account-id> --region eu-central-1 --type starter --node-type t3.large
# Production: managed EKS with a starting floor of 8 vCPU and 16 GiBokctl clusters create --name prod --account <aws-account-id> --region eu-central-1 --type production --vcpu 8 --memory 16
# Watch it come upokctl clusters status <cluster-id>okctl aws list prints the account IDs you have connected. See the command reference for every flag, including --kubernetes-version, --pods-cidr and --services-cidr.
What happens during provisioning
Section titled “What happens during provisioning”-
Account setup, once per AWS account
On your first cluster, Ownkube creates the shared IAM roles and a regional S3 bucket for state. About a minute, and only once.
-
VPC and networking
A new VPC, subnets (public and private across availability zones on Production), NAT and security groups for the cluster.
-
Control plane
Production provisions the managed EKS control plane. Starter launches the EC2 instance and bootstraps it.
-
Platform components
Ownkube installs the routing, certificate and metrics components that make the platform work.
-
Active
The cluster status flips to Active on the dashboard and it appears as a target when you create a deployment.
Creation can be cancelled while it is still running from the cluster page or with okctl clusters cancel <cluster-id>.
After creation
Section titled “After creation”The cluster page in your dashboard shows node, vCPU and memory telemetry, the VPC details, automatic update settings, and the danger zone. Everything it offers is covered in Clusters.
Limits
Section titled “Limits”- One region per cluster. Create separate clusters for separate regions.
- Shapes do not convert. A Starter cluster cannot become Production. Create the new cluster and copy deployments across.
- Own-cloud fees land on the same wallet as Compute; Starter adds nothing to it.