Criando um VXC entre um MCR e o Microsoft Azure com a API
Este tópico descreve o procedimento da API para criar um VXC de um MCR para o Microsoft Azure ExpressRoute, incluindo como consultar localizações de interconexão do Azure e solicitar VXCs.
A implantação do MCR para o Azure inclui estas tarefas:
-
Configure um circuito ExpressRoute no console do Azure
Quando implantado, você recebe uma chave de serviço. Quando você valida uma chave de serviço, são apresentadas as portas primária e secundária e você pode escolher a porta para a conexão. Você pode usar a chave uma segunda vez e criar outra conexão para a porta não utilizada.
Para obter mais informações, consulte o tópico de ajuda da Microsoft Tutorial: Create and modify an ExpressRoute circuit.
-
Com a chave de serviço, crie e implemente seu VXC
Como parte da configuração do VXC, você pode escolher o tipo de peering.
O tipo de peering pode ser privado ou Microsoft.
Um tipo de peering definido resulta em peering configurado automaticamente com pares correspondentes em ambos os lados do Azure e da Megaport e um sistema implantado com uma configuração conhecida e funcional. Você pode modificar a configuração após a implantação.
Antes de começar, obtenha um token de acesso válido. Para mais informações, consulte Criando uma chave de API.
Validar a chave de serviço
Ao usar a API para validar uma chave de serviço do Azure, a resposta inclui detalhes do ExpressRoute das portas e pares associados. Você precisa dos detalhes das portas para criar os VXCs.
Para validar a chave de serviço na coleção do Postman
-
No Postman, expanda Cloud Connectivity > MCR > Azure (Conectividade em Nuvem > MCR > Azure) na navegação à esquerda e selecione GET Look Up Azure Service Key (GET Consultar chave de serviço do Azure).
-
Adicione a chave de serviço ao endpoint.
-
Clique em Send (Enviar) para fazer uma solicitação GET ao servidor da API.
GET {baseUrl}/v2/secure/azure/{service_key}
Aqui está um exemplo de resposta para uma nova chave (sem VXCs configurados):
{
"message": "Successful lookup",
"terms": "This data is subject to the Acceptable Use Policy https://www.megaport.com/legal/acceptable-use-policy",
"data": {
"managed": false,
"connectType": "AZURE",
"resource_type": "csp_connection",
"bandwidth": 200,
"service_key": "3e2480b2-b4d5-424b-976a-7b0de65a1b62",
"vlan": 3289,
"megaports": [
{
"portSpeed": 10000,
"name": "Washington DC Primary",
"state": "VA",
"description": "Azure ExpressRoute at Equinix DC2/6",
"productUid": "a7ae8a35-433e-44aa-87cb-a1b7995ab008",
"nServiceId": 32832,
"companyUid": "c40de5ed-4707-4471-a78c-69436de2c505",
"country": "USA",
"vxc": null,
"port": 14570,
"companyName": "Azure ExpressRoute",
"locationId": 67,
"productId": 14570,
"type": "primary",
"companyId": 1475
},
{
"portSpeed": 10000,
"name": "Washington DC Secondary",
"state": "VA",
"description": "Azure ExpressRoute at Equinix DC2/6",
"productUid": "07ab0ee6-7f77-41ac-bbe6-335e3ee6d182",
"nServiceId": 36431,
"companyUid": "c40de5ed-4707-4471-a78c-69436de2c505",
"country": "USA",
"vxc": null,
"port": 16108,
"companyName": "Azure ExpressRoute",
"locationId": 67,
"productId": 16108,
"type": "secondary",
"companyId": 1475
}
],
"peers": []
}
}
Para mais informações sobre cada campo de resposta, consulte Campos de Resposta da Chave de Serviço do Azure.
Ordenando um VXC com opções de peering
Com os detalhes da chave de serviço, crie um VXC para a porta primária e outro VXC para a porta secundária. Certifique-se de selecionar um MCR na mesma região que as portas do Azure da solicitação de consulta de chave de serviço.
Se você especificar o tipo de peering na solicitação da API para o VXC, a Megaport configurará o endereçamento IP e os detalhes do BGP tanto no lado do MCR quanto no lado do Azure para garantir uma configuração BGP funcional.
Para especificar o tipo de peering, adicione um tipo de peering ao array de peers na seção partnerConfig. Se um array de peers não existir, os peers são recuperados do Azure. Se os peers não forem especificados ao criar o VXC e não houver peers no Azure (que é normalmente o caso para novas chaves de serviço), o peering do MCR não será autoconfigurado.
O MCR cria uma VLAN para cada tipo de peering configurado. Se ambas as opções de peering privado e Microsoft forem especificadas, o MCR configura duas VLANs internas.
Nota
Os tipos de peering são lembrados e não podem ser alterados se uma chave foi usada anteriormente.
Para criar o VXC
-
Crie uma solicitação com o endpoint POST Create VXC to Azure (v3) (POST Criar VXC para Azure (v3)):
POST {baseUrl}/v3/networkdesign/buyDica
Para testar sua solicitação antes de fazer o pedido, você pode usar: POST {baseUrl}/v3/networkdesign/validate
-
Atualize o Body da solicitação com o
productUiddo MCR, o nome do VXC, oproductUidda porta do Azure e a chave de serviço. Inclua a opção de peering apropriada. A velocidade máxima (rateLimit) é definida no valor de largura de banda (bandwidth) da resposta da chave de serviço. Neste caso, é 200.A VLAN do Azure (se especificada) é a VLAN de tag externa para Q-in-Q. Se você não especificar a VLAN, ela será autoprovisionada.
Para usar uma chave do Azure com opção de peering privado, use este template:
[
{
"productUid": "{{mcrid}}",
"associatedVxcs": [
{
"productName": "Azure Primary VXC",
"rateLimit": 200,
"term": 12,
"shutdown": false,
"promoCode": "promox3mnthfree2",
"aEnd": {
"vlan": 0
},
"bEnd": {
"productUid": "{{azurepuid}}",
"vlan": "{{azurevlan}}",
"partnerConfig" : {
"connectType": "AZURE",
"serviceKey": "{{azurekey}}",
"peers": [{"type": "private"}]
}
}
}
]
}
]
Para peering da Microsoft, use esta linha para os peers:
Para peering da Microsoft e privado, use esta linha:
Depois de criar um VXC para a porta primária do Azure, crie outro VXC para se conectar ao productUid da porta secundária do Azure (altere o productName e o bEnd: productUid).
Resposta configurada
Quando você cria os VXCs com peering, outra solicitação de validação de chave de serviço exibe a configuração completa.
{
"message": "Successful lookup",
"terms": "This data is subject to the Acceptable Use Policy https://www.megaport.com/legal/acceptable-use-policy",
"data": {
"managed": true,
"connectType": "AZURE",
"resource_type": "csp_connection",
"bandwidth": 200,
"service_key": "3e2480b2-b4d5-424b-976a-7b0de65a1b62",
"vlan": 3289,
"megaports": [
{
"portSpeed": 10000,
"name": "Washington DC Primary",
"state": "VA",
"description": "Azure ExpressRoute at Equinix DC2/6",
"productUid": "a7ae8a35-433e-44aa-87cb-a1b7995ab008",
"nServiceId": 32832,
"companyUid": "c40de5ed-4707-4471-a78c-69436de2c505",
"country": "USA",
"vxc": 60574,
"port": 14570,
"companyName": "Azure ExpressRoute",
"locationId": 67,
"productId": 14570,
"type": "primary",
"companyId": 1475
},
{
"portSpeed": 10000,
"name": "Washington DC Secondary",
"state": "VA",
"description": "Azure ExpressRoute at Equinix DC2/6",
"productUid": "07ab0ee6-7f77-41ac-bbe6-335e3ee6d182",
"nServiceId": 36431,
"companyUid": "c40de5ed-4707-4471-a78c-69436de2c505",
"country": "USA",
"vxc": 60575,
"port": 16108,
"companyName": "Azure ExpressRoute",
"locationId": 67,
"productId": 16108,
"type": "secondary",
"companyId": 1475
}
],
"peers": [
{
"peer_asn": 133937,
"shared_key": null,
"primary_subnet": "169.254.167.176/30",
"secondary_subnet": "169.254.167.180/30",
"vlan": 100,
"type": "private"
},
{
"peer_asn": 133937,
"shared_key": null,
"prefixes": "117.18.81.116/30,117.18.81.120/30",
"primary_subnet": "117.18.81.116/30",
"secondary_subnet": "117.18.81.120/30",
"vlan": 200,
"type": "microsoft"
}
]
}
}