Skip to content

azurermExpressRoutePort

Manages a Express Route Port.

Example Usage

/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as azurerm from "./.gen/providers/azurerm";
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: azurerm.
For a more precise conversion please use the --provider flag in convert.*/
const azurermResourceGroupExample = new azurerm.resourceGroup.ResourceGroup(
  this,
  "example",
  {
    location: "West US",
    name: "example-resources",
  }
);
const azurermExpressRoutePortExample =
  new azurerm.expressRoutePort.ExpressRoutePort(this, "example_1", {
    bandwidth_in_gbps: 10,
    encapsulation: "Dot1Q",
    location: azurermResourceGroupExample.location,
    name: "port1",
    peering_location: "Airtel-Chennai-CLS",
    resource_group_name: azurermResourceGroupExample.name,
  });
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermExpressRoutePortExample.overrideLogicalId("example");

Arguments Reference

The following arguments are supported:

  • name - (Required) The name which should be used for this Express Route Port. Changing this forces a new Express Route Port to be created.

  • resourceGroupName - (Required) The name of the Resource Group where the Express Route Port should exist. Changing this forces a new Express Route Port to be created.

  • location - (Required) The Azure Region where the Express Route Port should exist. Changing this forces a new Express Route Port to be created.

  • bandwidthInGbps - (Required) Bandwidth of the Express Route Port in Gbps. Changing this forces a new Express Route Port to be created.

  • encapsulation - (Required) The encapsulation method used for the Express Route Port. Changing this forces a new Express Route Port to be created. Possible values are: dot1Q, qinQ.

  • peeringLocation - (Required) The name of the peering location that this Express Route Port is physically mapped to. Changing this forces a new Express Route Port to be created.

  • link1 - (Optional) A list of link blocks as defined below.

  • link2 - (Optional) A list of link blocks as defined below.


  • identity - (Optional) An identity block as defined below.

  • tags - (Optional) A mapping of tags which should be assigned to the Express Route Port.


An identity block supports the following:

  • type - (Required) Specifies the type of Managed Service Identity that should be configured on this Express Route Port. Only possible value is userAssigned.

  • identityIds - (Required) Specifies a list of User Assigned Managed Identity IDs to be assigned to this Express Route Port.


A link block supports the following:

  • adminEnabled - (Optional) Whether enable administration state on the Express Route Port Link? Defaults to false.

  • macsecCipher - (Optional) The MACSec cipher used for this Express Route Port Link. Possible values are gcmAes128 and gcmAes256. Defaults to gcmAes128.

  • billingType - (Optional) The billing type of the Express Route Port. Possible values are meteredData and unlimitedData.

  • macsecCknKeyvaultSecretId - (Optional) The ID of the Key Vault Secret that contains the MACSec CKN key for this Express Route Port Link.

  • macsecCakKeyvaultSecretId - (Optional) The ID of the Key Vault Secret that contains the Mac security CAK key for this Express Route Port Link.

\~> NOTE macsecCknKeyvaultSecretId and macsecCakKeyvaultSecretId should be used together with identity, so that the Express Route Port instance have the right permission to access the Key Vault.

Attributes Reference

In addition to the Arguments listed above - the following Attributes are exported:

  • id - The ID of the Express Route Port.

  • identity - A identity block as defined below.

  • link1 - A list of link blocks as defined below.

  • link2 - A list of link blocks as defined below.

  • guid - The resource GUID of the Express Route Port.

  • ethertype - The EtherType of the Express Route Port.

  • mtu - The maximum transmission unit of the Express Route Port.


A link block exports the following:

  • id - The ID of this Express Route Port Link.

  • routerName - The name of the Azure router associated with the Express Route Port Link.

  • interfaceName - The interface name of the Azure router associated with the Express Route Port Link.

  • patchPanelId - The ID that maps from the Express Route Port Link to the patch panel port.

  • rackId - The ID that maps from the patch panel port to the rack.

  • connectorType - The connector type of the Express Route Port Link.

Timeouts

The timeouts block allows you to specify timeouts for certain actions:

  • create - (Defaults to 30 minutes) Used when creating the Express Route Port.
  • read - (Defaults to 5 minutes) Used when retrieving the Express Route Port.
  • update - (Defaults to 30 minutes) Used when updating the Express Route Port.
  • delete - (Defaults to 30 minutes) Used when deleting the Express Route Port.

Import

Express Route Ports can be imported using the resourceId, e.g.

terraform import azurerm_express_route_port.example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Network/expressRoutePorts/port1