Skip to content

Commit

Permalink
Default karpenter_node_groups to null (#328)
Browse files Browse the repository at this point in the history
  • Loading branch information
miguelhar authored Jan 29, 2025
1 parent 6ada205 commit 46578e4
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 2 deletions.
2 changes: 1 addition & 1 deletion modules/nodes/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ No modules.
| <a name="input_default_node_groups"></a> [default\_node\_groups](#input\_default\_node\_groups) | EKS managed node groups definition. | <pre>object(<br/> {<br/> compute = object(<br/> {<br/> ami = optional(string, null)<br/> bootstrap_extra_args = optional(string, "")<br/> instance_types = optional(list(string), ["m6i.2xlarge"])<br/> spot = optional(bool, false)<br/> min_per_az = optional(number, 0)<br/> max_per_az = optional(number, 10)<br/> max_unavailable_percentage = optional(number, 50)<br/> max_unavailable = optional(number, null)<br/> desired_per_az = optional(number, 0)<br/> availability_zone_ids = list(string)<br/> labels = optional(map(string), {<br/> "dominodatalab.com/node-pool" = "default"<br/> })<br/> taints = optional(list(object({<br/> key = string<br/> value = optional(string)<br/> effect = string<br/> })), [<br/> {<br/> key = "ebs.csi.aws.com/agent-not-ready",<br/> value = "true",<br/> effect = "NO_EXECUTE"<br/> }<br/> ])<br/> tags = optional(map(string), {})<br/> gpu = optional(bool, null)<br/> volume = optional(object({<br/> size = optional(number, 1000)<br/> type = optional(string, "gp3")<br/> iops = optional(number)<br/> throughput = optional(number, 500)<br/> }), {<br/> size = 1000<br/> type = "gp3"<br/> iops = null<br/> throughput = 500<br/> }<br/> )<br/> }),<br/> platform = object(<br/> {<br/> ami = optional(string, null)<br/> bootstrap_extra_args = optional(string, "")<br/> instance_types = optional(list(string), ["m7i-flex.2xlarge"])<br/> spot = optional(bool, false)<br/> min_per_az = optional(number, 1)<br/> max_per_az = optional(number, 10)<br/> max_unavailable_percentage = optional(number, null)<br/> max_unavailable = optional(number, 1)<br/> desired_per_az = optional(number, 1)<br/> availability_zone_ids = list(string)<br/> labels = optional(map(string), {<br/> "dominodatalab.com/node-pool" = "platform"<br/> })<br/> taints = optional(list(object({<br/> key = string<br/> value = optional(string)<br/> effect = string<br/> })), []<br/> )<br/> tags = optional(map(string), {})<br/> gpu = optional(bool, null)<br/> volume = optional(object({<br/> size = optional(number, 100)<br/> type = optional(string, "gp3")<br/> iops = optional(number)<br/> throughput = optional(number)<br/> }), {<br/> size = 100<br/> type = "gp3"<br/> iops = null<br/> throughput = null<br/> }<br/> )<br/> }),<br/> gpu = object(<br/> {<br/> ami = optional(string, null)<br/> bootstrap_extra_args = optional(string, "")<br/> instance_types = optional(list(string), ["g5.2xlarge"])<br/> spot = optional(bool, false)<br/> min_per_az = optional(number, 0)<br/> max_per_az = optional(number, 10)<br/> max_unavailable_percentage = optional(number, 50)<br/> max_unavailable = optional(number, null)<br/> desired_per_az = optional(number, 0)<br/> availability_zone_ids = list(string)<br/> labels = optional(map(string), {<br/> "dominodatalab.com/node-pool" = "default-gpu"<br/> "nvidia.com/gpu" = true<br/> })<br/> taints = optional(list(object({<br/> key = string<br/> value = optional(string)<br/> effect = string<br/> })), [{<br/> key = "nvidia.com/gpu"<br/> value = "true"<br/> effect = "NO_SCHEDULE"<br/> },<br/> {<br/> key = "ebs.csi.aws.com/agent-not-ready",<br/> value = "true",<br/> effect = "NO_EXECUTE"<br/> }<br/><br/> ])<br/> tags = optional(map(string), {})<br/> gpu = optional(bool, null)<br/> volume = optional(object({<br/> size = optional(number, 1000)<br/> type = optional(string, "gp3")<br/> iops = optional(number)<br/> throughput = optional(number, 500)<br/> }), {<br/> size = 1000<br/> type = "gp3"<br/> iops = null<br/> throughput = 500<br/> }<br/> )<br/> })<br/> })</pre> | <pre>{<br/> "compute": {<br/> "availability_zone_ids": []<br/> },<br/> "gpu": {<br/> "availability_zone_ids": []<br/> },<br/> "platform": {<br/> "availability_zone_ids": []<br/> }<br/>}</pre> | no |
| <a name="input_eks_info"></a> [eks\_info](#input\_eks\_info) | cluster = {<br/> addons = List of addons<br/> specs = Cluster spes. {<br/> name = Cluster name.<br/> endpoint = Cluster endpont.<br/> kubernetes\_network\_config = Cluster k8s nw config.<br/> }<br/> version = K8s version.<br/> arn = EKS Cluster arn.<br/> security\_group\_id = EKS Cluster security group id.<br/> endpoint = EKS Cluster API endpoint.<br/> roles = Default IAM Roles associated with the EKS cluster. {<br/> name = string<br/> arn = string<br/> }<br/> custom\_roles = Custom IAM Roles associated with the EKS cluster. {<br/> rolearn = string<br/> username = string<br/> groups = list(string)<br/> }<br/> oidc = {<br/> arn = OIDC provider ARN.<br/> url = OIDC provider url.<br/> }<br/> }<br/> nodes = {<br/> security\_group\_id = EKS Nodes security group id.<br/> roles = IAM Roles associated with the EKS Nodes.{<br/> name = string<br/> arn = string<br/> }<br/> }<br/> kubeconfig = Kubeconfig details.{<br/> path = string<br/> extra\_args = string<br/> } | <pre>object({<br/> k8s_pre_setup_sh_file = string<br/> cluster = object({<br/> addons = optional(list(string), ["kube-proxy", "coredns", "vpc-cni", "eks-pod-identity-agent"])<br/> vpc_cni = optional(object({<br/> prefix_delegation = optional(bool, false)<br/> annotate_pod_ip = optional(bool, true)<br/> }))<br/> specs = object({<br/> name = string<br/> endpoint = string<br/> kubernetes_network_config = object({<br/> elastic_load_balancing = object({<br/> enabled = bool<br/> })<br/> ip_family = string<br/> service_ipv4_cidr = string<br/> service_ipv6_cidr = string<br/> })<br/> certificate_authority = list(map(any))<br/> })<br/> version = string<br/> arn = string<br/> security_group_id = string<br/> endpoint = string<br/> roles = list(object({<br/> name = string<br/> arn = string<br/> }))<br/> custom_roles = list(object({<br/> rolearn = string<br/> username = string<br/> groups = list(string)<br/> }))<br/> oidc = object({<br/> arn = string<br/> url = string<br/> })<br/> })<br/> nodes = object({<br/> security_group_id = string<br/> roles = list(object({<br/> name = string<br/> arn = string<br/> }))<br/> })<br/> kubeconfig = object({<br/> path = string<br/> extra_args = string<br/> })<br/> })</pre> | n/a | yes |
| <a name="input_ignore_tags"></a> [ignore\_tags](#input\_ignore\_tags) | Tag keys to be ignored by the aws provider. | `list(string)` | `[]` | no |
| <a name="input_karpenter_node_groups"></a> [karpenter\_node\_groups](#input\_karpenter\_node\_groups) | Node groups for karpenter. | <pre>map(object({<br/> single_nodegroup = optional(bool, false)<br/> ami = optional(string, null)<br/> bootstrap_extra_args = optional(string, "")<br/> instance_types = optional(list(string), ["m6a.large"])<br/> spot = optional(bool, false)<br/> min_per_az = optional(number, 1)<br/> max_per_az = optional(number, 3)<br/> max_unavailable_percentage = optional(number, 50)<br/> max_unavailable = optional(number)<br/> desired_per_az = optional(number, 1)<br/> availability_zone_ids = list(string)<br/> labels = optional(map(string), {<br/> "dominodatalab.com/node-pool" = "karpenter"<br/> })<br/> taints = optional(list(object({<br/> key = string<br/> value = optional(string)<br/> effect = string<br/> })), [])<br/> tags = optional(map(string), {})<br/> gpu = optional(bool, null)<br/> volume = optional(object({<br/> size = optional(string, "30")<br/> type = optional(string, "gp3")<br/> iops = optional(number)<br/> throughput = optional(number, 500)<br/> }), {})<br/> }))</pre> | `{}` | no |
| <a name="input_karpenter_node_groups"></a> [karpenter\_node\_groups](#input\_karpenter\_node\_groups) | Node groups for karpenter. | <pre>map(object({<br/> single_nodegroup = optional(bool, false)<br/> ami = optional(string, null)<br/> bootstrap_extra_args = optional(string, "")<br/> instance_types = optional(list(string), ["m6a.large"])<br/> spot = optional(bool, false)<br/> min_per_az = optional(number, 1)<br/> max_per_az = optional(number, 3)<br/> max_unavailable_percentage = optional(number, 50)<br/> max_unavailable = optional(number)<br/> desired_per_az = optional(number, 1)<br/> availability_zone_ids = list(string)<br/> labels = optional(map(string), {<br/> "dominodatalab.com/node-pool" = "karpenter"<br/> })<br/> taints = optional(list(object({<br/> key = string<br/> value = optional(string)<br/> effect = string<br/> })), [])<br/> tags = optional(map(string), {})<br/> gpu = optional(bool, null)<br/> volume = optional(object({<br/> size = optional(string, "30")<br/> type = optional(string, "gp3")<br/> iops = optional(number)<br/> throughput = optional(number, 500)<br/> }), {})<br/> }))</pre> | `null` | no |
| <a name="input_kms_info"></a> [kms\_info](#input\_kms\_info) | key\_id = KMS key id.<br/> key\_arn = KMS key arn.<br/> enabled = KMS key is enabled | <pre>object({<br/> key_id = string<br/> key_arn = string<br/> enabled = bool<br/> })</pre> | n/a | yes |
| <a name="input_network_info"></a> [network\_info](#input\_network\_info) | id = VPC ID.<br/> subnets = {<br/> public = List of public Subnets.<br/> [{<br/> name = Subnet name.<br/> subnet\_id = Subnet ud<br/> az = Subnet availability\_zone<br/> az\_id = Subnet availability\_zone\_id<br/> }]<br/> private = List of private Subnets.<br/> [{<br/> name = Subnet name.<br/> subnet\_id = Subnet ud<br/> az = Subnet availability\_zone<br/> az\_id = Subnet availability\_zone\_id<br/> }]<br/> pod = List of pod Subnets.<br/> [{<br/> name = Subnet name.<br/> subnet\_id = Subnet ud<br/> az = Subnet availability\_zone<br/> az\_id = Subnet availability\_zone\_id<br/> }]<br/> } | <pre>object({<br/> vpc_id = string<br/> subnets = object({<br/> public = list(object({<br/> name = string<br/> subnet_id = string<br/> az = string<br/> az_id = string<br/> }))<br/> private = optional(list(object({<br/> name = string<br/> subnet_id = string<br/> az = string<br/> az_id = string<br/> })), [])<br/> pod = optional(list(object({<br/> name = string<br/> subnet_id = string<br/> az = string<br/> az_id = string<br/> })), [])<br/> })<br/> })</pre> | n/a | yes |
| <a name="input_region"></a> [region](#input\_region) | AWS region for the deployment | `string` | n/a | yes |
Expand Down
2 changes: 1 addition & 1 deletion modules/nodes/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -353,7 +353,7 @@ variable "karpenter_node_groups" {
throughput = optional(number, 500)
}), {})
}))
default = {}
default = null
}

variable "tags" {
Expand Down

0 comments on commit 46578e4

Please sign in to comment.