Before you can connect to Azure, you need to set up an ExpressRoute circuit in the Azure console. When set up, you receive a service key with connection details. To configure your MVE connection to Azure, you look up the service key details and then create VXCs to the Azure ports.
- Set up an ExpressRoute circuit in the Azure console When deployed, you get a service key. When you validate a service key, you are presented with primary and secondary ports and can choose the port for the connection. You can use the key a second time and create another connection to the unused port. For more information, see the Microsoft help topic Tutorial: Create and modify an ExpressRoute circuit.
- Validate the Azure service key When ordering an Azure service, use the service key and ensure there is a free port for a connection. The API response includes ExpressRoute details of the associated ports and peers. You need the Azure port details to create the VXC.
- Create and deploy a VXC With the validated service key and port details, create the VXC to Microsoft Azure from the MVE. As part of the VXC configuration, you can choose the peering type. The peering type can be either private or Microsoft. A defined peering type results in automatically configured peering with peers matched on both the Azure and Megaport sides and a deployed system with a known working configuration. You can modify the configuration once deployed.
Validate the service key
Use the API to validate a Microsoft Azure service key. The response includes ExpressRoute details of the associated ports and peers. You need the Azure port details to create the VXC. Review the service key and ensure there is a free Port for a connection. In the API response, available ports are listed as"vxc":null and ports with an assigned value are not available.
For more information about each response field, see Azure Service Key Response Fields.
To validate the service key
-
Use the GET Look Up Azure Service Key API to look up Microsoft Azure location details with the service key:
GET {baseUrl}/v2/secure/azure/{service_key}
Create and deploy a VXC to a specific vNIC
With the Azure ExpressRoute port details from the service key lookup, create the VXC to Azure. You specify the configuration details in the Body of the request. The firstproductUid identifies the MVE and the bEnd: productUid identifies the Azure interface. You also need to provide the Azure ExpressRoute service key in serviceKey field.
You can create multiple connections to an Azure interface, for example, if you need to connect both private and Microsoft peers to the same interface.
Single Azure Peering VLAN
In this example, Single Azure Peering VLAN is used. You can tell this because the aEnd innerVlan and the bEnd innerVlan are specified. For Single Azure Peering VLAN both are set to the same value. If this value is set to0, a valid inner VLAN will be allocated and set by the system.
To create a VXC
-
Create a request with the POST Create VXC to Azure (v3) endpoint:
-
Update the Body of the request with the
productUidof the MVE, the name of the VXC, theproductUidof the Azure port, and set the service keyinnerVlanto 501 andvNicIndexto 0 (interface 1).
The vNIC number relates to the following MVE interfaces:
- vNIC 0 = interface 1 on the MVE
- vNIC 1 = interface 2 on the MVE
- vNIC 2 = interface 3 on the MVE
- vNIC 3 = interface 4 on the MVE
- vNIC 4 = interface 5 on the MVE
Multiple Microsoft peerings (Q-in-Q)
If you do not want to use Single Azure Peering VLAN and want to use Q-in-Q to have multi Microsoft peerings on a single VXC, only specify the aEnd innerVlan value. With Q-in-Q in play, the Azure peering VLAN ID set in Azure is not shown in the Megaport APIs or Portal. It is configured by the customer in the Azure ExpressRoute peerings and matched on the MVE instance configuration. In the example below, the aEnd innerVlan field of 100 is actually an outer vlan or s-tag on the MVE. The Q-in-Q inner VLAN (c-tag) running inside the innerVlan is transparent to Megaport.Azure VXCs are the only cloud VXC type that allow you to specify a double-tagged VXC.