github.com/vtorhonen/terraform@v0.9.0-beta2.0.20170307220345-5d894e4ffda7/examples/alicloud-vpc-route-entry/main.tf (about)

     1  resource "alicloud_vpc" "default" {
     2  	name = "tf_vpc"
     3  	cidr_block = "${var.vpc_cidr}"
     4  }
     5  
     6  resource "alicloud_vswitch" "default" {
     7  	vpc_id = "${alicloud_vpc.default.id}"
     8  	cidr_block = "${var.vswitch_cidr}"
     9  	availability_zone = "${var.zone_id}"
    10  }
    11  
    12  resource "alicloud_route_entry" "default" {
    13  	router_id = "${alicloud_vpc.default.router_id}"
    14  	route_table_id = "${alicloud_vpc.default.router_table_id}"
    15  	destination_cidrblock = "${var.entry_cidr}"
    16  	nexthop_type = "Instance"
    17  	nexthop_id = "${alicloud_instance.snat.id}"
    18  }
    19  
    20  resource "alicloud_security_group" "sg" {
    21  	name = "tf_sg"
    22  	description = "tf_sg"
    23  	vpc_id = "${alicloud_vpc.default.id}"
    24  }
    25  
    26  resource "alicloud_security_group_rule" "ssh" {
    27  	type = "ingress"
    28  	ip_protocol = "tcp"
    29  	nic_type = "intranet"
    30  	policy = "${var.rule_policy}"
    31  	port_range = "22/22"
    32  	priority = 1
    33  	security_group_id = "${alicloud_security_group.sg.id}"
    34  	cidr_ip = "0.0.0.0/0"
    35  }
    36  
    37  resource "alicloud_instance" "snat" {
    38  	# cn-beijing
    39  	availability_zone = "${var.zone_id}"
    40  	security_groups = ["${alicloud_security_group.sg.id}"]
    41  
    42  	vswitch_id = "${alicloud_vswitch.default.id}"
    43  	allocate_public_ip = true
    44  
    45  	# series II
    46  	instance_charge_type = "PostPaid"
    47  	instance_type = "${var.instance_type}"
    48  	internet_charge_type = "${var.internet_charge_type}"
    49  	internet_max_bandwidth_out = 5
    50  	io_optimized = "${var.io_optimized}"
    51  
    52  	system_disk_category = "cloud_efficiency"
    53  	image_id = "${var.image_id}"
    54  	instance_name = "tf_snat"
    55  }