action.skip

Créer un VXC vers AWS avec l’API

Ce sujet décrit la procédure API pour créer un VXC d’un Port vers AWS, y compris comment rechercher les emplacements d’interconnexion cloud, valider la connexion et commander le VXC.

L’exemple dans ce sujet crée une connexion Hosted VIF à AWS avec un débit de 500 Mbps. Pour suivre cet exemple, utilisez l’URL de l’environnement de staging, qui permet de configurer les connexions sans déployer ni facturer les services.

Avant de commencer, obtenez un jeton d’accès valide. Pour plus d’informations, voir Création d’une clé API.

Conseil

Pour voir toutes les options pour les requêtes utilisées dans cet exemple, voir https://dev.megaport.com.

Rechercher les détails de localisation du port AWS

Pour créer un VXC vers AWS, vous devez connaître les détails du port AWS. Utilisez l’API pour retourner les interfaces que Megaport a avec les fournisseurs de services cloud, pour identifier les détails requis du port AWS.

Pour rechercher les détails de localisation du port AWS dans la collection Postman

  1. Développez le dossier Locations dans la navigation de gauche et cliquez sur GET Partner Megaports.

  2. Cliquez sur Send pour effectuer une requête GET au serveur API.

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

    Cette requête renvoie toutes les interfaces que Megaport a avec les fournisseurs de services cloud. Vous pouvez effectuer une recherche en cliquant sur la loupe et en entrant un emplacement, un centre de données ou un autre paramètre dans le champ de recherche.

    Le connectType indique le fournisseur de services cloud. AWS inclut “AWS” pour les Hosted VIFs et “AWSHC” pour les Connexions Hébergées.

    Vous pouvez filtrer les résultats par connectType et vxcPermitted.

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

    Cet exemple utilise un port à Interxion DUB2 qui accepte les VXCs (“vxcPermitted”: true) et est dans la région eu-west-1.

      {
            "connectType": "AWS",
            "productUid": "6cc21ccb-5ecc-4869-ab0e-b3fa17f5110f",
            "vxcPermitted": true,
            "companyUid": "623cb950-abb4-4b07-b372-8cf55756c322",
            "companyName": "AWS",
            "title": "EU (Ireland) (eu-west-1)",
            "locationId": 96,
            "speed": 10000,
            "rank": 61,
            "lag_id": 2,
            "lag_primary": true,
            "aggregation_id": 54188
        },

Créer et déployer un VXC

Avec les détails du port AWS obtenus via l’API GET Partner Megaports, vous pouvez valider puis créer un VXC.

Pour tester et valider la commande

  1. Dans Postman, développez Cloud Connectivity > Port > AWS Direct Connect dans la navigation de gauche et sélectionnez POST Validate AWS - Hosted VIF (v3).

  2. Mettez à jour le corps (Body) de la requête avec le productUid du Port, le productUid du port AWS, et l’identifiant du compte AWS.
    Vous pouvez également modifier d’autres valeurs, comme le nom, la limite de débit, la durée du contrat, l’ID VLAN, les valeurs ASN, authKey et l’adressage IP.

  3. Cliquez sur Send pour envoyer la requête POST.

    POST {baseUrl}/v3/networkdesign/validate
    
[
    {
        "productUid": "a49cf3f1-20a1-4390-93aa-5005bdafe3d7", 
        "associatedVxcs": [
            {
                "productName": "My Amazon Direct Connect",
                "rateLimit": "500",
                "term": 12,
                "shutdown": false,
                "promoCode": "promox3mnthfree2",
                "aEnd": {
                    "vlan": 777
                },
                "bEnd": {
                    "productUid": "6cc21ccb-5ecc-4869-ab0e-b3fa17f5110f", 
                    "partnerConfig": {
                        "connectType": "AWS",
                        "name": "Amazon name for service",
                        "type": "private",
                        "asn": 65105,
                        "amazonAsn": 64555,
                        "ownerAccount": "XXXXXXXXXXXX",
                        "authKey": "123456",
                        "prefixes": "10.0.1.0/24",
                        "customerIpAddress": null,
                        "amazonIpAddress": null
                    }
                }
            }
        ]
    }
]

Une fois validé, vous êtes prêt à passer la commande du VXC.

Pour créer un VXC

  1. Copiez le corps (Body) validé depuis POST Validate AWS - Hosted VIF (v3) et collez-le dans le corps (Body) de POST Buy AWS - Hosted VIF (v3).

  2. Cliquez sur Send pour envoyer la requête POST.

    POST {baseUrl}/v3/networkdesign/buy
    

Voici un exemple de réponse réussie.

{
    "message": "VXC [47d6cc4d-6a1a-4301-b06c-cebb5f9b8f3e] created. ",
    "terms": "This data is subject to the Acceptable Use Policy https://www.megaport.com/legal/acceptable-use-policy",
    "data": [
        {
            "createDate": 1588868593704,
            "vxcOrderId": 42328,
            "payerMegaPortId": 68124,
            "nonPayerMegaPortId": 52786,
            "payerMegaPortName": "API Port",
            "nonPayerMegaPortName": "EU (Ireland) (eu-west-1)",
            "payerCompanyId": 2278,
            "nonPayerCompanyId": 117,
            "payerLocationId": 89,
            "nonPayerLocationId": 96,
            "salesId": null,
            "payerCompanyName": "Megaport Lab",
            "nonPayerCompanyName": "AWS",
            "payerMegaPortNsId": 138231,
            "nonPayerMegaPortNsId": 221182,
            "payerVlanId": 777,
            "nonPayerVlanId": 0,
            "payerApproverName": "Paul McGuinness",
            "payerApproverId": 12695,
            "nonPayerApproverName": "Paul McGuinness",
            "nonPayerApproverId": 12684,
            "payerApproval": 1582268553574,
            "nonPayerApproval": 1228868693614,
            "fixedTerm": true,
            "duration": 1,
            "rollover": true,
            "serviceName": "from API Port to EU (Ireland) (eu-west-1)",
            "payerStatus": "APPROVED",
            "nonPayerStatus": "APPROVED",
            "speed": 500,
            "distanceBand": "ZONE",
            "intercapPath": "",
            "awsId": null,
            "promoCode": null,
            "rateType": "MONTHLY",
            "vxcJTechnicalServiceId": 57115,
            "vxcJTechnicalServiceUid": "47d6cc4d-6a1a-4301-b06c-cebb5f9b8f3e",
            "provisionDate": 1588868593517,
            "orderType": "NEW",
            "monthlyDiscountAmount": null,
            "discountMonths": null,
            "amazonDirectConnectConfigDto": {
                "type": "private",
                "asn": 65105,
                "ownerAccount": "XXXXXXXXXXXX",
                "authKey": "123456",
                "customerIpAddress": null,
                "amazonIpAddress": null,
                "prefixes": "10.0.1.0/24",
                "name": "Amazon name for service"
            },
            "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,
            "connectType": "AWS",
            "payerConfig": {},
            "nonPayerConfig": {},
            "attributeTags": {},
            "fullyApproved": true
        }
    ]
}

Le Port et le VXC apparaissent maintenant dans le Megaport Portal.

Vue Portal du port API et VXC

Pour cet exemple, le Hosted VIF AWS apparaîtra dans le compte du portail AWS sous Direct Connect - Virtual Interfaces. Le titulaire du compte peut accepter l’Interface Virtuelle et la connecter à une Passerelle Privée Virtuelle ou une Passerelle Direct Connect, puis à leurs VPCs.