This module manages required AWS Kubernetes resources as EKS clusters.
Uses terraform-aws-modules/eks/aws for implementation.
Instantiate the module by calling it from Terraform like this:
module "aws-eks" {
source = "dodevops/kubernetes/aws"
version = "<version>"
(...)
}
The following requirements are needed by this module:
- kubernetes (>=2.19.0)
The following providers are used by this module:
- aws
The following Modules are called:
Source: terraform-aws-modules/eks/aws
Version: 19.10.0
The following resources are used by this module:
- aws_eks_cluster_auth.k8s (data source)
The following input variables are required:
Description: Desired content of the aws-auth configmap
Type: list(any)
Description: Kubernetes version to use for the EKS cluster.
Type: string
Description: List of Nodegroup configurations
- suffix: Nodegroup name suffix
- subnet_ids: Ids of used subnets in the nodegroup
- scaling: Scaling configuration
- desired: Desired number of nodes
- min: Minimum number of nodes
- max: Maximum number of nodes
- disk_size: Disk size in GB
- instance_type: Instance type of the nodes}
Type:
list(object({
suffix : string,
subnet_ids : list(string),
scaling : object({
min : number,
max : number,
desired : number
}),
disk_size : number,
instance_type : string
}))
Description: Project this configuration is for
Type: any
Description: Name of the stage for this state
Type: string
Description: List of IDs of subnets to use in the EKS
Type: list(string)
Description: List of IDs of subnets to use in the EKS
Type: list(string)
Description: ID of the VPC the cluster is in
Type: string
No optional inputs.
The following outputs are exported:
Description: CA certificate of the EKS endpoint
Description: EKS cluster endpoint
Description: OIDC provider used by the EKS
Description: Auth token for the EKS endpoint
Use terraform-docs to generate the API documentation by running
terraform fmt .
terraform-docs .