Inputs
The following input variables are supported:
bootstrap_cluster_creator_admin_privileges
Description: Whether to give cluster admin privileges to the cluster creator implicitly. Cannot be changed after cluster creation. For backwards compatibility purposes only.
Type: bool
Default: false
bootstrap_mode_enabled
Description: Whether the cluster is being bootstrapped and does not yet have the autoscaler enabled.
Type: bool
Default: false
cluster_description
Description: The purpose of the EKS cluster.
Type: string
Default: n/a
cluster_name
Description: The name of the EKS cluster resource.
Type: string
Default: n/a
control_plane_logging
Description: Which log streams to turn on for the control plane (will be sent to Cloudwatch and forwarded to DataDog)
Type: set(string)
Default: []
control_plane_subnets
Description: List of subnet names for the control plane. Must be in at least two different availability zones.
Type: set(string)
Default: []
dns_service_ip
Description: The IP address of the cluster’s DNS service. Must be inside the service_cidr range.
Type: string
Default: "172.20.0.10"
enable_public_access
Description: Whether the cluster control plane should be available from the public internet.
Type: bool
Default: true
extended_support_enabled
Description: Whether to enable extended support for EOL Kubernetes versions.
Type: bool
Default: true
extra_admin_principal_arns
Description: Grants read-write access to most resources (not included top-level cluster configuration) to the indicated principals.
Type: list(string)
Default: []
extra_reader_principal_arns
Description: Grants read access to all resources (including secrets) to the indicated principals.
Type: list(string)
Default: []
extra_restricted_reader_principal_arns
Description: Grants read access to all resources (not including secrets) to the indicated principals.
Type: list(string)
Default: []
extra_superuser_principal_arns
Description: Grants read-write access to all resources to the indicated principals.
Type: list(string)
Default: []
kube_version
Description: Desired Kubernetes version to use for all subsystems. Use only major and minor specifiers as patches will be automatically applied.
Type: string
Default: "1.33"
node_ami_name
Description: The name of the AMI to use for the controller nodes.
Type: string
Default: "bottlerocket-aws-k8s-1.33-aarch64-v1.57.0-beaadc52"
node_ebs_volume_size_gb
Description: The size of the EBS volume in GiB to use for each node.
Type: number
Default: 40
node_security_groups
Description: Names of security groups allowed to communicate directly with the cluster nodes.
Type: set(string)
Default: []
node_subnets
Description: List of names for subnets that controller nodes should be deployed to
Type: list(string)
Default: n/a
public_access_cidrs
Description: IP address ranges that can access the public control plane API endpoint.
Type: set(string)
Default:
[ "0.0.0.0/0"]root_user_access_entry_enabled
Description: Whether to enable the root user access entry
Type: bool
Default: true
service_cidr
Description: CIDR block that kubernetes will use for assigning service and pod ID addresses.
Type: string
Default: "172.20.0.0/16"
spot_nodes_enabled
Description: Whether to create spot instances instead of on-demand instances
Type: bool
Default: true
vpc_id
Description: The id for the VPC that the cluster should be deployed into
Type: string
Default: n/a
Outputs
The following outputs are exported:
cluster_ca_data
Description: The CA certificate for the Kubernetes API server
cluster_name
Description: The name of the EKS cluster
cluster_region
Description: The AWS region to which the EKS cluster is deployed
cluster_url
Description: The URL for the Kubernetes API server
dns_service_ip
Description: The IP address of the cluster’s DNS service.
node_instance_profile
Description: The instance profile assigned to controller nodes
node_role_arn
Description: The ARN of the role assigned to controller nodes
node_security_group_id
Description: ID of the security group assigned to controller nodes
user_data
Description: The user data file provided to the controller nodes
Providers
The following providers are needed by this module: