35 Commits

Author SHA1 Message Date
Michael Strassberger
681a868d62 fix: Restrict AWS provider max version due to v6 provider breaking changes (#3384)
* Add aws version constraint for 6.0.0

* fix: Restrict all AWS providers and Helm providers upper version limit

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2025-06-18 15:08:51 -05:00
Bryant Biggs
207d73fbaa feat: Add support for cluster force_update_version (#3345) 2025-04-18 11:29:13 -05:00
Eddie Bachle
1bfc10a558 docs: Update description of karpenter node_iam_role_use_name_prefix (#3304) 2025-02-18 19:07:34 -06:00
Kasper Jacobsen
edd7ef36dd feat: Add node repair config to managed node group (#3271)
* feat: add var.node_repair_config to eks-managed-node-group

Fixes terraform-aws-modules/terraform-aws-eks#3249

* chore: run terraform-docs

* chore: update examples/eks-managed-node-group

* fix: Correct implementation

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2025-01-17 11:35:47 -06:00
Bryant Biggs
012e51c055 fix: Update min provider version to remediate cluster replacement when enabling EKS Auto Mode (#3240) 2024-12-12 14:49:59 -06:00
Bryant Biggs
3b974d33ad feat: Add support for EKS Auto Mode and EKS Hybrid nodes (#3225)
* feat: Add support for EKS hybrid nodes

* feat: Add support for EKS Auto Mode

* chore: Update test directory names

* chore: Clean up examples and tests

* fix: Clean up and last minute changes for GA

* chore: Formatting

* chore: Bump min required version for new features

* fix: Corrects from test/validation on existing clusters

* feat: Add policy for custom tags on EKS Auto Mode, validate examples

* chore: Expand on `CAM` acronym

* chore: Update README to match examples
2024-12-04 09:24:21 -06:00
Bryant Biggs
a224334fc8 feat: Add support for pod identity association on EKS addons (#3203) 2024-11-08 15:56:56 -06:00
Bryant Biggs
1b0ac83264 feat: Add support for zonal shift (#3195) 2024-11-01 16:50:19 -05:00
Bryant Biggs
b2a8617794 feat: Add support for newly released AL2023 accelerated AMI types (#3177) 2024-10-12 11:44:24 -05:00
Bryant Biggs
8b90872983 fix: Remove deprecated inline_policy from cluster role (#3163) 2024-09-21 09:45:50 -05:00
Andy Townsend
e317651535 feat: Add support for Karpenter v1 controller IAM role permissions (#3126)
* chore: update controller IAM role permissions to support karpenter v1

* Update versions.tf

* Revert "Update versions.tf"

This reverts commit f0e5c791443301ef7f802c627efe7f7226b95046.

* fix: Add support for both v1 and prior to v1 controller permission policy

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-08-19 14:31:36 -05:00
Bryant Biggs
e12ab7a5de feat: Add support for upgrade_policy (#3112)
* feat: Add support for `upgrade_policy`

* chore: Update test and validate
2024-08-05 09:07:13 -05:00
Taehyun Kim
af88e7d2f8 feat: Support bootstrap_self_managed_addons (#3099)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-07-15 19:55:09 -04:00
Bryant Biggs
ae3379e924 feat: Add support for ML capacity block reservations with EKS managed node group(s) (#3091) 2024-07-05 11:42:31 -04:00
Bryant Biggs
1604c6cdc8 feat: Add support for custom IAM role policy (#3087) 2024-07-02 10:56:19 -04:00
Bryant Biggs
323fb759d7 docs: Move examples that are more like test cases to the new tests/ directory; add better example configurations (#3069)
* chore: Move examples that are more like test cases to the new `tests/` directory

* chore: Stash

* feat: Add better examples for EKS managed node groups

* chore: Add better examples for self-managed node groups

* chore: Update docs and correct `nodegroup` to `node group`
2024-06-13 10:51:40 -04:00
Rodrigo Bersa
cfcaf27ac7 feat: Add support for Pod Identity assocation on Karpenter sub-module (#3031)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-05-09 07:57:57 -04:00
Bryant Biggs
aeb9f0c990 fix: Ensure the correct service CIDR and IP family is used in the rendered user data (#2963)
* fix: Ensuring the correct service CIDR and IP family is used in the rendered user data

* chore: Updates from testing and validating

* chore: Fix example destroy instructions

* fix: Only require `cluster_service_cidr` when `create = true`

* chore: Clean up commented out code and add note on check length
2024-03-12 10:36:19 -04:00
Bryant Biggs
29dcca335d fix: Ensure a default ip_family value is provided to guarantee a CNI policy is attached to nodes (#2967) 2024-03-11 11:02:59 -04:00
Bryant Biggs
dfe41141c2 fix: Update AWS provider version to support AL2023_* AMI types; ensure AL2023 user data receives cluster service CIDR (#2960)
* fix: Update AWS provider version to support `AL2023_*` AMI types

* fix: Ensure the cluster service CIDR is passed to the AL2023 user data where its required
2024-03-08 15:25:14 -05:00
Bryant Biggs
7f472ec660 feat: Add support for enabling EFA resources (#2936)
* feat: Add support for enabling EFA resources

* feat: Add support for creating placement group and ensuring subnet ID used supports the instance type provided

* chore: Update README and examples

* feat: Update AWS provider MSV to support `maximum_network_cards` attribute

* fix: Update self-managed example after last round of testing; improve EFA support wording
2024-02-23 09:29:10 -05:00
tculp
cc6919de81 feat: Allow enable/disable of EKS pod identity for the Karpenter controller (#2902)
* Made EKS pod identities for the controller role toggleable

* Switched the variable to the singular form

---------

Co-authored-by: Tyler Culp <tyler.culp@polestardefense.com>
2024-02-06 09:34:04 -05:00
Nihal
0381503cbb docs: Correct Karpenter variable references for changes made in v20.0 (#2900) 2024-02-05 14:57:05 -05:00
Bryant Biggs
6b40bdbb1d feat!: Replace the use of aws-auth configmap with EKS cluster access entry (#2858)
* feat: Replace `resolve_conflicts` with `resolve_conflicts_on_create`/`delete`; raise MSV of AWS provider to `v5.0` to support

* fix: Replace dynamic DNS suffix for `sts:AssumeRole` API calls for static suffix

* feat: Add module tag

* feat: Align Karpenter permissions with Karpenter v1beta1/v0.32 permissions from upstream

* refactor: Move `aws-auth` ConfigMap functionality to its own sub-module

* chore: Update examples

* feat: Add state `moved` block for Karpenter Pod Identity role re-name

* fix: Correct variable `create` description

* feat: Add support for cluster access entries

* chore: Bump MSV of Terraform to `1.3`

* fix: Replace defunct kubectl provider with an updated forked equivalent

* chore: Update and validate examples for access entry; clean up provider usage

* docs: Correct double redundant variable descriptions

* feat: Add support for Cloudwatch log group class argument

* fix: Update usage tag placement, fix Karpenter event spelling, add upcoming changes section to upgrade guide

* feat: Update Karpenter module to generalize naming used and align policy with the upstream Karpenter policy

* feat: Add native support for Windows based managed nodegroups similar to AL2 and Bottlerocket

* feat: Update self-managed nodegroup module to use latest features of ASG

* docs: Update and simplify docs

* fix: Correct variable description for AMI types

* fix: Update upgrade guide with changes; rename Karpenter controller resource names to support migrating for users

* docs: Complete upgrade guide docs for migration and changes applied

* Update examples/karpenter/README.md

Co-authored-by: Anton Babenko <anton@antonbabenko.com>

* Update examples/outposts/README.md

Co-authored-by: Anton Babenko <anton@antonbabenko.com>

* Update modules/karpenter/README.md

Co-authored-by: Anton Babenko <anton@antonbabenko.com>

---------

Co-authored-by: Anton Babenko <anton@antonbabenko.com>
2024-02-02 09:36:25 -05:00
Michael Barrientos
aec2bab1d8 feat: Add Karpenter v1beta1 compatibility (#2800)
* feat: Add Karpenter v1beta1 compatibility

* fix: Update to make changes opt-in

* fix: Update resource schemas to align with latest Karpenter version - validated and working as intended

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2023-11-01 11:33:07 -04:00
Bryant Biggs
f4766e5c27 fix: Karpenter node IAM role policies variable should be a map of strings, not list (#2771) 2023-10-10 11:57:29 -04:00
Jérémie Charest
feee18dd42 feat: Add support for allowed_instance_types on self-managed nodegroup ASG (#2757)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2023-10-06 09:20:13 -04:00
Joshua Pare
6c56e2ad20 fix: Ensure isra_tag_values can be tried before defaulting to cluster_name on Karpenter module (#2631)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2023-05-30 18:55:40 -04:00
Tung Nguyen
aa3bdf1c19 feat: Add irsa_tag_values variable (#2584) 2023-05-17 10:04:11 -04:00
Constantin Bugneac
bd387d69fa feat: Add optional list of policy ARNs for attachment to Karpenter IRSA (#2537)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2023-03-28 16:50:40 -04:00
Patrick Lee Scott
8954ff7bb4 feat: Allow setting custom IRSA policy name for karpenter (#2480) 2023-02-17 10:23:58 -05:00
Omer Levi Hevroni
68fe60f1c4 feat: Allow to pass prefix for rule names (#2437) 2023-02-07 07:04:45 -05:00
Bryant Biggs
3b62f6c316 feat: Add support for addon configuration_values (#2345)
Resolves undefined
2022-12-16 14:44:21 -05:00
Bryant Biggs
b2e97ca3dc feat!: Add support for Outposts, remove node security group, add support for addon preserve and most_recent configurations (#2250)
Co-authored-by: Anton Babenko <anton@antonbabenko.com>
Resolves undefined
2022-12-05 16:26:23 -05:00
Bryant Biggs
f24de3326d feat: New Karpenter sub-module for easily enabling Karpenter on EKS (#2303) 2022-11-21 13:50:34 -05:00