AWS Provider
The AWS provider creates and manages managed Amazon EKS clusters via eksctl. It supports the full cluster lifecycle (create, delete, start, stop, list, info) and is the only provider available for the EKS distribution.
[!NOTE] The AWS provider only supports the EKS distribution. For local Docker-based clusters, see the Docker Provider.
Prerequisites
Section titled “Prerequisites”- AWS account — with permissions to create EKS clusters, IAM roles, EC2 instances, and VPCs
- AWS credentials — configured via
aws configure, environment variables, or an instance profile:KSail defaults to reading the AWS region fromTerminal window export AWS_ACCESS_KEY_ID=your-access-keyexport AWS_SECRET_ACCESS_KEY=your-secret-keyexport AWS_REGION=us-east-1AWS_REGION. If you also use other AWS tooling that expectsAWS_DEFAULT_REGION, you may set both variables to the same value. - Docker — required locally for the
ksailCLI
Configuration
Section titled “Configuration”ksail.yaml Reference
Section titled “ksail.yaml Reference”# yaml-language-server: $schema=https://raw.githubusercontent.com/devantler-tech/ksail/main/schemas/ksail-config.schema.jsonapiVersion: ksail.io/v1alpha1kind: Clustermetadata: name: eks-defaultspec: cluster: distribution: EKS provider: AWSAll cluster-specific metadata (region, version, nodegroups, addons) lives in eks.yaml — not in ksail.yaml. See the EKS distribution guide for the full eks.yaml configuration reference.
Standalone lifecycle commands
Section titled “Standalone lifecycle commands”Outside a KSail project, cluster start and cluster stop can use the selected kubeconfig context without --name or --provider. Both demo.us-west-2.eksctl.io and identity-qualified contexts such as operator@demo.us-west-2.eksctl.io select the EKS cluster demo in us-west-2.
ksail cluster startksail cluster stopAn explicit --name or a loaded project configuration takes precedence over context-based name detection. Outside a project, KSail restores the AWS environment-variable mappings saved for the selected context’s cluster and region. That mapped region variable can override the context’s region; when it is unset, the context’s region is used. Mappings or contexts for other regions do not override that selection. An explicit name still requires an unambiguous region; it does not inherit an unrelated selected context’s region.
Context detection identifies the target. Start and stop still require KSail’s persisted ownership record and a matching live AWS cluster identity before changing node-group capacity.
Characteristics
Section titled “Characteristics”| Property | Value |
|---|---|
| Supported distribution | EKS |
| Infrastructure type | Cloud (managed AWS) |
| Local registries | ❌ Not supported |
| Local mirrors | ❌ Not supported (use external URLs) |
| CNI | Amazon VPC CNI (provided by default) |
| CSI | Amazon EBS CSI Driver (provided by default) |
| LoadBalancer support | Built-in (AWS-managed) |
| AWS Load Balancer Controller | 🚧 Optional / not installed by KSail |
Limitations
Section titled “Limitations”- Cloud provider — local Docker containers (mirrors, registries) are inaccessible from the cluster
- Only one distribution is supported: EKS