Amazon EKS — Storage Practice Questions
Test your understanding of persistent storage on Amazon EKS.
Question 1
Which EBS volume type offers the best cost-performance ratio for general workloads on EKS?
- A. gp2
- B. gp3
- C. io2
- D. st1
Show Answer
Correct Answer: B
| Option | Explanation |
|---|---|
| A | gp2 delivers lower baseline performance at a higher price than gp3 |
| B | gp3 provides 3000 IOPS and 125 MiB/s baseline at $0.08/GB — 20% cheaper than gp2 |
| C | io2 is designed for high-IOPS databases — overkill and expensive for general use |
| D | st1 is a throughput-optimized HDD — not suitable for random I/O workloads |
Question 2
What does volumeBindingMode: WaitForFirstConsumer do?
- A. Waits for kubectl apply before creating the volume
- B. Delays PV creation until a pod using the PVC is scheduled
- C. Ensures the volume is created in every AZ
- D. Creates the volume immediately when the PVC is created
Show Answer
Correct Answer: B
| Option | Explanation |
|---|---|
| A | This is the normal PVC creation behavior regardless of binding mode |
| B | WaitForFirstConsumer delays PV provisioning until a pod is scheduled, ensuring AZ alignment between pod and volume |
| C | EBS volumes are always single-AZ — this mode ensures they’re created in the correct AZ |
| D | This describes the Immediate binding mode |
Question 3
Which storage option supports ReadWriteMany access mode on EKS?
- A. EBS gp3
- B. EFS
- C. EBS io2
- D. Local SSD
Show Answer
Correct Answer: B
| Option | Explanation |
|---|---|
| A | EBS only supports ReadWriteOnce — one node at a time |
| B | EFS is an NFS file system that supports ReadWriteMany — multiple pods across multiple nodes |
| C | EBS io2 also only supports ReadWriteOnce |
| D | Local SSDs are node-local and don’t support shared access |
Question 4
Which persistent storage option is available for Fargate pods?
- A. EBS
- B. EFS
- C. FSx for Lustre
- D. Instance store
Show Answer
Correct Answer: B
| Option | Explanation |
|---|---|
| A | EBS requires a node — Fargate runs pods without traditional nodes |
| B | EFS is the only persistent storage available for Fargate pods |
| C | FSx for Lustre requires mount targets that Fargate doesn’t support |
| D | Fargate pods don’t have access to instance stores |
Question 5
What happens when you delete a PVC with reclaimPolicy: Retain?
- A. The PV and backing EBS volume are deleted
- B. The PV is released but the EBS volume is preserved
- C. The PVC deletion is blocked
- D. The EBS volume is deleted but the PV remains
Show Answer
Correct Answer: B
| Option | Explanation |
|---|---|
| A | This describes the Delete reclaim policy |
| B | Retain keeps the PV in Released state and preserves the backing EBS volume — requires manual cleanup |
| C | Deletion is not blocked — the PVC is removed, but the volume persists |
| D | The volume and PV are both retained; neither is automatically deleted |
Question 6
How does EFS dynamic provisioning isolate data between PVCs?
- A. Each PVC gets a separate EFS file system
- B. Each PVC gets an EFS access point with its own directory
- C. Data isolation is handled by Kubernetes NetworkPolicies
- D. EFS does not support dynamic provisioning
Show Answer
Correct Answer: B
| Option | Explanation |
|---|---|
| A | A new EFS file system per PVC would be expensive and slow to provision |
| B | Dynamic provisioning creates an EFS access point per PVC, each with its own root directory and permissions |
| C | NetworkPolicies control network traffic, not storage isolation |
| D | EFS supports dynamic provisioning via the efs-ap provisioning mode |
Question 7
What is the minimum storage size for FSx for Lustre?
- A. 1 GiB
- B. 100 GiB
- C. 1.2 TiB
- D. 10 TiB
Show Answer
Correct Answer: C
| Option | Explanation |
|---|---|
| A | 1 GiB is the minimum for EBS volumes |
| B | 100 GiB is not a valid FSx Lustre minimum |
| C | FSx for Lustre requires a minimum of 1.2 TiB — designed for large-scale parallel workloads |
| D | 10 TiB is above the minimum requirement |
Question 8
Which Kubernetes resource do you create to restore from a volume snapshot?
- A. VolumeSnapshotRestore
- B. PersistentVolume with snapshot source
- C. PersistentVolumeClaim with dataSource referencing VolumeSnapshot
- D. RestoreJob
Show Answer
Correct Answer: C
| Option | Explanation |
|---|---|
| A | VolumeSnapshotRestore is not a valid Kubernetes resource |
| B | You create a PVC, not a PV — the CSI driver creates the PV from the snapshot |
| C | Create a PVC with dataSource pointing to the VolumeSnapshot — the CSI driver provisions a new volume from the snapshot |
| D | RestoreJob is not a valid Kubernetes resource |
Question 9
Why is encrypted: "true" recommended in StorageClass parameters?
- A. It improves read/write performance
- B. It enables volume expansion
- C. It ensures data at rest is encrypted using AWS KMS
- D. It compresses data to reduce storage costs
Show Answer
Correct Answer: C
| Option | Explanation |
|---|---|
| A | Encryption has minimal performance impact but doesn’t improve it |
| B | Volume expansion is controlled by allowVolumeExpansion, not encryption |
| C | EBS encryption protects data at rest using AWS KMS — a security best practice and often a compliance requirement |
| D | Encryption does not compress data |
Question 10
What happens when an EBS volume is created with Immediate binding mode and the pod schedules in a different AZ?
- A. The volume automatically migrates to the pod’s AZ
- B. The pod attaches to the volume across AZs
- C. The pod fails to start because the volume is in a different AZ
- D. Kubernetes creates a second volume in the correct AZ
Show Answer
Correct Answer: C
| Option | Explanation |
|---|---|
| A | EBS volumes cannot migrate between AZs |
| B | EBS volumes can only attach to instances in the same AZ |
| C | The pod stays Pending because the node and volume are in different AZs — use WaitForFirstConsumer to prevent this |
| D | Kubernetes does not create duplicate volumes |