-
Notifications
You must be signed in to change notification settings - Fork 30
/
variables.tf
144 lines (122 loc) · 3.92 KB
/
variables.tf
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
# General Variables
variable "main_project_tag" {
description = "Tag that will be attached to all resources."
type = string
default = "getting-into-consul"
}
variable "aws_default_region" {
description = "The default region that all resources will be deployed into."
type = string
default = "us-east-1"
}
# VPC Variables
variable "vpc_cidr" {
description = "Cidr block for the VPC. Using a /16 or /20 Subnet Mask is recommended."
type = string
default = "10.255.0.0/20"
}
variable "vpc_instance_tenancy" {
description = "Tenancy for instances launched into the VPC."
type = string
default = "default"
}
variable "vpc_tags" {
description = "Additional tags to add to the VPC and its resources."
type = map(string)
default = {}
}
variable "vpc_public_subnet_count" {
description = "The number of public subnets to create. Cannot exceed the number of AZs in your selected region. 2 is more than enough."
type = number
default = 2
}
variable "vpc_private_subnet_count" {
description = "The number of private subnets to create. Cannot exceed the number of AZs in your selected region."
type = number
default = 2
}
# EC2 Variables
variable "ami_id" {
description = "AMI ID to be used on all AWS EC2 Instances."
type = string
default = "ami-0747bdcabd34c712a" # Latest Ubuntu 18.04 LTS (HVM), SSD Volume Type
}
variable "use_latest_ami" {
description = "Whether or not to use the hardcoded ami_id value or to grab the latest value from SSM parameter store."
type = bool
default = true
}
variable "ec2_key_pair_name" {
description = "An existing EC2 key pair used to access the bastion server."
type = string
}
## Consul Servers
variable "server_desired_count" {
description = "The desired number of consul servers. For Raft elections, should be an odd number."
type = number
default = 3
}
variable "server_min_count" {
description = "The minimum number of consul servers."
type = number
default = 3
}
variable "server_max_count" {
description = "The maximum number of consul servers."
type = number
default = 3
}
## Consul Web Clients
variable "client_web_desired_count" {
description = "The desired number of consul web clients."
type = number
default = 1
}
variable "client_web_min_count" {
description = "The minimum number of consul web clients."
type = number
default = 1
}
variable "client_web_max_count" {
description = "The maximum number of consul web clients."
type = number
default = 1
}
## Consul API Clients
variable "client_api_desired_count" {
description = "The desired number of consul api clients."
type = number
default = 1
}
variable "client_api_min_count" {
description = "The minimum number of consul api clients."
type = number
default = 1
}
variable "client_api_max_count" {
description = "The maximum number of consul api clients."
type = number
default = 1
}
# Allowed Traffic into the Bastion
variable "allowed_bastion_cidr_blocks" {
description = "List of CIDR blocks allowed to access your Bastion. Defaults to Everywhere."
type = list(string)
default = ["0.0.0.0/0"]
}
variable "allowed_bastion_cidr_blocks_ipv6" {
description = "List of CIDR blocks allowed to access your Bastion. Defaults to none."
type = list(string)
default = []
}
# Allowed Traffic into the Consul Server
variable "allowed_traffic_cidr_blocks" {
description = "List of CIDR blocks allowed to send requests to your consul server endpoint. Defaults to EVERYWHERE."
type = list(string)
default = ["0.0.0.0/0"]
}
variable "allowed_traffic_cidr_blocks_ipv6" {
description = "List of IPv6 CIDR blocks allowed to send requests to your consul server endpoint. Defaults to EVERYWHERE."
type = list(string)
default = ["::/0"]
}