Conversation
Greptile SummaryThis PR adds minimal EKS Auto Mode test tooling under Key observations:
Confidence Score: 5/5
Important Files Changed
Sequence DiagramsequenceDiagram
participant Dev as Developer
participant eksctl
participant EKS as EKS Control Plane
participant Karpenter as Auto Mode (Karpenter)
participant Node as EC2 Node
Dev->>eksctl: eksctl create cluster -f cluster.yaml
eksctl->>EKS: Provision EKS Auto Mode cluster
EKS-->>Dev: Cluster ready (0 nodes)
Dev->>EKS: kubectl apply -f inflate.yaml
EKS->>Karpenter: Unschedulable pod detected
Karpenter->>Node: Provision EC2 node
Node-->>EKS: Node joins cluster
EKS-->>Dev: Pod scheduled & running
Dev->>EKS: kubectl delete -f inflate.yaml
EKS->>Karpenter: No pending workloads
Karpenter->>Node: Deprovision node (scale to 0)
Dev->>eksctl: eksctl delete cluster -f cluster.yaml --wait
eksctl->>EKS: Delete cluster & resources
EKS-->>Dev: Cluster deleted
Last reviewed commit: 97cfbbf |
|
|
||
| ```bash | ||
| kubectl apply -f inflate.yaml | ||
| kubectl get events -w --sort-by '.lastTimestamp' |
There was a problem hiding this comment.
--sort-by is ignored when combined with --watch
--sort-by only applies to the initial list request; once --watch mode streams new events they arrive in arrival order regardless of the flag. This means the command gives the false impression that output will remain sorted, which can be confusing when debugging node provisioning.
Consider splitting into two separate commands or dropping the --sort-by flag when watching:
| kubectl get events -w --sort-by '.lastTimestamp' | |
| kubectl get events -w |
| # Edit `name` and `region` if you want different values. | ||
| apiVersion: eksctl.io/v1alpha5 | ||
| kind: ClusterConfig | ||
|
|
||
| metadata: | ||
| name: nvflare-auto-test | ||
| region: us-west-2 | ||
|
|
||
| autoModeConfig: | ||
| enabled: true |
There was a problem hiding this comment.
No Kubernetes version pinned
Without a version field, eksctl will silently pick its own default Kubernetes version, which can change across eksctl releases. This makes it hard to reproduce a specific environment, and a future eksctl upgrade could provision a different version than what was tested.
Consider pinning an explicit version, e.g.:
metadata:
name: nvflare-auto-test
region: us-west-2
version: "1.31"
Summary
Testing