Pular para conteúdo

Criando um VXC entre uma MVE e a AWS com a API

Este tópico descreve o processo para criar um VXC de um MVE até a AWS, incluindo como procurar locais AWS e solicitar VXCs.

Você pode configurar dois tipos de conexões AWS para um MVE: uma VIF Hospedada AWS ou uma Conexão Hospedada AWS.

Você pode diferenciar o tipo de conexão suportada em locais parceiros pelo atributo connectType. Conexões VIF Hospedadas são connectType=AWS e Conexões Hospedadas são connectType=AWSHC.

O lançamento de MVE para a AWS inclui as seguintes tarefas:

  1. Procurar detalhes de local da AWS

    Para criar um VXC para a AWS, você primeiro precisa identificar o productUid da porta à qual você deseja se conectar.

    Você pode pesquisar locais AWS para a terminação B da conexão com o endpoint v2/dropdowns/partner/megaports.

  2. Criar e lançar um VXC

    Com os detalhes da porta identificados, você pode criar o VXC para a AWS a partir do MVE.

    Detalhes de configuração são especificados no corpo (Body) da solicitação. Algumas das informações principais que você deverá especificar incluem o productUid do MVE, o productUid da porta da AWS port, e o ID da conta da AWS.

Antes de começar, obtenha um token de acesso válido. Para mais informações, veja Criando uma Chave API.

Procurar detalhes de local da AWS

Use a API para procurar o productUid da porta à qual você deseja se conectar. A resposta inclui detalhes das portas disponíveis. Você precisa dos detalhes da porta para criar o VXC.

Na resposta API, portas disponíveis que aceitam VXCs são listadas como “vxcPermitted”: true.

Para procurar os detalhes de local da AWS

  1. Expanda a pasta Locations no menu de navegação à esquerda e clique em GET Partner Megaports.

  2. Clique em Send para fazer uma solicitação GET ao servidor API.

    GET {baseUrl}/v2/dropdowns/partner/megaports
    

    Essa solicitação retorna todas as interfaces que a Megaport tem com Provedores de Serviços de Nuvem. Você pode buscar clicando na lupa e inserindo um local, data center, ou outro parâmetro no campo de busca.

    O connectType indica o Provedor de Serviço de Nuvem. A AWS inclui “AWS” para VIFs Hospedados e “AWSHC” para Conexões Hospedadas.

    Você pode filtrar os resultados por connectType e vxcPermitted.

    GET {baseUrl}/v2/dropdowns/partner/megaports?connectType=AWS&vxcPermitted=true
    

    Este exemplo usa uma porta na região ap-southeast-2 (Sidney) que aceita VXCs (“vxcPermitted”: true).

      {
            "productUid": "bc7bf158-532b-4306-af12-c57c0bedc8a6",
            "companyUid": "605cb850-dfb4-4a05-a171-8bf17757b3a2",
            "companyName": "AWS",
            "title": "Asia Pacific (Sydney) (ap-southeast-2)",
            "locationId": 50,
            "speed": 10000,
            "maxVxcSpeed": 10000,
            "vxcPermitted": true,
            "diversityZone": null,
            "rank": 657,
            "lag_id": 7,
            "lag_primary": true,
            "aggregation_id": 27443,
            "connectType": "AWS"
        },

Criar e lançar um VXC

Com os detalhes da porta, crie o VXC para a AWS a partir do MVE.

Você pode especificar os detalhes de configuração no Body da solicitação. O primeiro productUididentifica o ID do MVE e o bEnd: productUid identifica o local da porta AWS da pesquisa de Parceiros Megaport. Você também precisa providenciar o seu número de conta da AWS na solicitação.

Este exemplo usa o tipo de conexão VIF Hospedado, connectType=AWS.

Dica

Para testar a sua solicitação antes de fazer o pedido e ver detalhes de preço, use o endpoint /v3/networkdesign/validate com a mesma configuração de Body.

Para criar um VXC

  1. Crie uma solicitação com o endpoint POST Buy AWS - Hosted VIF (v3):

    POST {baseUrl}/v3/networkdesign/buy
    
  2. Atualize o Body da solicitação com o productUid do MVE, o nome do VXC, o productUid da porta da AWS, e o ID da conta da AWS (ownerAccount).
    Você também pode mudar valores adicionais, tais como limite de taxa, vigência do contrato, ID da VLAN, valores ASN, authKey, e endereçamento IP.

    A seguir você vê uma solicitação de exemplo:

[
  {
    "productUid": "02ec2091-46bb-4904-bd17-96c752ff826e",
    "associatedVxcs": [
      {
        "productName": "AWS VIF MVE VXC",
        "rateLimit": "100",
        "term": 12,
        "shutdown": false,
        "aEnd": {
          "innerVlan": 101
        },
        "bEnd": {
          "productUid": "bc7bf158-532b-4306-af12-c57c0bedc8a6",
          "partnerConfig": {
            "connectType": "AWS",
            "Name": "Test Megaport VIF",
            "type": "private",
            "asn": 65105,
            "ownerAccount": "370553169139",
            "authKey": "123455",
            "customerIpAddress": null,
            "amazonIpAddress": null
          }
        }
      }
    ]
  }
]

Após enviar a solicitação, você receberá uma resposta de sucesso quando o VXC for solicitado.

A seguir você vê uma resposta de exemplo:

