This repository has been archived by the owner on Oct 30, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 22
/
template_main_load_balancers.go
90 lines (88 loc) · 2.39 KB
/
template_main_load_balancers.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
package template
const TemplateMainLoadBalancers = `
{{- define "load_balancers" -}}
{{- $v := .LoadBalancers }}
ApiInternalLoadBalancer:
Type: AWS::ElasticLoadBalancing::LoadBalancer
DependsOn:
- VPCGatewayAttachment
Properties:
ConnectionSettings:
IdleTimeout: 1200
HealthCheck:
HealthyThreshold: 2
Interval: 5
Target: {{ $v.APIElbHealthCheckTarget }}
Timeout: 3
UnhealthyThreshold: 2
Listeners:
{{ range $v.APIElbPortsToOpen}}
- InstancePort: {{ .PortInstance }}
InstanceProtocol: TCP
LoadBalancerPort: {{ .PortELB }}
Protocol: TCP
{{ end }}
LoadBalancerName: {{ $v.APIInternalElbName }}
Scheme: internal
SecurityGroups:
- !Ref APIInternalELBSecurityGroup
Subnets:
{{- range $s := $v.PrivateSubnets }}
- !Ref {{ $s }}
{{- end }}
ApiLoadBalancer:
Type: AWS::ElasticLoadBalancing::LoadBalancer
DependsOn:
- VPCGatewayAttachment
Properties:
ConnectionSettings:
IdleTimeout: 1200
HealthCheck:
HealthyThreshold: 2
Interval: 5
Target: {{ $v.APIElbHealthCheckTarget }}
Timeout: 3
UnhealthyThreshold: 2
Listeners:
{{ range $v.APIElbPortsToOpen}}
- InstancePort: {{ .PortInstance }}
InstanceProtocol: TCP
LoadBalancerPort: {{ .PortELB }}
Protocol: TCP
{{ end }}
LoadBalancerName: {{ $v.APIElbName }}
Scheme: internet-facing
SecurityGroups:
- !Ref MasterSecurityGroup
Subnets:
{{- range $s := $v.PublicSubnets }}
- !Ref {{ $s }}
{{- end }}
EtcdLoadBalancer:
Type: AWS::ElasticLoadBalancing::LoadBalancer
Properties:
ConnectionSettings:
IdleTimeout: 1200
HealthCheck:
HealthyThreshold: 2
Interval: 5
Target: {{ $v.EtcdElbHealthCheckTarget }}
Timeout: 3
UnhealthyThreshold: 2
Listeners:
{{ range $v.EtcdElbPortsToOpen}}
- InstancePort: {{ .PortInstance }}
InstanceProtocol: TCP
LoadBalancerPort: {{ .PortELB }}
Protocol: TCP
{{ end }}
LoadBalancerName: {{ $v.EtcdElbName }}
Scheme: internal
SecurityGroups:
- !Ref EtcdELBSecurityGroup
Subnets:
{{- range $s := $v.PrivateSubnets }}
- !Ref {{ $s }}
{{- end }}
{{- end -}}
`