EKS Auto Mode Getting Started Quiz
Related Document: Getting Started with EKS Auto Mode
Multiple Choice Questions
1. What technology underpins EKS Auto Mode's managed compute provisioning?
- A) Cluster Autoscaler
- B) Karpenter
- C) AWS Fargate
- D) EC2 Auto Scaling Groups
Show Answer
Answer: B) Karpenter
Explanation: Auto Mode uses Karpenter-based controllers operated by AWS. You do not install a separate Karpenter controller for Auto Mode. You still configure workload requests, NodePools/NodeClasses, disruption constraints and application autoscaling; infrastructure automation does not transfer responsibility for application availability to AWS.
2. How should you choose the Kubernetes version for a new Auto Mode cluster?
- A) Any upstream Kubernetes version is immediately available in EKS
- B) Always use 1.29 because the original feature floor guarantees current support
- C) Check the current AWS EKS support calendar and regional availability
- D) Always select a version in extended support
Show Answer
Answer: C) Check the current AWS EKS support calendar and regional availability
Explanation: The original 1.29+ feature floor is not a current support guarantee. On October 12, 2026, EKS 1.34–1.37 are in standard support; the chapter keeps its reviewed 1.36 baseline. Check AWS's version calendar and applicable fees. Check applied service quotas and subnet capacity instead of relying on the former unsubstantiated fixed NodePool/node counts.
3. Which eksctl flag enables Auto Mode when creating a new cluster?
- A)
eksctl create cluster --auto-mode - B)
eksctl create cluster --enable-auto-mode - C)
eksctl create cluster --with-auto-mode - D)
eksctl create cluster --compute autoMode=enabled
Show Answer
Answer: B) eksctl create cluster --enable-auto-mode
Explanation: The --enable-auto-mode creation flag is valid in the checked eksctl 0.229.0 release. The chapter uses a reviewed configuration file with autoModeConfig.enabled, nodePools and nodeRoleARN to make roles and networking explicit.
For an existing eksctl-managed cluster, use eksctl update auto-mode-config --config-file <reviewed-config>. eksctl update cluster is a deprecated control-plane upgrade command, not the Auto Mode enablement command. Do not add node-group draining merely to enable the feature. See the eksctl reference.
4. Which statement about Auto Mode provisioning time is defensible?
- A) Every node and Pod is ready within 5–10 seconds
- B) Capacity, bootstrap, image pulls and scheduling constraints affect readiness; measure the workload
- C) AWS guarantees all provisioning completes within five minutes
- D) An ACTIVE control plane proves that every application is ready
Show Answer
Answer: B) Capacity, bootstrap, image pulls and scheduling constraints affect readiness; measure the workload
Explanation: There is no fixed end-to-end readiness guarantee in this example. Distinguish node launch, node readiness and application readiness.
The previous quiz listed 40–90 seconds with EC2 launch 10–30, AMI boot 20–40, kubelet registration 5–10 and scheduling 1–5 seconds. These are preserved here as unverified historical teaching estimates, not measured results or a current SLO; their provenance could not be established in this audit. Auto Mode selects its managed Bottlerocket variant, so the old suggestion to choose AL2023 versus Bottlerocket for faster Auto Mode boot was misleading.
5. Which block configures compute in the Terraform aws_eks_cluster resource?
- A)
auto_mode_config { enabled = true } - B)
compute_config { enabled = true } - C)
karpenter_config { enabled = true } - D)
node_config { auto_mode = true }
Show Answer
Answer: B) compute_config { enabled = true }
Explanation: The resource uses compute_config, but compute alone is insufficient: Auto Mode compute, load balancing and block storage must be configured together, with API-based access and a suitable node role for the default pools. This fragment assumes the reviewed roles, provider and variables are defined elsewhere; it is not a standalone deployment.
resource "aws_eks_cluster" "main" {
name = var.cluster_name
role_arn = var.auto_cluster_role_arn
version = "1.36"
access_config {
authentication_mode = "API"
bootstrap_cluster_creator_admin_permissions = true # Dedicated lab only.
}
compute_config {
enabled = true
node_pools = ["general-purpose", "system"]
node_role_arn = var.auto_node_role_arn
}
kubernetes_network_config {
elastic_load_balancing {
enabled = true
}
}
storage_config {
block_storage {
enabled = true
}
}
vpc_config {
subnet_ids = var.private_subnet_ids
endpoint_public_access = true
endpoint_private_access = true
public_access_cidrs = [var.api_client_cidr]
}
}The chapter uses EKS module 21.25.0, which requires AWS provider 6.59 or later, and validated provider 6.64.0. Its module input is also named compute_config; the older module-v20 input cluster_compute_config is not the resource block name. Review the saved plan and required role policies before applying.
6. Which service principal must the Auto Mode node IAM role trust?
- A) eks.amazonaws.com
- B) ec2.amazonaws.com
- C) eks-auto.amazonaws.com
- D) karpenter.amazonaws.com
Show Answer
Answer: B) ec2.amazonaws.com
Explanation: The node role is assigned to EC2 managed instances and trusts ec2.amazonaws.com. The separate cluster role trusts eks.amazonaws.com and requires sts:TagSession as well as sts:AssumeRole for Auto Mode.
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Principal": {"Service": "ec2.amazonaws.com"},
"Action": "sts:AssumeRole"
}]
}The node role uses AmazonEKSWorkerNodeMinimalPolicy and AmazonEC2ContainerRegistryPullOnly. Application AWS permissions belong in separate workload roles, for example through Pod Identity. See the AWS role requirements.