Skip to content

Commit 54b0104

Browse files
authored
terraform cleanup: tags, formatting, better defaults (#1080)
Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com>
1 parent fc361af commit 54b0104

File tree

8 files changed

+130
-111
lines changed

8 files changed

+130
-111
lines changed

infra/terraform/aws/eks.tf

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@ resource "random_string" "suffix" {
5454
resource "aws_security_group" "all_worker_mgmt" {
5555
name_prefix = "${var.name_prefix}-worker"
5656
vpc_id = module.vpc.vpc_id
57+
58+
tags = var.tags
5759
}
5860

5961
module "vpc" {
@@ -78,40 +80,38 @@ module "vpc" {
7880
"kubernetes.io/cluster/${local.cluster_name}" = "shared"
7981
"kubernetes.io/role/internal-elb" = "1"
8082
}
83+
84+
tags = var.tags
8185
}
8286

8387
module "eks" {
84-
source = "terraform-aws-modules/eks/aws"
88+
source = "terraform-aws-modules/eks/aws"
8589
version = "12.2.0"
8690

8791
cluster_name = local.cluster_name
8892
cluster_version = "1.17"
8993
subnets = module.vpc.private_subnets
9094

91-
tags = {
92-
Environment = "test"
93-
GithubRepo = "terraform-aws-eks"
94-
GithubOrg = "terraform-aws-modules"
95-
}
95+
tags = var.tags
9696

9797
vpc_id = module.vpc.vpc_id
9898

9999
worker_groups = [
100100
{
101-
name = "worker-group-1"
102-
instance_type = "r3.large"
103-
asg_desired_capacity = 2
101+
name = "worker-group-1"
102+
instance_type = "r3.large"
103+
asg_desired_capacity = 2
104104
},
105105
{
106-
name = "worker-group-2"
107-
instance_type = "r3.large"
108-
asg_desired_capacity = 1
106+
name = "worker-group-2"
107+
instance_type = "r3.large"
108+
asg_desired_capacity = 1
109109
},
110110
]
111111

112112
worker_additional_security_group_ids = [aws_security_group.all_worker_mgmt.id]
113113
map_roles = var.map_roles
114114
map_accounts = var.map_accounts
115115

116-
workers_additional_policies = [aws_iam_policy.worker_policy.id]
116+
workers_additional_policies = [aws_iam_policy.worker_policy.id]
117117
}

infra/terraform/aws/emr.tf

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,4 +67,6 @@ resource "aws_emr_cluster" "persistent_cluster" {
6767
step_concurrency_level = 256
6868

6969
log_uri = "s3://${aws_s3_bucket.feast_bucket.id}/logs/${var.name_prefix}-persistent-emr/"
70+
71+
tags = var.tags
7072
}

infra/terraform/aws/helm.tf

Lines changed: 62 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -12,81 +12,81 @@ provider "helm" {
1212
# RDS password is stored in a configmap which is not awesome but that RDS instance is not routable
1313
# from the outside anyways so that'll do.
1414
locals {
15-
feast_core_config = {
16-
redis = {
17-
enabled = false
18-
}
19-
postgresql = {
20-
enabled = false
21-
}
22-
kafka = {
23-
enabled = false
24-
}
15+
feast_core_config = {
16+
redis = {
17+
enabled = false
18+
}
19+
postgresql = {
20+
enabled = false
21+
}
22+
kafka = {
23+
enabled = false
24+
}
2525

26-
"feast-core" = {
27-
"application-generated.yaml" = {
28-
enabled = false
29-
}
26+
"feast-core" = {
27+
"application-generated.yaml" = {
28+
enabled = false
29+
}
3030

31-
"application-override.yaml" = {
32-
spring = {
33-
datasource = {
34-
url = "jdbc:postgresql://${module.rds_cluster.endpoint}:5432/${module.rds_cluster.database_name}"
35-
username = "${module.rds_cluster.master_username}"
36-
password = "${random_password.db_password.result}"
37-
}
38-
}
39-
feast = {
40-
stream = {
41-
type = "kafka"
42-
options = {
43-
bootstrapServers = ${aws_msk_cluster.msk.bootstrap_brokers}
44-
topic = "feast"
45-
}
46-
}
47-
}
48-
server = {
49-
port = "8080"
50-
}
31+
"application-override.yaml" = {
32+
spring = {
33+
datasource = {
34+
url = "jdbc:postgresql://${module.rds_cluster.endpoint}:5432/${module.rds_cluster.database_name}"
35+
username = "${module.rds_cluster.master_username}"
36+
password = "${random_password.db_password.result}"
37+
}
38+
}
39+
feast = {
40+
stream = {
41+
type = "kafka"
42+
options = {
43+
bootstrapServers = aws_msk_cluster.msk.bootstrap_brokers
44+
topic = "feast"
5145
}
46+
}
5247
}
48+
server = {
49+
port = "8080"
50+
}
51+
}
52+
}
5353

54-
"feast-online-serving" = {
55-
"application-override.yaml" = {
56-
enabled = true
57-
feast = {
58-
stores = [
59-
{
60-
name = "online"
61-
type = "REDIS"
62-
config = {
63-
host = module.redis.endpoint
64-
port = 6379
65-
}
66-
subscriptions = [
67-
{
68-
name= "*"
69-
project= "*"
70-
version= "*"
71-
}
72-
]
73-
}
74-
]
75-
job_store = {
76-
redis_host = module.redis.endpoint
77-
redis_port = 6379
78-
}
54+
"feast-online-serving" = {
55+
"application-override.yaml" = {
56+
enabled = true
57+
feast = {
58+
stores = [
59+
{
60+
name = "online"
61+
type = "REDIS"
62+
config = {
63+
host = module.redis.endpoint
64+
port = 6379
65+
}
66+
subscriptions = [
67+
{
68+
name = "*"
69+
project = "*"
70+
version = "*"
7971
}
72+
]
8073
}
74+
]
75+
job_store = {
76+
redis_host = module.redis.endpoint
77+
redis_port = 6379
78+
}
8179
}
80+
}
8281
}
82+
}
8383
}
8484

8585
resource "helm_release" "feast" {
86-
name = "feast"
87-
chart = "../../charts/feast"
86+
name = "feast"
87+
chart = "../../charts/feast"
8888

89-
wait = false
89+
wait = false
9090

9191
values = [
9292
yamlencode(local.feast_core_config)

infra/terraform/aws/msk.tf

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@ resource "aws_security_group" "broker" {
33
vpc_id = module.vpc.vpc_id
44

55
ingress {
6-
description = "Allow connections from the worker group"
6+
description = "Allow connections from the worker group"
77
security_groups = [aws_security_group.all_worker_mgmt.id]
8-
protocol = "tcp"
9-
from_port = 0
10-
to_port = 65535
8+
protocol = "tcp"
9+
from_port = 0
10+
to_port = 65535
1111
}
1212

1313
egress {
@@ -16,6 +16,8 @@ resource "aws_security_group" "broker" {
1616
protocol = "-1"
1717
cidr_blocks = ["0.0.0.0/0"]
1818
}
19+
20+
tags = var.tags
1921
}
2022

2123
resource "aws_msk_cluster" "msk" {
@@ -26,7 +28,7 @@ resource "aws_msk_cluster" "msk" {
2628
broker_node_group_info {
2729
instance_type = "kafka.t3.small"
2830
ebs_volume_size = 100
29-
client_subnets = [module.vpc.private_subnets[0], module.vpc.private_subnets[1]]
31+
client_subnets = [module.vpc.private_subnets[0], module.vpc.private_subnets[1]]
3032
security_groups = [aws_security_group.broker.id]
3133
}
3234

@@ -46,4 +48,5 @@ resource "aws_msk_cluster" "msk" {
4648
}
4749
}
4850

51+
tags = var.tags
4952
}
Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1-
module "redis" {
2-
source = "git::https://github.com/cloudposse/terraform-aws-elasticache-redis.git?ref=tags/0.25.0"
3-
subnets = module.vpc.private_subnets
4-
name = "${var.name_prefix}-online"
5-
vpc_id = module.vpc.vpc_id
6-
allowed_security_groups = [aws_security_group.all_worker_mgmt.id]
7-
availability_zones = module.vpc.azs
8-
}
1+
module "redis" {
2+
source = "git::https://github.com/cloudposse/terraform-aws-elasticache-redis.git?ref=tags/0.25.0"
3+
subnets = module.vpc.private_subnets
4+
name = "${var.name_prefix}-online"
5+
vpc_id = module.vpc.vpc_id
6+
allowed_security_groups = [aws_security_group.all_worker_mgmt.id]
7+
availability_zones = module.vpc.azs
8+
9+
tags = var.tags
10+
}

infra/terraform/aws/rds.tf

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
11
resource "random_password" "db_password" {
2-
length = 16
3-
special = true
2+
length = 16
3+
special = true
44
override_special = "!#()-[]<>"
55
}
66

77
module "rds_cluster" {
8-
source = "git::https://github.com/cloudposse/terraform-aws-rds-cluster.git?ref=tags/0.35.0"
9-
name = "${var.name_prefix}-db"
10-
engine = "aurora-postgresql"
11-
engine_mode = "serverless"
12-
engine_version = "10.7"
13-
cluster_family = "aurora-postgresql10"
14-
cluster_size = 0
15-
admin_user = var.postgres_db_user
16-
admin_password = random_password.db_password.result
17-
db_name = var.postgres_db_name
18-
db_port = 5432
19-
instance_type = "db.t2.small"
20-
vpc_id = module.vpc.vpc_id
21-
security_groups = [aws_security_group.all_worker_mgmt.id]
22-
subnets = module.vpc.private_subnets
8+
source = "git::https://github.com/cloudposse/terraform-aws-rds-cluster.git?ref=tags/0.35.0"
9+
name = "${var.name_prefix}-db"
10+
engine = "aurora-postgresql"
11+
engine_mode = "serverless"
12+
engine_version = "10.7"
13+
cluster_family = "aurora-postgresql10"
14+
cluster_size = 0
15+
admin_user = var.postgres_db_user
16+
admin_password = random_password.db_password.result
17+
db_name = var.postgres_db_name
18+
db_port = 5432
19+
instance_type = "db.t2.small"
20+
vpc_id = module.vpc.vpc_id
21+
security_groups = [aws_security_group.all_worker_mgmt.id]
22+
subnets = module.vpc.private_subnets
2323

2424
scaling_configuration = [
2525
{
@@ -30,4 +30,6 @@ module "rds_cluster" {
3030
timeout_action = "ForceApplyCapacityChange"
3131
}
3232
]
33+
34+
tags = var.tags
3335
}

infra/terraform/aws/s3.tf

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
resource "random_string" "s3_suffix" {
2-
length = 8
3-
lower = true
4-
upper = false
2+
length = 8
3+
lower = true
4+
upper = false
55
special = false
66
}
77

@@ -17,4 +17,6 @@ resource "aws_s3_bucket" "feast_bucket" {
1717
}
1818
}
1919
}
20+
21+
tags = var.tags
2022
}

infra/terraform/aws/variables.tf

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@ variable "name_prefix" {
55
}
66

77
variable "postgres_db_name" {
8-
default = "feast"
8+
default = "feast"
99
}
1010

1111
variable "postgres_db_user" {
12-
default = "feast"
12+
default = "feast"
1313
}
1414

1515
variable "map_accounts" {
@@ -34,5 +34,13 @@ variable "map_roles" {
3434
}
3535

3636
variable "use_persistent_emr_cluster" {
37-
default = false
37+
description = "Create a persistent EMR cluster."
38+
default = true
3839
}
40+
41+
variable "tags" {
42+
description = "Tags"
43+
type = map(string)
44+
45+
default = {}
46+
}

0 commit comments

Comments
 (0)