ExpressRouteConnectionArgs

data class ExpressRouteConnectionArgs(val authorizationKey: Output<String>? = null, val enableInternetSecurity: Output<Boolean>? = null, val expressRouteCircuitPeeringId: Output<String>? = null, val expressRouteGatewayBypassEnabled: Output<Boolean>? = null, val expressRouteGatewayId: Output<String>? = null, val name: Output<String>? = null, val privateLinkFastPathEnabled: Output<Boolean>? = null, val routing: Output<ExpressRouteConnectionRoutingArgs>? = null, val routingWeight: Output<Int>? = null) : ConvertibleToJava<ExpressRouteConnectionArgs>

Manages an Express Route Connection.

NOTE: The provider status of the Express Route Circuit must be set as provisioned while creating the Express Route Connection. See more details here.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {
name: "example-resources",
location: "West Europe",
});
const exampleVirtualWan = new azure.network.VirtualWan("example", {
name: "example-vwan",
resourceGroupName: example.name,
location: example.location,
});
const exampleVirtualHub = new azure.network.VirtualHub("example", {
name: "example-vhub",
resourceGroupName: example.name,
location: example.location,
virtualWanId: exampleVirtualWan.id,
addressPrefix: "10.0.1.0/24",
});
const exampleExpressRouteGateway = new azure.network.ExpressRouteGateway("example", {
name: "example-expressroutegateway",
resourceGroupName: example.name,
location: example.location,
virtualHubId: exampleVirtualHub.id,
scaleUnits: 1,
});
const exampleExpressRoutePort = new azure.network.ExpressRoutePort("example", {
name: "example-erp",
resourceGroupName: example.name,
location: example.location,
peeringLocation: "Equinix-Seattle-SE2",
bandwidthInGbps: 10,
encapsulation: "Dot1Q",
});
const exampleExpressRouteCircuit = new azure.network.ExpressRouteCircuit("example", {
name: "example-erc",
location: example.location,
resourceGroupName: example.name,
expressRoutePortId: exampleExpressRoutePort.id,
bandwidthInGbps: 5,
sku: {
tier: "Standard",
family: "MeteredData",
},
});
const exampleExpressRouteCircuitPeering = new azure.network.ExpressRouteCircuitPeering("example", {
peeringType: "AzurePrivatePeering",
expressRouteCircuitName: exampleExpressRouteCircuit.name,
resourceGroupName: example.name,
sharedKey: "ItsASecret",
peerAsn: 100,
primaryPeerAddressPrefix: "192.168.1.0/30",
secondaryPeerAddressPrefix: "192.168.2.0/30",
vlanId: 100,
});
const exampleExpressRouteConnection = new azure.network.ExpressRouteConnection("example", {
name: "example-expressrouteconn",
expressRouteGatewayId: exampleExpressRouteGateway.id,
expressRouteCircuitPeeringId: exampleExpressRouteCircuitPeering.id,
});
import pulumi
import pulumi_azure as azure
example = azure.core.ResourceGroup("example",
name="example-resources",
location="West Europe")
example_virtual_wan = azure.network.VirtualWan("example",
name="example-vwan",
resource_group_name=example.name,
location=example.location)
example_virtual_hub = azure.network.VirtualHub("example",
name="example-vhub",
resource_group_name=example.name,
location=example.location,
virtual_wan_id=example_virtual_wan.id,
address_prefix="10.0.1.0/24")
example_express_route_gateway = azure.network.ExpressRouteGateway("example",
name="example-expressroutegateway",
resource_group_name=example.name,
location=example.location,
virtual_hub_id=example_virtual_hub.id,
scale_units=1)
example_express_route_port = azure.network.ExpressRoutePort("example",
name="example-erp",
resource_group_name=example.name,
location=example.location,
peering_location="Equinix-Seattle-SE2",
bandwidth_in_gbps=10,
encapsulation="Dot1Q")
example_express_route_circuit = azure.network.ExpressRouteCircuit("example",
name="example-erc",
location=example.location,
resource_group_name=example.name,
express_route_port_id=example_express_route_port.id,
bandwidth_in_gbps=5,
sku={
"tier": "Standard",
"family": "MeteredData",
})
example_express_route_circuit_peering = azure.network.ExpressRouteCircuitPeering("example",
peering_type="AzurePrivatePeering",
express_route_circuit_name=example_express_route_circuit.name,
resource_group_name=example.name,
shared_key="ItsASecret",
peer_asn=100,
primary_peer_address_prefix="192.168.1.0/30",
secondary_peer_address_prefix="192.168.2.0/30",
vlan_id=100)
example_express_route_connection = azure.network.ExpressRouteConnection("example",
name="example-expressrouteconn",
express_route_gateway_id=example_express_route_gateway.id,
express_route_circuit_peering_id=example_express_route_circuit_peering.id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var example = new Azure.Core.ResourceGroup("example", new()
{
Name = "example-resources",
Location = "West Europe",
});
var exampleVirtualWan = new Azure.Network.VirtualWan("example", new()
{
Name = "example-vwan",
ResourceGroupName = example.Name,
Location = example.Location,
});
var exampleVirtualHub = new Azure.Network.VirtualHub("example", new()
{
Name = "example-vhub",
ResourceGroupName = example.Name,
Location = example.Location,
VirtualWanId = exampleVirtualWan.Id,
AddressPrefix = "10.0.1.0/24",
});
var exampleExpressRouteGateway = new Azure.Network.ExpressRouteGateway("example", new()
{
Name = "example-expressroutegateway",
ResourceGroupName = example.Name,
Location = example.Location,
VirtualHubId = exampleVirtualHub.Id,
ScaleUnits = 1,
});
var exampleExpressRoutePort = new Azure.Network.ExpressRoutePort("example", new()
{
Name = "example-erp",
ResourceGroupName = example.Name,
Location = example.Location,
PeeringLocation = "Equinix-Seattle-SE2",
BandwidthInGbps = 10,
Encapsulation = "Dot1Q",
});
var exampleExpressRouteCircuit = new Azure.Network.ExpressRouteCircuit("example", new()
{
Name = "example-erc",
Location = example.Location,
ResourceGroupName = example.Name,
ExpressRoutePortId = exampleExpressRoutePort.Id,
BandwidthInGbps = 5,
Sku = new Azure.Network.Inputs.ExpressRouteCircuitSkuArgs
{
Tier = "Standard",
Family = "MeteredData",
},
});
var exampleExpressRouteCircuitPeering = new Azure.Network.ExpressRouteCircuitPeering("example", new()
{
PeeringType = "AzurePrivatePeering",
ExpressRouteCircuitName = exampleExpressRouteCircuit.Name,
ResourceGroupName = example.Name,
SharedKey = "ItsASecret",
PeerAsn = 100,
PrimaryPeerAddressPrefix = "192.168.1.0/30",
SecondaryPeerAddressPrefix = "192.168.2.0/30",
VlanId = 100,
});
var exampleExpressRouteConnection = new Azure.Network.ExpressRouteConnection("example", new()
{
Name = "example-expressrouteconn",
ExpressRouteGatewayId = exampleExpressRouteGateway.Id,
ExpressRouteCircuitPeeringId = exampleExpressRouteCircuitPeering.Id,
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
Name: pulumi.String("example-resources"),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
exampleVirtualWan, err := network.NewVirtualWan(ctx, "example", &network.VirtualWanArgs{
Name: pulumi.String("example-vwan"),
ResourceGroupName: example.Name,
Location: example.Location,
})
if err != nil {
return err
}
exampleVirtualHub, err := network.NewVirtualHub(ctx, "example", &network.VirtualHubArgs{
Name: pulumi.String("example-vhub"),
ResourceGroupName: example.Name,
Location: example.Location,
VirtualWanId: exampleVirtualWan.ID(),
AddressPrefix: pulumi.String("10.0.1.0/24"),
})
if err != nil {
return err
}
exampleExpressRouteGateway, err := network.NewExpressRouteGateway(ctx, "example", &network.ExpressRouteGatewayArgs{
Name: pulumi.String("example-expressroutegateway"),
ResourceGroupName: example.Name,
Location: example.Location,
VirtualHubId: exampleVirtualHub.ID(),
ScaleUnits: pulumi.Int(1),
})
if err != nil {
return err
}
exampleExpressRoutePort, err := network.NewExpressRoutePort(ctx, "example", &network.ExpressRoutePortArgs{
Name: pulumi.String("example-erp"),
ResourceGroupName: example.Name,
Location: example.Location,
PeeringLocation: pulumi.String("Equinix-Seattle-SE2"),
BandwidthInGbps: pulumi.Int(10),
Encapsulation: pulumi.String("Dot1Q"),
})
if err != nil {
return err
}
exampleExpressRouteCircuit, err := network.NewExpressRouteCircuit(ctx, "example", &network.ExpressRouteCircuitArgs{
Name: pulumi.String("example-erc"),
Location: example.Location,
ResourceGroupName: example.Name,
ExpressRoutePortId: exampleExpressRoutePort.ID(),
BandwidthInGbps: pulumi.Float64(5),
Sku: &network.ExpressRouteCircuitSkuArgs{
Tier: pulumi.String("Standard"),
Family: pulumi.String("MeteredData"),
},
})
if err != nil {
return err
}
exampleExpressRouteCircuitPeering, err := network.NewExpressRouteCircuitPeering(ctx, "example", &network.ExpressRouteCircuitPeeringArgs{
PeeringType: pulumi.String("AzurePrivatePeering"),
ExpressRouteCircuitName: exampleExpressRouteCircuit.Name,
ResourceGroupName: example.Name,
SharedKey: pulumi.String("ItsASecret"),
PeerAsn: pulumi.Int(100),
PrimaryPeerAddressPrefix: pulumi.String("192.168.1.0/30"),
SecondaryPeerAddressPrefix: pulumi.String("192.168.2.0/30"),
VlanId: pulumi.Int(100),
})
if err != nil {
return err
}
_, err = network.NewExpressRouteConnection(ctx, "example", &network.ExpressRouteConnectionArgs{
Name: pulumi.String("example-expressrouteconn"),
ExpressRouteGatewayId: exampleExpressRouteGateway.ID(),
ExpressRouteCircuitPeeringId: exampleExpressRouteCircuitPeering.ID(),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.network.VirtualWan;
import com.pulumi.azure.network.VirtualWanArgs;
import com.pulumi.azure.network.VirtualHub;
import com.pulumi.azure.network.VirtualHubArgs;
import com.pulumi.azure.network.ExpressRouteGateway;
import com.pulumi.azure.network.ExpressRouteGatewayArgs;
import com.pulumi.azure.network.ExpressRoutePort;
import com.pulumi.azure.network.ExpressRoutePortArgs;
import com.pulumi.azure.network.ExpressRouteCircuit;
import com.pulumi.azure.network.ExpressRouteCircuitArgs;
import com.pulumi.azure.network.inputs.ExpressRouteCircuitSkuArgs;
import com.pulumi.azure.network.ExpressRouteCircuitPeering;
import com.pulumi.azure.network.ExpressRouteCircuitPeeringArgs;
import com.pulumi.azure.network.ExpressRouteConnection;
import com.pulumi.azure.network.ExpressRouteConnectionArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name("example-resources")
.location("West Europe")
.build());
var exampleVirtualWan = new VirtualWan("exampleVirtualWan", VirtualWanArgs.builder()
.name("example-vwan")
.resourceGroupName(example.name())
.location(example.location())
.build());
var exampleVirtualHub = new VirtualHub("exampleVirtualHub", VirtualHubArgs.builder()
.name("example-vhub")
.resourceGroupName(example.name())
.location(example.location())
.virtualWanId(exampleVirtualWan.id())
.addressPrefix("10.0.1.0/24")
.build());
var exampleExpressRouteGateway = new ExpressRouteGateway("exampleExpressRouteGateway", ExpressRouteGatewayArgs.builder()
.name("example-expressroutegateway")
.resourceGroupName(example.name())
.location(example.location())
.virtualHubId(exampleVirtualHub.id())
.scaleUnits(1)
.build());
var exampleExpressRoutePort = new ExpressRoutePort("exampleExpressRoutePort", ExpressRoutePortArgs.builder()
.name("example-erp")
.resourceGroupName(example.name())
.location(example.location())
.peeringLocation("Equinix-Seattle-SE2")
.bandwidthInGbps(10)
.encapsulation("Dot1Q")
.build());
var exampleExpressRouteCircuit = new ExpressRouteCircuit("exampleExpressRouteCircuit", ExpressRouteCircuitArgs.builder()
.name("example-erc")
.location(example.location())
.resourceGroupName(example.name())
.expressRoutePortId(exampleExpressRoutePort.id())
.bandwidthInGbps(5)
.sku(ExpressRouteCircuitSkuArgs.builder()
.tier("Standard")
.family("MeteredData")
.build())
.build());
var exampleExpressRouteCircuitPeering = new ExpressRouteCircuitPeering("exampleExpressRouteCircuitPeering", ExpressRouteCircuitPeeringArgs.builder()
.peeringType("AzurePrivatePeering")
.expressRouteCircuitName(exampleExpressRouteCircuit.name())
.resourceGroupName(example.name())
.sharedKey("ItsASecret")
.peerAsn(100)
.primaryPeerAddressPrefix("192.168.1.0/30")
.secondaryPeerAddressPrefix("192.168.2.0/30")
.vlanId(100)
.build());
var exampleExpressRouteConnection = new ExpressRouteConnection("exampleExpressRouteConnection", ExpressRouteConnectionArgs.builder()
.name("example-expressrouteconn")
.expressRouteGatewayId(exampleExpressRouteGateway.id())
.expressRouteCircuitPeeringId(exampleExpressRouteCircuitPeering.id())
.build());
}
}
resources:
example:
type: azure:core:ResourceGroup
properties:
name: example-resources
location: West Europe
exampleVirtualWan:
type: azure:network:VirtualWan
name: example
properties:
name: example-vwan
resourceGroupName: ${example.name}
location: ${example.location}
exampleVirtualHub:
type: azure:network:VirtualHub
name: example
properties:
name: example-vhub
resourceGroupName: ${example.name}
location: ${example.location}
virtualWanId: ${exampleVirtualWan.id}
addressPrefix: 10.0.1.0/24
exampleExpressRouteGateway:
type: azure:network:ExpressRouteGateway
name: example
properties:
name: example-expressroutegateway
resourceGroupName: ${example.name}
location: ${example.location}
virtualHubId: ${exampleVirtualHub.id}
scaleUnits: 1
exampleExpressRoutePort:
type: azure:network:ExpressRoutePort
name: example
properties:
name: example-erp
resourceGroupName: ${example.name}
location: ${example.location}
peeringLocation: Equinix-Seattle-SE2
bandwidthInGbps: 10
encapsulation: Dot1Q
exampleExpressRouteCircuit:
type: azure:network:ExpressRouteCircuit
name: example
properties:
name: example-erc
location: ${example.location}
resourceGroupName: ${example.name}
expressRoutePortId: ${exampleExpressRoutePort.id}
bandwidthInGbps: 5
sku:
tier: Standard
family: MeteredData
exampleExpressRouteCircuitPeering:
type: azure:network:ExpressRouteCircuitPeering
name: example
properties:
peeringType: AzurePrivatePeering
expressRouteCircuitName: ${exampleExpressRouteCircuit.name}
resourceGroupName: ${example.name}
sharedKey: ItsASecret
peerAsn: 100
primaryPeerAddressPrefix: 192.168.1.0/30
secondaryPeerAddressPrefix: 192.168.2.0/30
vlanId: 100
exampleExpressRouteConnection:
type: azure:network:ExpressRouteConnection
name: example
properties:
name: example-expressrouteconn
expressRouteGatewayId: ${exampleExpressRouteGateway.id}
expressRouteCircuitPeeringId: ${exampleExpressRouteCircuitPeering.id}

Import

Express Route Connections can be imported using the resource id, e.g.

$ pulumi import azure:network/expressRouteConnection:ExpressRouteConnection example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Network/expressRouteGateways/expressRouteGateway1/expressRouteConnections/connection1

Constructors

Link copied to clipboard
constructor(authorizationKey: Output<String>? = null, enableInternetSecurity: Output<Boolean>? = null, expressRouteCircuitPeeringId: Output<String>? = null, expressRouteGatewayBypassEnabled: Output<Boolean>? = null, expressRouteGatewayId: Output<String>? = null, name: Output<String>? = null, privateLinkFastPathEnabled: Output<Boolean>? = null, routing: Output<ExpressRouteConnectionRoutingArgs>? = null, routingWeight: Output<Int>? = null)

Properties

Link copied to clipboard
val authorizationKey: Output<String>? = null

The authorization key to establish the Express Route Connection.

Link copied to clipboard
val enableInternetSecurity: Output<Boolean>? = null

Is Internet security enabled for this Express Route Connection?

Link copied to clipboard

The ID of the Express Route Circuit Peering that this Express Route Connection connects with. Changing this forces a new resource to be created.

Link copied to clipboard

Specified whether Fast Path is enabled for Virtual Wan Firewall Hub. Defaults to false.

Link copied to clipboard
val expressRouteGatewayId: Output<String>? = null

The ID of the Express Route Gateway that this Express Route Connection connects with. Changing this forces a new resource to be created.

Link copied to clipboard
val name: Output<String>? = null

The name which should be used for this Express Route Connection. Changing this forces a new resource to be created.

Link copied to clipboard
val privateLinkFastPathEnabled: Output<Boolean>? = null
Link copied to clipboard

A routing block as defined below.

Link copied to clipboard
val routingWeight: Output<Int>? = null

The routing weight associated to the Express Route Connection. Possible value is between 0 and 32000. Defaults to 0.

Functions

Link copied to clipboard
open override fun toJava(): ExpressRouteConnectionArgs