Cluster Setup
CAIPE deploys on any Kubernetes 1.28+ cluster. Pick the option that fits your environment and proceed to Deploy with Helm once your cluster is ready.
Option 1 — KinD (local, no cloud account needed)
KinD (Kubernetes in Docker) is the fastest way to get a cluster running locally for development or evaluation.
Prerequisites
Create the cluster
kind create cluster --name caipe
kubectl cluster-info --context kind-caipe
Your cluster is ready. Jump to Deploy with Helm →
Option 2 — AWS EKS
Use EKS for production or cloud-based evaluation.
Install tools
| Tool | Purpose |
|---|---|
| AWS CLI | Authenticate to AWS — install |
| eksctl | Create and manage EKS clusters — install |
| kubectl | Interact with the cluster — install |
Configure AWS credentials
aws configure
aws sts get-caller-identity
export AWS_DEFAULT_REGION=us-east-2
Create the cluster
git clone https://github.com/cnoe-io/ai-platform-engineering.git
cd ai-platform-engineering
cp deploy/eks/dev-eks-cluster-config.yaml.example dev-eks-cluster-config.yaml
# Takes ~10–15 minutes
eksctl create cluster -f dev-eks-cluster-config.yaml
# Verify nodes are ready
kubectl get nodes
(Recommended) Install AWS Load Balancer Controller
Required for LoadBalancer-type services on EKS:
eksctl create iamserviceaccount \
--cluster=dev-eks-cluster \
--namespace=kube-system \
--name=aws-load-balancer-controller \
--role-name AmazonEKSLoadBalancerControllerRole \
--attach-policy-arn=arn:aws:iam::aws:policy/ElasticLoadBalancingFullAccess \
--approve
helm repo add eks https://aws.github.io/eks-charts && helm repo update
helm install aws-load-balancer-controller eks/aws-load-balancer-controller \
-n kube-system \
--set clusterName=dev-eks-cluster \
--set serviceAccount.create=false \
--set serviceAccount.name=aws-load-balancer-controller
Your cluster is ready. Jump to Deploy with Helm →
Other cloud providers
The Helm install works on any conformant cluster. Follow your provider's managed Kubernetes guide:
| Provider | Managed Service |
|---|---|
| Google Cloud | GKE |
| Microsoft Azure | AKS |
| Self-managed | Any kubeadm or Rancher cluster |
Once kubectl get nodes shows your nodes in Ready state, proceed to Deploy with Helm →