Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

README.md

Complete Example

This example demonstrates a full CloudPilot AI deployment with both Node Autoscaler and Workload Autoscaler, including custom nodeclasses, nodepools, recommendation policies, autoscaling policies, and proactive optimization filters.

What This Example Does

  • Installs the CloudPilot AI Node Autoscaler with rebalance enabled
  • Configures a custom NodeClass (cloudpilot) with 30 GiB system disk
  • Configures a NodePool (cloudpilot-general) with spot and on-demand capacity
  • Defines a workload for optimization
  • Deploys the Workload Autoscaler with:
    • Two recommendation policies (balanced and cost-savings)
    • Two autoscaling policies (default-ap with inplace mode and readonly with off mode)
    • Proactive optimization enabled for default and my-namespace namespaces
    • Proactive optimization disabled for kube-system namespace

Prerequisites

Usage

  1. Create a terraform.tfvars file:

    cloudpilot_api_key  = "your-api-key"
    cluster_name        = "my-eks-cluster"
    region              = "us-west-2"
    restore_node_number = 3
    enable_rebalance    = true
  2. Apply the configuration:

    terraform init
    terraform plan
    terraform apply

Customization

  • Modify recommendation_policies and autoscaling_policies in main.tf to tune optimization behavior
  • Adjust nodeclasses and nodepools for different instance types, architectures, or capacity strategies
  • Update enable_proactive / disable_proactive to control which namespaces get proactive optimization