Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Requirements

Name Version
terraform >= 1.5.0
aws >= 5.0
helm >= 3.1
kubernetes >= 2.29

Providers

Name Version
aws >= 5.0
helm >= 3.1
kubernetes >= 2.29

Modules

No modules.

Resources

Name Type
aws_iam_policy.nlb_controller resource
aws_iam_role.efs_csi resource
aws_iam_role.nlb_controller resource
aws_iam_role_policy_attachment.efs_csi resource
aws_iam_role_policy_attachment.nlb_controller resource
helm_release.efs_csi resource
helm_release.nlb_controller resource
helm_release.tigera_operator resource
kubernetes_storage_class_v1.ebs resource
kubernetes_storage_class_v1.efs resource

Inputs

Name Description Type Default Required
amazon_container_id AWS account id hosting the EKS public ECR images string "602401143452" no
cluster_name EKS cluster name string n/a yes
cluster_oidc_issuer_url The URL on the EKS cluster OIDC Issuer string null no
create_ebs_storage_class Whether to create the EBS storage class bool true no
create_efs_storage_class Whether to create the EFS storage class bool true no
ebs_storage_class_allow_volume_expansion Whether volumes from the EBS storage class support expansion bool true no
ebs_storage_class_is_default Whether to mark the EBS storage class as default bool true no
ebs_storage_class_name Name of the EBS storage class string "gp3" no
ebs_storage_class_reclaim_policy Reclaim policy for the EBS storage class (Retain or Delete) string "Delete" no
ebs_storage_class_volume_binding_mode Volume binding mode for the EBS storage class (Immediate or WaitForFirstConsumer) string "WaitForFirstConsumer" no
ebs_volume_type EBS volume type for the storage class (gp2, gp3, io1, etc.) string "gp3" no
efs_csi_namespace Namespace for the EFS CSI controller string "kube-system" no
efs_csi_role_arn IAM role ARN for the EFS CSI controller string null no
efs_csi_service_account Service account name for the EFS CSI controller string "efs-csi-controller-sa" no
efs_file_system_id ID of the backing EFS file system string null no
efs_storage_class_name Name of the EFS storage class string "efs-sc" no
efs_storage_class_reclaim_policy Reclaim policy for the EFS storage class (Retain or Delete) string "Retain" no
enable_aws_load_balancer_controller Deploy the AWS Load Balancer Controller via Helm bool true no
enable_calico Deploy Calico via Helm for network policy enforcement bool true no
enable_efs_csi_addon Deploy the EFS CSI driver via Helm bool true no
nlb_controller_namespace Namespace for the AWS Load Balancer Controller string "kube-system" no
nlb_controller_role_arn IAM role ARN for the AWS Load Balancer Controller string null no
nlb_controller_service_account Service account used by the AWS Load Balancer Controller string "aws-load-balancer-controller" no
oidc_provider_arn ARN of the OIDC Provider for the EKS cluster string null no
region AWS region where the cluster lives string n/a yes
tags Tags to apply to all resources created by this module map(string)
{
"Customer": "Quix",
"Environment": "Production"
}
no

Outputs

Name Description
cluster_name Name of the EKS cluster
cluster_region AWS region where the cluster is located
ebs_storage_class_enabled Whether the EBS storage class was created
ebs_storage_class_is_default Whether the EBS storage class is set as default
ebs_storage_class_name Name of the EBS storage class if created
ebs_storage_class_provisioner Storage provisioner used by the EBS storage class
ebs_storage_class_volume_type EBS volume type configured in the storage class
efs_csi_enabled Whether the EFS CSI driver was enabled
efs_csi_helm_release_name Name of the EFS CSI driver Helm release
efs_csi_namespace Namespace where the EFS CSI driver is installed
efs_storage_class_name Name of the EFS storage class if created
efs_storage_class_provisioner Storage provisioner used by the EFS storage class
module_tags Tags applied to resources created by this module
nlb_controller_enabled Whether the AWS Load Balancer Controller was enabled
nlb_controller_namespace Namespace where the AWS Load Balancer Controller is installed
nlb_controller_service_account Service account used by the AWS Load Balancer Controller