Commit Graph

71 Commits

Author SHA1 Message Date
Anton Babenko
2bdf7d7dd6 refactor: Refactoring to match the rest of terraform-aws-modules (#1583) 2021-09-16 11:35:44 +02:00
nikitacr7
7512f171c9 feat: Add ability to tag network-interface using Launch Template (#1563) 2021-09-06 11:25:31 +02:00
Olesia Ivanenko
8e1d5c11b7 feat: Tags passed into worker_groups_launch_template extend var.tags for the volumes (#1397) 2021-08-31 15:11:43 +02:00
LAKostis
1e2c32430f feat: Add capacity_rebalance support for self-managed worker groups (#1326) 2021-06-03 23:41:39 +02:00
Thierno IB. BARRY
65f5e2e497 fix: Don't add tags on network interfaces because it's not supported yet in terraform-provider-aws (#1407) 2021-05-28 16:49:15 +02:00
Thierno IB. BARRY
fcc2fdc993 feat: Define Root device name for Windows self-managed worker groups (#1401)
NOTES: Since we now search only for Linux or Windows AMI if there is a worker groups for the corresponding plateform, we can now define different default root block device name for each plateform. Use locals `root_block_device_name` and `root_block_device_name_windows` to define your owns.
2021-05-28 10:35:51 +02:00
alexmnyc
c43d545158 feat: Add tags on network interfaces (#1362) 2021-05-27 22:01:09 +02:00
Jason Witkowski
6aac9c4961 feat: Add instance store volume option for instances with local disk (#1213) 2021-05-27 21:46:38 +02:00
Benjamin Ash
a2761ad685 fix: set an ASG's launch template version to an explicit version to automatically trigger instance refresh (#1370)
NOTES: Set an ASG's launch template version to an explicit version automatically. This will ensure that an instance refresh will be triggered whenever the launch template changes. The default `launch_template_version` is now used to determine the latest or default version of the created launch template for self-managed worker groups.

Signed-off-by: Benjamin Ash <bash@intelerad.com>
Co-authored-by: Thierno IB. BARRY <ibrahima.br@gmail.com>
2021-05-19 16:34:59 +02:00
Benjamin Ash
68e9df92c3 feat: Add support for Auto Scaling Group Instance Refresh for self-managed worker groups (#1224)
Co-authored-by: Thierno IB. BARRY <ibrahima.br@gmail.com>
2021-05-17 22:12:53 +02:00
Thierno IB. BARRY
32f70afe60 feat: Drop asg_recreate_on_change feature to encourage the usage of Instance Refresh for EC2 Auto Scaling (#1360)
BREAKING CHANGES: This module used `random_pet` resources to create a random name for the autoscaling group to force the autoscaling group to be re-created when the launch configuration or launch template was changed (if `recreate_asg_when_lc_changes = true` was set), causing the instances to be removed and re-provisioned each time there was an update. Those random_pet resources has been removed and in its place there is now a set of functionality provided by AWS and the Terraform AWS provider - Instance Refresh. We encourage those users to move on Instance Refresh for EC2 Auto Scaling.
2021-05-17 16:20:35 +02:00
Dov Salomon
f7d09a2901 feat: Remove dependency on deprecated hashicorp/template provider (#1297)
BREAKING CHANGES: We remove the dependency on the deprecated `hashicorp/template` provider and use the Terraform built in `templatefile` function. This will broke some workflows due to previously being able to pass in the raw contents of a template file for processing. The `templatefile` function requires a template file that exists before running a plan.
2021-05-17 10:25:38 +02:00
Neven Miculinic
3ecdc20ce6 fix: Replace list with tolist function for working with terraform v0.15.0 (#1317) 2021-05-04 21:58:44 +02:00
Ivan Sukhomlyn
c12c186432 feat: Add tags on additional IAM resources like IAM policies, instance profile, OIDC provider (#1321) 2021-05-04 21:55:49 +02:00
Sergiu Plotnicu
2549408803 feat: Add support for ASG Warm Pools (#1310) 2021-04-19 23:05:06 +02:00
Rucha Kulkarni
26d40d2f1d feat: Add support for specifying elastic inference accelerator (#1176) 2021-04-19 22:46:17 +02:00
Anton Babenko
ffdc7a79a5 fix: Fixed list and map usage (#1307) 2021-04-16 12:43:02 +02:00
Tjeu Kayim
2a6f07a0e8 fix: Updated code and version requirements to work with Terraform 0.15 (#1165) 2021-04-16 09:56:37 +02:00
Sean P. Kane
4fc609bd22 feat: Add nitro enclave support for EKS (#1185) 2021-01-28 23:45:41 +01:00
Siddarth Prakash
7d6e672303 feat: Add support for throughput parameter for gp3 volumes (#1146) 2020-12-22 16:26:47 +01:00
svaranasi-traderev
ccacc17792 feat: Add customizable Auto Scaling Group health check type (#1118) 2020-12-22 11:55:43 +01:00
Thierno IB. BARRY
ea2f6982d5 chore: Fix terraform format for TF 0.14 (#1157) 2020-12-22 11:32:13 +01:00
huddy
63217467a9 improvement: Tags passed into worker groups should also be excluded from Launch Template tag specification (#1095) 2020-11-12 10:17:55 +01:00
huddy
bba7c151c8 feat: Tags passed into worker groups override tags from var.tags for Autoscaling Groups (#1092)
NOTES: Tags that are passed into `var.worker_groups_launch_template` or `var.worker_groups` now override tags passed in via `var.tags` for Autoscaling Groups only. This allow ASG Tags to be overwritten, so that `propagate_at_launch` can be tweaked for a particular key.
2020-11-07 22:20:22 +01:00
Thierno IB. BARRY
d97edde9cd fix: Use splat syntax to avoid errors during destroy with an empty state (#1041) 2020-10-12 21:59:29 +02:00
Thierno IB. BARRY
c75fbb0164 fix: Fix cycle error during the destroy phase when we change workers order (#1043)
NOTES: Keep in mind that changing the order of workers group is a destructive operation. All workers group are destroyed and recreated. If you want to do this safely, you should move then in state with `terraform state mv` until we manage workers groups as maps.
2020-10-12 21:50:22 +02:00
Guillaume GILL
93614b329d improvement: Make the cpu_credits optional for workers launch template (#1030)
NOTES: `credit_specification` for worker groups launch template can now be set to `null` so that we can use non burstable EC2 families
2020-10-05 15:24:47 +02:00
hacker65536
8c8f4b56eb feat: Add load_balancers parameter to associate a CLB (Classic Load Balancer) to worker groups ASG (#992) 2020-10-05 15:07:57 +02:00
Daniel Piddock
bceb966dfd fix: More compatibility fixes for Terraform v0.13 and aws v3 (#976)
Additional support for Terraform v0.13 and aws v3!
- The update to the vpc module in examples was, strictly speaking, unnecessary but it adds the terraform block with supported versions.
- Update for iam module in the example was very necessary to support new versions
- Workaround for "Provider produced inconsistent final plan" when creating ASGs at the same time as the cluster. See  https://github.com/terraform-providers/terraform-provider-aws/issues/14085 for full details.
- Blacklist 0.13.0 as it was too strict when migrating from aws v2 to v3 about dropped attributes.
2020-09-08 18:25:46 +02:00
Jürgen W
f45b5a1d46 fix: random_pet with LT workers under 0.13.0 (#940)
Fix for:
Error: Provider produced inconsistent final plan

When expanding the plan for module.eks.random_pet.workers_launch_template[0]
to include new values learned so far during apply, provider
"registry.terraform.io/hashicorp/random" changed the planned action from
CreateThenDelete to DeleteThenCreate.
2020-08-14 15:23:17 +02:00
Daniel Quackenbush
23ad497557 feat: IMDSv2 metadata configuration in Launch Templates (#938)
NOTES: Addition of the IMDSv2 metadata configuration block to Launch Templates will cause a diff to be generated for existing Launch Templates on first Terraform apply. The defaults match existing behaviour.
2020-07-12 18:25:48 +02:00
Marcus Vaal
db9bb0b482 feat: worker launch templates and configurations depend on security group rules and IAM policies (#933)
In order to ensure proper ordering when running terraform destroy. This will block Terraform from removing up security group rules before the cluster has finished its clean up chores.
2020-07-12 17:14:36 +02:00
Tim Robinson
c4edc6fbcc fix: Get on_demand_allocation_strategy from local.workers_group_defaults when deciding to use mixed_instances_policy (#908) 2020-06-24 09:31:05 +02:00
Daniel Piddock
7de18cd9cd fix: Revert removal of templates provider (#883)
Broke use case of passing in custom template content. Reverts most of the following PRs:
- #865
- #863 
- #854
2020-06-05 10:34:23 +02:00
Daniel Piddock
bb822a1e56 fix: Fix Launch Templates error with aws 2.61.0 (#875) 2020-05-09 19:58:38 +02:00
Daniel Piddock
b183b97253 improvement: Remove dependency on external template provider (#854)
* Remove template_file for generating kubeconfig

Push logic from terraform down to the template. Makes the formatting
slightly easier to follow

* Remove template_file for generating userdata

Updates to the eks_cluster now do not trigger recreation of launch
configurations

* Remove template_file for LT userdata

* Remove template dependency
2020-05-06 10:54:14 +02:00
Ilya Nemakov
c8195c5348 feat: Add instance tag specifications to Launch Template (#822) 2020-03-30 18:27:56 +02:00
Jaime Hidalgo García
de00694a63 feat: Add support for additional volumes in launch templates and launch configurations (#800)
Co-authored-by: Jaime Hidalgo <jhidalgo@cccis.com>
Co-authored-by: Thierno IB. BARRY <ibrahima.br@gmail.com>
2020-03-24 23:28:59 +01:00
Arie Lev
f465e55721 Add ASG cooldown and health_check_grace_period (#770)
* Add default_cooldown/health_check oprions

* Update CHANGELOG.md

* Update CHANGELOG.md

Co-Authored-By: Thierno IB. BARRY <ibrahima.br@gmail.com>

Co-authored-by: Thierno IB. BARRY <ibrahima.br@gmail.com>
2020-03-10 11:20:11 +01:00
Siddarth Prakash
198294c0b6 Add support for ASG max instance lifetime (#769)
Co-authored-by: Thierno IB. BARRY <ibrahima.br@gmail.com>
2020-03-09 23:31:52 +01:00
Max Williams
626a393ab9 Remove of autoscaling IAM policy related stuff (#716)
* Disable management of autoscaling IAM policy by default

* remove completely

* update changelog notes

* fix pre-commit stuff

* misc updates

* fmt

* fix changelog

* Removal of tags and update docs

* Change after updating terraform-docs

* Add second tag
2020-02-04 19:34:17 +01:00
Tomislav Tomašić
124ea7c151 Add destroy time flag (#580)
* Add destroy-time flag

* Update changelog

Fix cluster count

* Fix cluster count

* Fix docs

* Fix outputs

* Fix unsupported attribute on cluster_certificate_authority_data output

Co-Authored-By: Daniel Piddock <33028589+dpiddockcmp@users.noreply.github.com>

* Remove unnecessary flatten from cluster_endpoint output

Co-Authored-By: Daniel Piddock <33028589+dpiddockcmp@users.noreply.github.com>

* Improve description of var.enabled

* Fix errors manifesting when used on an existing-cluster

* Update README.md

* Renamed destroy-time flag

* Revert removal of changelog addition entry

* Update flag name in readme

* Update flag variable name

* Update cluster referencing for consistency

* Update flag name to `create_eks`

* Fixed incorrect count-based reference to aws_eks_cluster.this (there's only one)

* Replaced all incorrect aws_eks_cluster.this[count.index] references (there will be just one, so using '[0]').

* Changelog update, explicitly mentioning flag

* Fixed interpolation deprecation warning

* Fixed outputs to support conditional cluster

* Applied create_eks to aws_auth.tf

* Removed unused variable. Updated Changelog. Formatting.

* Fixed references to aws_eks_cluster.this[0] that would raise errors when setting create_eks to false whilst having launch templates or launch configurations configured.

* Readme and example updates.

* Revert "Readme and example updates."

This reverts commit 18a0746355e136010ad54858a1b518406f6a3638.

* Updated readme section of conditionally creation with provider example.

* Added conditions to node_groups.

* Fixed reversed map_roles check

* Update aws_auth.tf

Revert this due to https://github.com/terraform-aws-modules/terraform-aws-eks/pull/611
2019-12-09 10:06:10 +01:00
Joonsung Lee
2d52e06786 Add Windows support (#555)
* Add Windows support

* Assign eks:kube-proxy-windows group to worker nodes

* Add Instructions for adding Windows Workers at FAQ.md

* Remove unnecessary variables from userdata_windows.tpl

* Update CHANGELOG.md
2019-10-28 14:16:45 +01:00
Jeff Hastings
2e2f2acada change ebs_optimized mapping to list where not supported (#561)
* change ebs_optimized mapping to list where not supported

* update changelog
2019-10-21 12:57:29 +02:00
Thierno IB. BARRY
186c88a34b Add option to enable lifecycle hooks creation (#532)
* add option to enable lifecycle hooks creation

* update changelog
2019-09-26 19:40:41 +02:00
Tomas Ostasevicius
4f4d9c304d Fix launch template market option expansion (#508)
* Fix launch template market option expansion

* Update changelog
2019-09-16 11:32:39 +02:00
Sergiu Plotnicu
461cf5482e Support for Mixed Instances ASG in worker_groups_launch_template variable (#468)
* Create ASG tags via for - utility from terraform 12

* Updated support for mixed ASG in worker_groups_launch_template variable

* Updated launch_template example to include spot and mixed ASG with worker_groups_launch_template variable

* Removed old config

* Removed workers_launch_template_mixed.tf file, added support for mixed/spot in workers_launch_template variable

* Updated examples/spot_instances/main.tf with Mixed Spot and ondemand instances

* Removed launch_template_mixed from relevant files

* Updated README.md file

* Removed workers_launch_template.tf.bkp

* Fixed case with null on_demand_allocation_strategy and Spot allocation

* Fixed workers_launch_template.tf, covered spot instances via Launch Template
2019-09-13 16:50:59 +02:00
Thierno IB. BARRY
4264a5fe6e use default_iam_role_id interpolation for aws_iam_instance_profile (#489) 2019-09-11 18:25:33 +02:00
Thierno IB. BARRY
d6d0975452 add initial lifecycle hooks for autosacling groups (#466) 2019-08-20 15:45:06 +02:00
Thierno IB. BARRY
d8ed7d0b66 add option to recreate ASG when LT or LC changes (#465) 2019-08-20 15:43:18 +02:00