You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Provide separate route tables for db/elasticache/redshift (#155)
* Provide separate route tables for db/elasticache/redshift
* Added example for saperate routes
* Updated PR with suggestions
* Make redshift to use separate subnet route table also
* More cleanup and updates
* Fixed one more spelling mistake
Copy file name to clipboardExpand all lines: README.md
+10-1Lines changed: 10 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -166,7 +166,11 @@ Terraform version 0.10.3 or newer is required for this module to work.
166
166
| azs | A list of availability zones in the region | string |`<list>`| no |
167
167
| cidr | The CIDR block for the VPC. Default value is a valid CIDR, but not acceptable by AWS and should be overridden | string |`0.0.0.0/0`| no |
168
168
| create_database_subnet_group | Controls if database subnet group should be created | string |`true`| no |
169
+
| create_database_subnet_route_table | Controls if separate route table for database should be created | string |`false`| no |
170
+
| create_elasticache_subnet_route_table | Controls if separate route table for elasticache should be created | string |`false`| no |
171
+
| create_redshift_subnet_route_table | Controls if separate route table for redshift should be created | string |`false`| no |
169
172
| create_vpc | Controls if VPC should be created (it affects almost all resources) | string |`true`| no |
173
+
| database_route_table_tags | Additional tags for the database route tables | string |`<map>`| no |
170
174
| database_subnet_group_tags | Additional tags for the database subnet group | string |`<map>`| no |
171
175
| database_subnet_tags | Additional tags for the database subnets | string |`<map>`| no |
172
176
| database_subnets | A list of database subnets | list |`<list>`| no |
@@ -181,6 +185,7 @@ Terraform version 0.10.3 or newer is required for this module to work.
181
185
| dhcp_options_netbios_node_type | Specify netbios node_type for DHCP options set | string | `` | no |
182
186
| dhcp_options_ntp_servers | Specify a list of NTP servers for DHCP options set | list |`<list>`| no |
183
187
| dhcp_options_tags | Additional tags for the DHCP option set | string |`<map>`| no |
188
+
| elasticache_route_table_tags | Additional tags for the elasticache route tables | string |`<map>`| no |
184
189
| elasticache_subnet_tags | Additional tags for the elasticache subnets | string |`<map>`| no |
185
190
| elasticache_subnets | A list of elasticache subnets | list |`<list>`| no |
186
191
| enable_dhcp_options | Should be true if you want to specify a DHCP options set with a custom domain name, DNS servers, NTP servers, netbios servers, and/or netbios server type | string |`false`| no |
@@ -210,6 +215,7 @@ Terraform version 0.10.3 or newer is required for this module to work.
210
215
| public_route_table_tags | Additional tags for the public route tables | string |`<map>`| no |
211
216
| public_subnet_tags | Additional tags for the public subnets | string |`<map>`| no |
212
217
| public_subnets | A list of public subnets inside the VPC | string |`<list>`| no |
218
+
| redshift_route_table_tags | Additional tags for the redshift route tables | string |`<map>`| no |
213
219
| redshift_subnet_group_tags | Additional tags for the redshift subnet group | string |`<map>`| no |
214
220
| redshift_subnet_tags | Additional tags for the redshift subnets | string |`<map>`| no |
215
221
| redshift_subnets | A list of redshift subnets | list |`<list>`| no |
@@ -224,6 +230,7 @@ Terraform version 0.10.3 or newer is required for this module to work.
224
230
225
231
| Name | Description |
226
232
|------|-------------|
233
+
| database_route_table_ids | List of IDs of database route tables |
227
234
| database_subnet_group | ID of database subnet group |
228
235
| database_subnets | List of IDs of database subnets |
229
236
| database_subnets_cidr_blocks | List of cidr_blocks of database subnets |
@@ -239,6 +246,7 @@ Terraform version 0.10.3 or newer is required for this module to work.
239
246
| default_vpc_id | Default VPC |
240
247
| default_vpc_instance_tenancy | Tenancy of instances spin up within VPC |
241
248
| default_vpc_main_route_table_id | The ID of the main route table associated with this VPC |
249
+
| elasticache_route_table_ids | List of IDs of elasticache route tables |
242
250
| elasticache_subnet_group | ID of elasticache subnet group |
243
251
| elasticache_subnet_group_name | Name of elasticache subnet group |
244
252
| elasticache_subnets | List of IDs of elasticache subnets |
@@ -247,7 +255,7 @@ Terraform version 0.10.3 or newer is required for this module to work.
247
255
| intra_route_table_ids | List of IDs of intra route tables |
248
256
| intra_subnets | List of IDs of intra subnets |
249
257
| intra_subnets_cidr_blocks | List of cidr_blocks of intra subnets |
250
-
| nat_ids |List of allocation ID of Elastic IPs created for AWS NAT Gateway|
258
+
| nat_ids |Nat gateway|
251
259
| nat_public_ips | List of public Elastic IPs created for AWS NAT Gateway |
252
260
| natgw_ids | List of NAT Gateway IDs |
253
261
| private_route_table_ids | List of IDs of private route tables |
@@ -256,6 +264,7 @@ Terraform version 0.10.3 or newer is required for this module to work.
256
264
| public_route_table_ids | Route tables |
257
265
| public_subnets | List of IDs of public subnets |
258
266
| public_subnets_cidr_blocks | List of cidr_blocks of public subnets |
267
+
| redshift_route_table_ids | List of IDs of redshift route tables |
259
268
| redshift_subnet_group | ID of redshift subnet group |
260
269
| redshift_subnets | List of IDs of redshift subnets |
261
270
| redshift_subnets_cidr_blocks | List of cidr_blocks of redshift subnets |
Configuration in this directory creates set of VPC resources which may be sufficient for staging or production environment (look into [simple-vpc](../simple-vpc) for more simplified setup).
4
+
5
+
There are public, private, database, ElastiCache, Redshift subnets, NAT Gateways created in each availability zone. **This example sets up separate private route for database, elasticache and redshift subnets.**.
6
+
7
+
## Usage
8
+
9
+
To run this example you need to execute:
10
+
11
+
```bash
12
+
$ terraform init
13
+
$ terraform plan
14
+
$ terraform apply
15
+
```
16
+
17
+
Note that this example may create resources which can cost money (AWS Elastic IP, for example). Run `terraform destroy` when you don't need these resources.
18
+
19
+
<!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK -->
20
+
21
+
## Outputs
22
+
23
+
| Name | Description |
24
+
|------|-------------|
25
+
| database_subnets | List of IDs of database subnets |
26
+
| elasticache_subnets | List of IDs of elasticache subnets |
27
+
| nat_public_ips | NAT gateways |
28
+
| private_subnets | Subnets |
29
+
| public_subnets | List of IDs of public subnets |
30
+
| redshift_subnets | List of IDs of elasticache subnets |
0 commit comments