# EKS Module Variables variable "cluster_name" { description = "Name of the EKS cluster" type = string } variable "cluster_role_arn" { description = "ARN of the IAM role for the EKS cluster" type = string } variable "node_role_arn" { description = "ARN of the IAM role for EKS nodes" type = string } variable "private_subnet_ids" { description = "List of private subnet IDs for EKS nodes" type = list(string) } variable "public_subnet_ids" { description = "List of public subnet IDs for EKS control plane" type = list(string) } variable "cluster_security_group_id" { description = "Security group ID for EKS cluster" type = string } variable "kms_key_arn" { description = "ARN of KMS key for EKS encryption" type = string } variable "kubernetes_version" { description = "Kubernetes version for EKS cluster" type = string default = "1.28" } variable "endpoint_public_access" { description = "Enable public access to EKS cluster endpoint" type = bool default = false } variable "public_access_cidrs" { description = "CIDR blocks allowed to access EKS cluster endpoint" type = list(string) default = ["0.0.0.0/0"] } variable "cluster_log_types" { description = "List of cluster log types to enable" type = list(string) default = ["api", "audit", "authenticator", "controllerManager", "scheduler"] } variable "log_retention_days" { description = "Number of days to retain CloudWatch logs" type = number default = 30 } variable "vpc_cni_version" { description = "Version of VPC CNI addon" type = string default = "v1.14.0-eksbuild.3" } variable "kube_proxy_version" { description = "Version of kube-proxy addon" type = string default = "v1.28.1-eksbuild.1" } variable "coredns_version" { description = "Version of CoreDNS addon" type = string default = "v1.10.1-eksbuild.2" } variable "ebs_csi_driver_version" { description = "Version of EBS CSI driver addon" type = string default = "v1.24.0-eksbuild.1" } variable "enable_ebs_csi_driver" { description = "Enable EBS CSI driver addon" type = bool default = true } variable "enable_irsa" { description = "Enable IAM Roles for Service Accounts (IRSA)" type = bool default = true } variable "enable_aws_load_balancer_controller" { description = "Enable AWS Load Balancer Controller IAM role" type = bool default = true } variable "node_instance_types" { description = "List of instance types for EKS nodes" type = list(string) default = ["t3.medium"] } variable "capacity_type" { description = "Capacity type for EKS nodes (ON_DEMAND or SPOT)" type = string default = "ON_DEMAND" } variable "node_disk_size" { description = "Disk size for EKS nodes in GB" type = number default = 50 } variable "min_nodes" { description = "Minimum number of EKS nodes" type = number default = 1 } variable "max_nodes" { description = "Maximum number of EKS nodes" type = number default = 3 } variable "desired_nodes" { description = "Desired number of EKS nodes" type = number default = 2 } variable "node_labels" { description = "Labels to apply to EKS nodes" type = map(string) default = {} } variable "node_taints" { description = "Taints to apply to EKS nodes" type = list(object({ key = string value = string effect = string })) default = [] } variable "tags" { description = "Tags to apply to resources" type = map(string) default = {} }