Skip to content

Commit 5fc2b27

Browse files
Merge pull request #32 from terraform-aws-modules/release/1.1.0
releasing 1.1.0
2 parents 236ccf9 + abe7291 commit 5fc2b27

File tree

5 files changed

+55
-27
lines changed

5 files changed

+55
-27
lines changed

CHANGELOG.md

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,21 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](http://keepachangelog.com/) and this
66
project adheres to [Semantic Versioning](http://semver.org/).
77

8-
## [[v1.0.1](https://github.com/terraform-aws-modules/terraform-aws-eks/compare/v1.0.0...v1.0.1)] - 2018-06-23]
8+
## [[v1.1.0](https://github.com/terraform-aws-modules/terraform-aws-eks/compare/v1.0.0...v1.1.0)] - 2018-06-25]
99

1010
### Added
1111

12-
- new variable `worker_sg_ingress_from_port` allows to change the minimum port number from which pods will accept communication
12+
- new variable `worker_sg_ingress_from_port` allows to change the minimum port number from which pods will accept communication (Thanks, @ilyasotkov 👏).
13+
- expanded on worker example to show how multiple worker autoscaling groups can be created.
14+
- IPv4 is used explicitly to resolve testing from IPv6 networks (thanks, @tsub 🙏).
15+
- Configurable public IP attachment and ssh keys for worker groups. Defaults defined in `worker_group_defaults`. Nice, @hatemosphere 🌂
16+
- `worker_iam_role_name` now an output. Sweet, @artursmet 🕶️
17+
18+
### Changed
19+
20+
- IAM test role repaired by @lcharkiewicz 💅
21+
- `kube-proxy` restart no longer needed in userdata. Good catch, @hatemosphere 🔥
22+
- worker ASG reattachment wasn't possible when using `name`. Moved to `name_prefix` to allow recreation of resources. Kudos again, @hatemosphere 🐧
1323

1424
## [[v1.0.0](https://github.com/terraform-aws-modules/terraform-aws-eks/compare/v0.2.0...v1.0.0)] - 2018-06-11]
1525

README.md

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ Read the [AWS docs on EKS to get connected to the k8s dashboard](https://docs.aw
1515
- You want to create an EKS cluster and an autoscaling group of workers for the cluster.
1616
- You want these resources to exist within security groups that allow communication and coordination. These can be user provided or created within the module.
1717
- You've created a Virtual Private Cloud (VPC) and subnets where you intend to put the EKS resources.
18+
- If using the default variable value (`true`) for `configure_kubectl_session`, it's required that both [`kubectl`](https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl) (>=1.10) and [`heptio-authenticator-aws`](https://github.com/heptio/authenticator#4-set-up-kubectl-to-use-heptio-authenticator-for-aws-tokens) are installed and on your shell's PATH.
1819

1920
## Usage example
2021

@@ -31,11 +32,11 @@ module "eks" {
3132
}
3233
```
3334

34-
## Dependencies
35+
## Release schedule
3536

36-
The `configure_kubectl_session` variable requires that both [`kubectl`](https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl)
37-
(>=1.10) and [`heptio-authenticator-aws`](https://github.com/heptio/authenticator#4-set-up-kubectl-to-use-heptio-authenticator-for-aws-tokens)
38-
are installed and on your shell's PATH.
37+
Generally the maintainers will try to release the module once every 2 weeks to
38+
keep up with PR additions. If particularly pressing changes are added or maintainers
39+
come up with the spare time (hah!), release may happen more often on occasion.
3940

4041
## Testing
4142

@@ -92,20 +93,20 @@ MIT Licensed. See [LICENSE](https://github.com/terraform-aws-modules/terraform-a
9293
9394
## Inputs
9495
95-
| Name | Description | Type | Default | Required |
96-
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :----: | :------: | :------: |
97-
| cluster_name | Name of the EKS cluster. Also used as a prefix in names of related resources. | string | - | yes |
98-
| cluster_security_group_id | If provided, the EKS cluster will be attached to this security group. If not given, a security group will be created with necessary ingres/egress to work with the workers and provide API access to your current IP/32. | string | `` | no |
99-
| cluster_version | Kubernetes version to use for the EKS cluster. | string | `1.10` | no |
100-
| config_output_path | Determines where config files are placed if using configure_kubectl_session and you want config files to land outside the current working directory. | string | `./` | no |
101-
| configure_kubectl_session | Configure the current session's kubectl to use the instantiated EKS cluster. | string | `true` | no |
102-
| subnets | A list of subnets to place the EKS cluster and workers within. | list | - | yes |
103-
| tags | A map of tags to add to all resources. | string | `<map>` | no |
104-
| vpc_id | VPC where the cluster and workers will be deployed. | string | - | yes |
105-
| worker_groups | A list of maps defining worker group configurations. See workers_group_defaults for valid keys. | list | `<list>` | no |
106-
| worker_security_group_id | If provided, all workers will be attached to this security group. If not given, a security group will be created with necessary ingres/egress to work with the EKS cluster. | string | `` | no |
107-
| worker_sg_ingress_from_port | Minimum port number from which pods will accept communication. Must be changed to a lower value if some pods in your cluster will expose a port lower than 1025 (e.g. 22, 80, or 443). | string | `1025` | no |
108-
| workers_group_defaults | Default values for target groups as defined by the list of maps. | map | `<map>` | no |
96+
| Name | Description | Type | Default | Required |
97+
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :----: | :------: | :------: |
98+
| cluster_name | Name of the EKS cluster. Also used as a prefix in names of related resources. | string | - | yes |
99+
| cluster_security_group_id | If provided, the EKS cluster will be attached to this security group. If not given, a security group will be created with necessary ingres/egress to work with the workers and provide API access to your current IP/32. | string | `` | no |
100+
| cluster_version | Kubernetes version to use for the EKS cluster. | string | `1.10` | no |
101+
| config_output_path | Determines where config files are placed if using configure_kubectl_session and you want config files to land outside the current working directory. | string | `./` | no |
102+
| configure_kubectl_session | Configure the current session's kubectl to use the instantiated EKS cluster. | string | `true` | no |
103+
| subnets | A list of subnets to place the EKS cluster and workers within. | list | - | yes |
104+
| tags | A map of tags to add to all resources. | string | `<map>` | no |
105+
| vpc_id | VPC where the cluster and workers will be deployed. | string | - | yes |
106+
| worker_groups | A list of maps defining worker group configurations. See workers_group_defaults for valid keys. | list | `<list>` | no |
107+
| worker_security_group_id | If provided, all workers will be attached to this security group. If not given, a security group will be created with necessary ingres/egress to work with the EKS cluster. | string | `` | no |
108+
| worker_sg_ingress_from_port | Minimum port number from which pods will accept communication. Must be changed to a lower value if some pods in your cluster will expose a port lower than 1025 (e.g. 22, 80, or 443). | string | `1025` | no |
109+
| workers_group_defaults | Default values for target groups as defined by the list of maps. | map | `<map>` | no |
109110

110111
## Outputs
111112

@@ -118,6 +119,6 @@ MIT Licensed. See [LICENSE](https://github.com/terraform-aws-modules/terraform-a
118119
| cluster_version | The Kubernetes server version for the EKS cluster. |
119120
| config_map_aws_auth | A kubernetes configuration to authenticate to this EKS cluster. |
120121
| kubeconfig | kubectl config file contents for this EKS cluster. |
122+
| worker_iam_role_name | IAM role name attached to EKS workers |
121123
| worker_security_group_id | Security group ID attached to the EKS workers. |
122124
| workers_asg_arns | IDs of the autoscaling groups containing workers. |
123-
| worker_iam_role_name | IAM role name attached to EKS workers. |

examples/eks_test_fixture/main.tf

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,28 @@ data "aws_availability_zones" "available" {}
1616
locals {
1717
cluster_name = "test-eks-${random_string.suffix.result}"
1818

19+
# the commented out worker group list below shows an example of how to define
20+
# multiple worker groups of differing configurations
21+
# worker_groups = "${list(
22+
# map("asg_desired_capacity", "2",
23+
# "asg_max_size", "10",
24+
# "asg_min_size", "2",
25+
# "instance_type", "m4.xlarge",
26+
# "name", "worker_group_a",
27+
# ),
28+
# map("asg_desired_capacity", "1",
29+
# "asg_max_size", "5",
30+
# "asg_min_size", "1",
31+
# "instance_type", "m4.2xlarge",
32+
# "name", "worker_group_b",
33+
# ),
34+
# )}"
35+
1936
worker_groups = "${list(
2037
map("instance_type","t2.small",
2138
"additional_userdata","echo foo bar"
2239
),
2340
)}"
24-
2541
tags = "${map("Environment", "test",
2642
"GithubRepo", "terraform-aws-eks",
2743
"GithubOrg", "terraform-aws-modules",

main.tf

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
** You want to create an EKS cluster and an autoscaling group of workers for the cluster.
1717
** You want these resources to exist within security groups that allow communication and coordination. These can be user provided or created within the module.
1818
** You've created a Virtual Private Cloud (VPC) and subnets where you intend to put the EKS resources.
19+
** If using the default variable value (`true`) for `configure_kubectl_session`, it's required that both [`kubectl`](https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl) (>=1.10) and [`heptio-authenticator-aws`](https://github.com/heptio/authenticator#4-set-up-kubectl-to-use-heptio-authenticator-for-aws-tokens) are installed and on your shell's PATH.
1920
2021
* ## Usage example
2122
@@ -32,11 +33,11 @@
3233
* }
3334
* ```
3435
35-
* ## Dependencies
36+
* ## Release schedule
3637
37-
* The `configure_kubectl_session` variable requires that both [`kubectl`](https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl)
38-
(>=1.10) and [`heptio-authenticator-aws`](https://github.com/heptio/authenticator#4-set-up-kubectl-to-use-heptio-authenticator-for-aws-tokens)
39-
are installed and on your shell's PATH.
38+
* Generally the maintainers will try to release the module once every 2 weeks to
39+
* keep up with PR additions. If particularly pressing changes are added or maintainers
40+
* come up with the spare time (hah!), release may happen more often on occasion.
4041
4142
* ## Testing
4243

version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v1.0.1
1+
v1.1.0

0 commit comments

Comments
 (0)