Skip to content

Commit 3e3e22c

Browse files
committed
working boundary LB + nomad vault integration
1 parent 3496dfb commit 3e3e22c

File tree

7 files changed

+44
-74
lines changed

7 files changed

+44
-74
lines changed

main.tf

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
//--------------------------EMEA-SE_PLAYGROUND-2019-----------------------------------------
22
# Using a single workspace:
3-
3+
44
terraform {
55
backend "remote" {
66
hostname = "app.terraform.io"
@@ -95,7 +95,7 @@ module "primarycluster" {
9595
nomad_gossip_key = data.terraform_remote_state.tls.outputs.nomad_gossip_key
9696
}
9797

98-
98+
/*
9999
module "secondarycluster" {
100100
providers = {
101101
aws.demostack = aws.secondary
@@ -139,7 +139,7 @@ module "secondarycluster" {
139139
consul_master_token = data.terraform_remote_state.tls.outputs.consul_master_token
140140
nomad_gossip_key = data.terraform_remote_state.tls.outputs.nomad_gossip_key
141141
}
142-
142+
*/
143143

144144
/*
145145
module "tertiarycluster" {

modules/aws.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,10 +138,10 @@ resource "aws_security_group" "demostack" {
138138
}
139139

140140

141-
#Consul and Vault ports
141+
#Consul and Vault and Boundary ports
142142
ingress {
143143
from_port = 8000
144-
to_port = 9200
144+
to_port = 9300
145145
protocol = "tcp"
146146
cidr_blocks = ["0.0.0.0/0"]
147147
}

modules/boundary-lb.tf

Lines changed: 33 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -1,82 +1,51 @@
1-
resource "aws_alb" "boundary" {
2-
name = "${var.namespace}-boundary"
3-
4-
security_groups = [aws_security_group.demostack.id]
5-
subnets = aws_subnet.demostack.*.id
6-
7-
tags = {
8-
Name = "${var.namespace}-boundary"
1+
resource "aws_lb" "boundary-controller" {
2+
name = "${var.namespace}-boundary-controller"
3+
load_balancer_type = "network"
4+
internal = false
5+
subnets = aws_subnet.demostack.*.id
6+
7+
tags = {
8+
Name = "${var.namespace}-boundary-controller"
99
owner = var.owner
1010
created-by = var.created-by
1111
sleep-at-night = var.sleep-at-night
1212
TTL = var.TTL
1313
}
1414
}
1515

16-
resource "aws_alb_target_group" "boundary" {
17-
name = "${var.namespace}-boundary"
18-
port = "9202"
19-
vpc_id = aws_vpc.demostack.id
20-
protocol = "HTTP"
21-
22-
}
23-
24-
resource "aws_alb_target_group" "boundary-ui" {
25-
name = "${var.namespace}-boundary-ui"
26-
port = "9200"
16+
resource "aws_lb_target_group" "boundary-controller" {
17+
name = "${var.namespace}-boundary-controller"
18+
port = 9200
19+
protocol = "TCP"
2720
vpc_id = aws_vpc.demostack.id
28-
protocol = "HTTP"
29-
30-
}
31-
32-
resource "aws_alb_listener" "boundary" {
33-
load_balancer_arn = aws_alb.boundary.arn
3421

35-
port = "9202"
36-
protocol = "HTTP"
37-
38-
default_action {
39-
target_group_arn = aws_alb_target_group.boundary.arn
40-
type = "forward"
22+
stickiness {
23+
enabled = false
24+
type = "lb_cookie"
25+
}
26+
tags = {
27+
Name = "${var.namespace}-boundary-controller"
28+
owner = var.owner
29+
created-by = var.created-by
30+
sleep-at-night = var.sleep-at-night
31+
TTL = var.TTL
4132
}
4233
}
4334

44-
resource "aws_alb_listener" "boundary-ui" {
45-
load_balancer_arn = aws_alb.boundary.arn
35+
resource "aws_lb_target_group_attachment" "boundary-controller" {
36+
count = var.servers
37+
target_group_arn = aws_lb_target_group.boundary-controller.arn
38+
target_id = aws_instance.servers[count.index].id
39+
port = 9200
40+
}
4641

47-
port = "9200"
48-
protocol = "HTTP"
42+
resource "aws_lb_listener" "boundary-controller" {
43+
load_balancer_arn = aws_lb.boundary-controller.arn
44+
port = "9200"
45+
protocol = "TCP"
4946

5047
default_action {
51-
target_group_arn = aws_alb_target_group.boundary-ui.arn
5248
type = "forward"
49+
target_group_arn = aws_lb_target_group.boundary-controller.arn
5350
}
5451
}
55-
56-
resource "aws_alb_target_group_attachment" "boundary-workers" {
57-
count = var.workers
58-
target_group_arn = aws_alb_target_group.boundary.arn
59-
target_id = element(aws_instance.workers.*.id, count.index)
60-
port = "9202"
61-
}
62-
63-
resource "aws_alb_target_group_attachment" "boundary-ui-workers" {
64-
count = var.workers
65-
target_group_arn = aws_alb_target_group.boundary-ui.arn
66-
target_id = element(aws_instance.workers.*.id, count.index)
67-
port = "9200"
68-
}
69-
70-
resource "aws_alb_target_group_attachment" "boundary-servers" {
71-
count = var.servers
72-
target_group_arn = aws_alb_target_group.boundary.arn
73-
target_id = element(aws_instance.servers.*.id, count.index)
74-
port = "9202"
75-
}
76-
77-
resource "aws_alb_target_group_attachment" "boundary-ui-servers" {
78-
count = var.servers
79-
target_group_arn = aws_alb_target_group.boundary-ui.arn
80-
target_id = element(aws_instance.servers.*.id, count.index)
81-
port = "9200"
82-
}

modules/dns.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ resource "aws_route53_record" "boundary" {
55
name = "boundary.${var.namespace}"
66
#name = "traefik"
77
type = "CNAME"
8-
records = [aws_alb.boundary.dns_name]
8+
records = [aws_lb.boundary-controller.dns_name]
99
ttl = "300"
1010
}
1111

modules/templates/server/nomad.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ client {
8888
path = "/opt/shared/data/"
8989
read_only = false
9090
}
91-
91+
9292
}
9393
tls {
9494
rpc = true
@@ -151,7 +151,7 @@ Requires=network-online.target
151151
After=network-online.target
152152
153153
[Service]
154-
Environment=VAULT_TOKEN=$(consul kv put service/vault/${node_name}-token)
154+
Environment=VAULT_TOKEN=$NOMAD_VAULT_TOKEN
155155
ExecStart=/usr/local/bin/nomad agent -config="/etc/nomad.d"
156156
ExecReload=/bin/kill -HUP $MAINPID
157157
KillSignal=SIGINT

modules/templates/server/vault.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ sudo systemctl start vault
8181
sleep 8
8282

8383
echo "--> Initializing vault"
84-
consul lock tmp/vault/lock "$(cat <<"EOF"
84+
consul lock -name=vault-init tmp/vault/lock "$(cat <<"EOF"
8585
set -e
8686
sleep 2
8787
export VAULT_ADDR="https://127.0.0.1:8200"

outputs.tf

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ output "Primary_k8s_eks_ca"{
9292
**/
9393

9494
// Secondary
95+
/*
9596
output "Secondary_Region" {
9697
value = var.secondary_region
9798
}
@@ -125,7 +126,7 @@ output "Secondary_nomad_tag_workers" {
125126
output "Secondary_nomad_tag_servers" {
126127
value = module.secondarycluster.nomad_tag_servers
127128
}
128-
129+
*/
129130

130131

131132
// Tertiary

0 commit comments

Comments
 (0)