alicloud_router_interface_connection

Provides a VPC router interface connection resource to connect two router interfaces which are in two different VPCs. After that, all of the two router interfaces will be active.

Example Usage

provider "alicloud" {
  region = var.region
}

variable "region" {
  default = "cn-hangzhou"
}

variable "name" {
  default = "alicloudRouterInterfaceConnectionBasic"
}

resource "alicloud_vpc" "foo" {
  vpc_name   = var.name
  cidr_block = "172.16.0.0/12"
}

resource "alicloud_vpc" "bar" {
  provider   = alicloud
  vpc_name   = var.name
  cidr_block = "192.168.0.0/16"
}

resource "alicloud_router_interface" "initiate" {
  opposite_region      = var.region
  router_type          = "VRouter"
  router_id            = alicloud_vpc.foo.router_id
  role                 = "InitiatingSide"
  specification        = "Large.2"
  name                 = var.name
  description          = var.name
  instance_charge_type = "PostPaid"
}

resource "alicloud_router_interface" "opposite" {
  provider        = alicloud
  opposite_region = var.region
  router_type     = "VRouter"
  router_id       = alicloud_vpc.bar.router_id
  role            = "AcceptingSide"
  specification   = "Large.1"
  name            = "${var.name}-opposite"
  description     = "${var.name}-opposite"
}

// A integrated router interface connection tunnel requires both InitiatingSide and AcceptingSide configuring opposite router interface.
resource "alicloud_router_interface_connection" "foo" {
  interface_id          = alicloud_router_interface.initiate.id
  opposite_interface_id = alicloud_router_interface.opposite.id
  depends_on            = [alicloud_router_interface_connection.bar] // The connection must start from the accepting side.
}

resource "alicloud_router_interface_connection" "bar" {
  provider              = alicloud
  interface_id          = alicloud_router_interface.opposite.id
  opposite_interface_id = alicloud_router_interface.initiate.id
}

Argument Reference

The following arguments are supported:

Attributes Reference

The following attributes are exported:

Import

The router interface connection can be imported using the id, e.g.

$ terraform import alicloud_router_interface_connection.foo ri-abc123456