Commit Graph

162 Commits

Author SHA1 Message Date
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
Anand Capur
d876ac4ef1 feat: Add Bottlerocket FIPS image variants (#3275)
fix: Add Bottlerocket FIPS image variants
2025-01-17 10:17:37 -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
Lawrence Aiello
6168518339 chore: Add TODO to turn off detailed monitoring by default at next breaking change (#3233)
* chore: disable detailed monitoring by default

* docs: change default input value

* chore: add comment to change at next breaking change

* docs: change default back
2024-12-08 17:12:06 -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
c6da22c78f feat: Add support for creating efa-only network interfaces (#3196) 2024-11-02 08:33:13 -05:00
Bryant Biggs
1b0ac83264 feat: Add support for zonal shift (#3195) 2024-11-01 16:50:19 -05:00
joey100
dea6c44b45 fix: Use dynamic partition data source to determine DNS suffix for Karpenter EC2 pass role permission (#3193)
* fix karpenter iam passrole to ec2 api bug, to support aws cn

* fix: Use dyanmic partition value for DNS suffix

---------

Co-authored-by: Shuiping <shuiping@Shuipings-MacBook-Pro.local>
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-10-26 19:12:25 -05:00
Bryant Biggs
4abc779c0e docs: Correct doc links following examples/tests re-org (#3187) 2024-10-22 10:08:16 -05:00
dtscssap
6974a5e158 feat: Add support for desired_capacity_type (named desired_size_type) on self-managed node group (#3166)
* set desired_capacity_type

* fix: Add variable with `null` type and pass through node group

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-10-12 11:57: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
Jami Karvanen
fef655585b fix: Add primary_ipv6 parameter to self-managed-node-group (#3169)
Add primary_ipv6 parameter to self-managed-node-group
2024-10-03 08:54:52 -05:00
Bryant Biggs
8b90872983 fix: Remove deprecated inline_policy from cluster role (#3163) 2024-09-21 09:45:50 -05:00
Bryant Biggs
47ab3eb884 fix: Correct Karpenter EC2 service principal DNS suffix in non-commercial regions (#3157) 2024-09-16 10:36:15 -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
Josephuss
75db486530 feat: Enable update in place for node groups with cluster placement group strategy (#3045)
* feat(eks):added subnet az filter for eks nodegroup placement groups

* fix: Correct logice for restricting placement group to AZ

* fix: Ensure node group args are passed from root module

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-08-05 10:13:39 -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
Ivan Ka
532226e64e feat: Enable support for ignore_failed_scaling_activities (#3104)
* feat(issue-3102): added support for ignore_failed_scaling_activities

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* Update node_groups.tf

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>

* Update modules/self-managed-node-group/variables.tf

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>

* feat(issue-3102): pre-commit checks sorted

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

---------

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-07-19 10:19:00 -04:00
Anton Chernev
e1bb8b6661 feat: Pass the primary_ipv6 argument to the AWS provider. (#3098)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-07-15 19:58:23 -04: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
ksbde
f6e071cd99 feat: Deny HTTP on Karpenter SQS policy (#3080) 2024-06-27 07:41:20 -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
Bryant Biggs
ef657bfcb5 feat: Require users to supply OS via ami_type and not via platform which is unable to distinquish between the number of variants supported today (#3068) 2024-06-13 07:50:26 -04:00
Ramsey McGrath
541dbb29f1 feat: Support additional cluster DNS IPs with Bottlerocket based AMIs (#3051)
* Support adding additional cluster dns ranges to bottlerocket template

* Add example for multiple dns ips

* fmt, and tf docs

* fix: Use a list by default for cluster-dns-ip

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-05-28 14:40:29 -04:00
Christopher Boyd
a070d7b2bd feat: Add SourceArn condition to Fargate profile trust policy (#3039)
feat: add `SourceArn` condition to fargate-profile assume_role_policy
2024-05-16 17:58:31 -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
74d39187d8 feat: Propagate ami_type to self-managed node group; allow using ami_type only (#3030) 2024-05-08 08:04:19 -04:00
Bryant Biggs
84effa0e30 fix: Pass nodeadm user data variables from root module down to nodegroup sub-modules (#2981) 2024-03-20 21:33:00 -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
Piotr Roszatycki
3ad19d7435 fix: Do not attach policy if Karpenter node role is not created by module (#2964) 2024-03-10 19:16:24 -04:00
Bryant Biggs
57f5130132 feat: Replace the use of toset() with static keys for node IAM role policy attachment (#2962) 2024-03-10 12:49:41 -04:00
James Masson
30316312f3 feat: Add supprot for creating placement group for managed node group (#2959)
Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-03-09 18:34:50 -05:00
Bryant Biggs
393da7ec0e feat: Add support for tracking latest AMI release version on managed nodegroups (#2951) 2024-03-08 22:48:38 -05: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
0ed32d7b29 fix: Use the launch_template_tags on the launch template (#2957) 2024-03-07 14:40:43 -05:00
Bryant Biggs
7c99bb19cd feat: Add support for AL2023 nodeadm user data (#2942) 2024-02-29 19:12:50 -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
Bryant Biggs
081c7624a5 fix: Replace Karpenter SQS policy dynamic service princpal DNS suffixes with static amazonaws.com (#2941)
fix: Replace dynamic service princpal DNS suffixes with static `amazonaws.com`
2024-02-21 17:30:49 -05:00
Nick Nikitas
671fc6e627 fix: Karpenter enable_spot_termination = false should not result in an error (#2907)
* Add condition for statement if enable_spot_termination is true

* Update modules/karpenter/main.tf

---------

Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-02-07 19:32:47 -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
Bryant Biggs
c36c8dc825 fix: Remove additional conditional on Karpenter instance profile creation to support upgrading (#2812) 2023-11-10 08:59:00 -05:00
Bryant Biggs
0732bea85f feat: Update KMS module to avoid calling data sources when create_kms_key = false (#2804) 2023-11-04 08:41:59 -04: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
JulianTheKalamari
ba0ebeb11a fix: Updating license_specification result type (#2798) 2023-10-30 14:40:03 -04:00