From ec886eeecf067b070ba00301921e3ce62151791d Mon Sep 17 00:00:00 2001 From: Ann Wallace Date: Wed, 24 Jun 2026 09:08:31 -0700 Subject: [PATCH 1/3] add hypervisor variable, update cluster_version default to 1.35 --- getting-started/eks-terraform/variables.tf | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/getting-started/eks-terraform/variables.tf b/getting-started/eks-terraform/variables.tf index b376ee8..c00cebe 100644 --- a/getting-started/eks-terraform/variables.tf +++ b/getting-started/eks-terraform/variables.tf @@ -19,11 +19,22 @@ variable "cluster_name" { variable "cluster_version" { description = "Kubernetes version to use for the EKS cluster" type = string - default = "1.32" + default = "1.35" +} + +variable "hypervisor" { + description = "Hypervisor backend to use: 'xen' (default, production) or 'kvm' (Early Access). Determines which Edera AMI is selected." + type = string + default = "xen" + + validation { + condition = contains(["xen", "kvm"], var.hypervisor) + error_message = "hypervisor must be 'xen' or 'kvm'." + } } variable "instance_types" { - description = "List of instance types associated with the EKS Node Group" + description = "List of instance types for the EKS Node Group. For KVM, use a metal instance or a nested-virtualization-capable type (e.g. m7i.xlarge, c7i.xlarge). For Xen, any supported type works." type = list(string) default = ["m5n.xlarge"] } @@ -62,4 +73,4 @@ variable "ssh_key_name" { description = "Name of the EC2 Key Pair for SSH access to worker nodes (required if enable_ssh_access is true)" type = string default = "" -} \ No newline at end of file +} From 4d8c43fa4b2bc335d5d34e466559cea1da9961d7 Mon Sep 17 00:00:00 2001 From: Ann Wallace Date: Wed, 24 Jun 2026 09:08:55 -0700 Subject: [PATCH 2/3] update AMI filter to use hypervisor variable --- getting-started/eks-terraform/main.tf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/getting-started/eks-terraform/main.tf b/getting-started/eks-terraform/main.tf index 11dde3b..79f5b50 100644 --- a/getting-started/eks-terraform/main.tf +++ b/getting-started/eks-terraform/main.tf @@ -37,7 +37,7 @@ data "aws_ami" "edera_protect" { filter { name = "name" values = [ - "edera-protect-v1.*-al2023-amazon-eks-node-${local.cluster_version}-*" + "edera-protect-*-al2023-amazon-eks-${var.hypervisor}-node-${local.cluster_version}-*" ] } @@ -118,7 +118,7 @@ module "eks" { edera_protect = { name = local.node_group_name - # Use Edera AMI + # Use Edera AMI (selected by hypervisor variable) ami_id = data.aws_ami.edera_protect.id ami_type = "AL2023_x86_64_STANDARD" @@ -156,4 +156,4 @@ module "eks" { Environment = "edera-learn" Project = "edera-eks-example" } -} \ No newline at end of file +} From 457b05d1fb3f0639c1d0300428586f6abeb06c29 Mon Sep 17 00:00:00 2001 From: Ann Wallace Date: Wed, 24 Jun 2026 09:15:23 -0700 Subject: [PATCH 3/3] add hypervisor option and KVM instance type guidance --- getting-started/eks-terraform/terraform.tfvars.example | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/getting-started/eks-terraform/terraform.tfvars.example b/getting-started/eks-terraform/terraform.tfvars.example index 2c3da80..248d500 100644 --- a/getting-started/eks-terraform/terraform.tfvars.example +++ b/getting-started/eks-terraform/terraform.tfvars.example @@ -9,15 +9,22 @@ edera_account_id = "REPLACE_WITH_EDERA_ACCOUNT_ID" cluster_name = "edera-cluster" cluster_version = "1.35" +# Optional: Hypervisor backend — "xen" (default, production) or "kvm" (Early Access) +# hypervisor = "xen" + # Optional: AWS region (Edera AMIs only available in us-west-2 and us-gov-west-1) region = "us-west-2" # Optional: Node group configuration +# For Xen, any supported instance type works: instance_types = ["m5n.xlarge"] +# For KVM, use a metal instance or a nested-virtualization-capable type: +# instance_types = ["m7i.xlarge"] +# Supported KVM families: C8i, M8i, R8i, C7i, M7i, R7i (and variants), or any *.metal type desired_size = 2 min_size = 1 max_size = 3 # Optional: SSH access to worker nodes (default: disabled) # enable_ssh_access = true -# ssh_key_name = "my-ec2-keypair" \ No newline at end of file +# ssh_key_name = "my-ec2-keypair"