|
@@ -0,0 +1,63 @@
|
|
|
|
|
+// Recurso principal para redes
|
|
|
|
|
+resource "aws_vpc" "tut-vpc" {
|
|
|
|
|
+ assign_generated_ipv6_cidr_block = true
|
|
|
|
|
+ cidr_block = "10.0.0.0/16"
|
|
|
|
|
+ enable_dns_hostnames = true
|
|
|
|
|
+ enable_dns_support = true
|
|
|
|
|
+
|
|
|
|
|
+ tags = {
|
|
|
|
|
+ Name = "Tutorial"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+// Puerta de enlace para salida a Internet
|
|
|
|
|
+// Se adjunta a la VPC
|
|
|
|
|
+resource "aws_internet_gateway" "tut-gateway" {
|
|
|
|
|
+ vpc_id = aws_vpc.tut-vpc.id
|
|
|
|
|
+
|
|
|
|
|
+ tags = {
|
|
|
|
|
+ Name = "Tutorial"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+// Sub-red para instancias
|
|
|
|
|
+// Se adjunta a la VPC
|
|
|
|
|
+// Se definen sus direcciones
|
|
|
|
|
+resource "aws_subnet" "tut-subnet-1" {
|
|
|
|
|
+ assign_ipv6_address_on_creation = true
|
|
|
|
|
+ availability_zone = "us-west-2a"
|
|
|
|
|
+ cidr_block = cidrsubnet(aws_vpc.tut-vpc.cidr_block, 8, 1)
|
|
|
|
|
+ ipv6_cidr_block = cidrsubnet(aws_vpc.tut-vpc.ipv6_cidr_block, 8, 1)
|
|
|
|
|
+ map_public_ip_on_launch = true
|
|
|
|
|
+ vpc_id = aws_vpc.tut-vpc.id
|
|
|
|
|
+
|
|
|
|
|
+ tags = {
|
|
|
|
|
+ Name = "Tutorial"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+// Rutas para salida a Internet
|
|
|
|
|
+// Toma por defecto la tabla predefinida en la VPC
|
|
|
|
|
+resource "aws_default_route_table" "tut-routes" {
|
|
|
|
|
+ default_route_table_id = aws_vpc.tut-vpc.default_route_table_id
|
|
|
|
|
+
|
|
|
|
|
+ route {
|
|
|
|
|
+ cidr_block = "0.0.0.0/0"
|
|
|
|
|
+ gateway_id = aws_internet_gateway.tut-gateway.id
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ route {
|
|
|
|
|
+ ipv6_cidr_block = "::/0"
|
|
|
|
|
+ gateway_id = aws_internet_gateway.tut-gateway.id
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ tags = {
|
|
|
|
|
+ Name = "Tutorial"
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+// Adjunta las rutas par salida a Internet en la sub-red
|
|
|
|
|
+resource "aws_route_table_association" "tut-route-1" {
|
|
|
|
|
+ subnet_id = aws_subnet.tut-subnet-1.id
|
|
|
|
|
+ route_table_id = aws_default_route_table.tut-routes.id
|
|
|
|
|
+}
|