{
    "message": "VXC [92e5c7d6-8d97-4ee3-bbf9-13e69b49517c] created.",
    "terms": "This data is subject to the Acceptable Use Policy. https://www.megaport.com/legal/acceptable-use-policy",
    "data": [
        {
            "createDate": 1680239079646,
            "vxcOrderId": 114006,
            "payerMegaPortId": 155354,
            "nonPayerMegaPortId": 12103,
            "payerMegaPortName": "greg T",
            "nonPayerMegaPortName": "Asia Pacific (Sydney) (ap-southeast-2)",
            "payerCompanyId": 1153,
            "nonPayerCompanyId": 117,
            "payerLocationId": 2,
            "nonPayerLocationId": 50,
            "salesId": null,
            "payerCompanyName": "Megaport Lab",
            "nonPayerCompanyName": "AWS",
            "payerMegaPortNsId": 397416,
            "nonPayerMegaPortNsId": 27443,
            "payerVlanId": 0,
            "nonPayerVlanId": 0,
            "payerInnerVlanId": 101,
            "nonPayerInnerVlanId": null,
            "payerApproverName": "Greg Brown",
            "payerApproverId": 50402,
            "nonPayerApproverName": "Greg Brown",
            "nonPayerApproverId": 50402,
            "payerApproval": 1680239079601,
            "nonPayerApproval": 1680239079629,
            "fixedTerm": true,
            "duration": 1,
            "rollover": true,
            "serviceName": "from greg T to Asia Pacific (Sydney) (ap-southeast-2)",
            "payerStatus": "APPROVED",
            "nonPayerStatus": "APPROVED",
            "speed": 100,
            "distanceBand": "INTERZONE",
            "intercapPath": "",
            "awsId": null,
            "promoCode": null,
            "dealUid": null,
            "rateType": "MONTHLY",
            "vxcJTechnicalServiceId": 155724,
            "vxcJTechnicalServiceUid": "92e5c7d6-8d97-4ee3-bbf9-13e69b49517c",
            "provisionDate": 1680239079588,
            "orderType": "NEW",
            "monthlyDiscountAmount": null,
            "discountMonths": null,
            "amazonDirectConnectConfigDto": {
                "type": "private",
                "asn": 65105,
                "ownerAccount": "370553169139",
                "authKey": "123455",
                "customerIpAddress": null,
                "amazonIpAddress": null,
                "prefixes": null,
                "name": null
            },
            "amsixConnectConfigDto": null,
            "webAirProvItem": null,
            "sdrcProvItem": null,
            "rate": null,
            "setup": null,
            "asn": null,
            "bgpPassword": null,
            "usageAlgorithm": "POST_PAID_HOURLY_SPEED_LONG_HAUL_VXC",
            "costCentre": null,
            "azureServiceKey": null,
            "oracleVirtualCircuitId": null,
            "serviceKey": null,
            "vxc": {
                "serviceName": "Test AWS VIF MVE VXC",
                "name": "Test AWS VIF MVE VXC",
                "secondaryName": null,
                "technicalServiceId": 155724,
                "technicalServiceUid": "92e5c7d6-8d97-4ee3-bbf9-13e69b49517c",
                "requestedDate": 1680239079588,
                "configuredDate": null,
                "currentEstimatedDelivery": null,
                "companyName": "Megaport Lab",
                "companyId": 1153,
                "billingContactName": null,
                "billingContactId": null,
                "adminContactName": null,
                "adminContactId": null,
                "technicalContactName": null,
                "technicalContactId": null,
                "salesName": null,
                "salesId": null,
                "billableId": 147629,
                "billableUsageAlgorithm": null,
                "productType": "VXC",
                "provisioningStatus": "DEPLOYABLE",
                "failedReason": null,
                "inAdvanceBillingStatus": null,
                "provisioningItems": [],
                "tags": [],
                "vxcDistanceBand": "INTERZONE",
                "intercapPath": "",
                "marketplaceVisibility": true,
                "vxcPermitted": true,
                "vxcAutoApproval": false,
                "createDate": 1680239079620,
                "terminationDate": null,
                "contractStartDate": null,
                "contractTermMonths": 12,
                "rateType": "MONTHLY",
                "trialAgreement": false,
                "payerCompanyId": null,
                "nonPayerCompanyId": null,
                "minimumSpeed": null,
                "maximumSpeed": null,
                "rateLimit": 100,
                "errorMessage": null,
                "market": "Australia",
                "accountManager": null,
                "promptUid": null,
                "components": [],
                "attributes": [],
                "aLocation": null,
                "bLocation": null,
                "aLocationId": null,
                "bLocationId": null,
                "attributeTags": {},
                "createdBy": "f39b8983-256e-4643-adec-9f0b5da09ab7",
                "buyoutPort": null,
                "virtual": false,
                "locked": false,
                "adminLocked": false,
                "bgpShutdownDefault": false,
                "originDomain": null
            },
            "connectType": "AWS",
            "payerConfig": {},
            "nonPayerConfig": {},
            "attributeTags": {},
            "serviceLicense": null,
            "originDomain": null,
            "fullyApproved": true
        }
    ]
}

O VXC agora aparecerá no Megaport Portal.

Neste exemplo, o VIF Hospedado AWS aparecerá na conta do portal AWS sob Direct Connect - Virtual Interfaces. O usuário da conta pode aceitar a Interface Virtual e conectá-la a um Virtual Private Gateway ou a um Direct Connect Gateway e então a suas VPCs.