Crea una conexión iniciada desde Google Cloud

En esta página, se describen los pasos para crear y aprovisionar correctamente una conexión de Partner Cross‑Cloud Interconnect para Amazon Web Services (AWS) iniciada desde Google Cloud.

Si no tienes una clave de activación de AWS, puedes iniciar y aprovisionar una conexión de Partner Cross‑Cloud Interconnect para AWS desdeGoogle Cloud.

Antes de comenzar el proceso de aprovisionamiento de Partner Cross‑Cloud Interconnect para AWS, asegúrate de que se cumplan las siguientes condiciones:

Para lograr una conexión exitosa, debes crear el recurso transport. Sigue estas instrucciones para crear el transporte.

Antes de comenzar

Antes de empezar, revisa las siguientes secciones.

Crea o selecciona un proyecto

Para facilitar la configuración de la interconexión de socio de Cross-Cloud Interconnect para AWS, comienza por identificar un proyecto válido.

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Install the Google Cloud CLI.

  5. Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.

  6. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  8. Verify that billing is enabled for your Google Cloud project.

  9. Install the Google Cloud CLI.

  10. Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.

  11. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  12. Si usas Google Cloud CLI, configura el ID del proyecto con el comando gcloud config set.

    gcloud config set project PROJECT_ID

    Reemplaza PROJECT_ID por el ID de tu proyecto único.

    En las instrucciones de la CLI de gcloud de esta página, se supone que estableciste el ID del proyecto.

  13. Para confirmar que configuraste el ID del proyecto de forma correcta, usa el comando gcloud config list.

    gcloud config list --format='text(core.project)'
  14. Habilita la API de Network Connectivity

    Antes de que puedas realizar cualquier tarea con Cloud Interconnect, debes habilitar la API de Network Connectivity.

    Console

    Para habilitar la API de Network Connectivity, haz lo siguiente:

    1. En la consola de Google Cloud , ve a la página de la API de Network Connectivity.

      Ir a la API de Network Connectivity

    2. Haz clic en Habilitar.

    Como alternativa, puedes habilitar la API con la biblioteca de la API de la consola deGoogle Cloud , como se describe en Habilita las APIs.

    Inicia la conexión desde Google Cloud si no tienes una clave de activación

    Enumera los perfiles disponibles

    Para enumerar los perfiles disponibles en un proyecto específico de la región en la que deseas aprovisionar la conectividad, sigue estos pasos.

    API

    Usa el método networkconnectivity.remoteTransportProfiles.list con un cuerpo de solicitud vacío.

    $ curl -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://networkconnectivity.googleapis.com/v1beta/projects/PROJECT/locations/LOCATION/remoteTransportProfiles"
    

    Reemplaza los siguientes valores:

    • PROJECT: el nombre del proyecto
    • LOCATION: Es el nombre de la región de Google Cloud en la que deseas aprovisionar la conectividad, como us-west1.

    Crea el recurso transport

    Durante el proceso de creación del recurso transport, debes especificar los campos de ancho de banda, red, remoteProfile y remoteAccountId. advertisedRoutes es un campo opcional. Sin embargo, para garantizar la conectividad desde AWS, debes especificar este campo. Este campo puede ser una lista de subredes IPv4 e IPv6. Si tu red usa la creación automática de subredes, usa el valor 10.128.0.0/9 de Google Cloud.

    Para crear un recurso de transporte, sigue estos pasos.

    API

    Usa el método networkconnectivity.transports.create y especifica el TRANSPORT_ID, de manera similar al siguiente ejemplo:

    curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" "https://networkconnectivity.googleapis.com/v1beta/projects/PROJECT/locations/LOCATION/transports?="TRANSPORT_ID" --data '{
    "network": "NETWORK",
    "remoteProfile": "REMOTE_PROFILE",
    "bandwidth": "BANDWIDTH",
    "remoteAccountId": "AWS_ACCOUNT_ID",
    "advertisedRoutes": ["IP_RANGE_1","IP_RANGE_2"],
    "stackType": "STACK_TYPE
    }'
    

    Reemplaza los siguientes valores:

    • PROJECT: Es el nombre del proyecto en el que deseas crear el transporte.
    • LOCATION: Es el nombre de la región de Google Cloud en la que deseas aprovisionar la conectividad, como us-west1.
    • TRANSPORT_ID: Un nombre para el recurso de transporte
    • NETWORK: Es la red en la que deseas crear el transporte.
    • REMOTE_PROFILE: Es el perfil en el que deseas aprovisionar la conectividad.
    • BANDWIDTH: El ancho de banda elegido para tu conexión, como BPS_1G
    • AWS_ACCOUNT_ID: El ID de tu cuenta de AWS
    • IP_RANGE: Es una lista de rangos de direcciones IP separados por comas.
    • STACK_TYPE (opcional): Es el tipo de pila de versión de la dirección IP. Debe ser IPV4_ONLY o IPV4_IPV6. El valor predeterminado es IPV4_ONLY.

    En el resultado, busca el valor del campo name. Tiene el formato projects/PROJECT/locations/LOCATION/operations/OPERATION_ID, en el que OPERATION_ID es el ID de tu operación.

    Para verificar el estado de la operación, usa el método networkconnectivity.operations.get.

    GET https://networkconnectivity.googleapis.com/v1/locations/LOCATION/operations/OPERATION_ID
    

    Reemplaza lo siguiente:

    • LOCATION: Es el nombre de la región de Google Cloud en la que deseas aprovisionar la conectividad, como us-west1.
    • OPERATION_ID: Es el ID de la operación.

    Si el recurso transport finalizó la creación, el resultado tendrá la línea "done": true. Copia los siguientes valores del resultado para usarlos en pasos posteriores:

    • El valor del campo generatedActivationKey
    • El valor del campo peeringNetwork

    Completa los pasos en la API de AWS

    Sigue las instrucciones del documento de referencia de la API de AWS con la clave de activación que generaste en el paso anterior.

    Establece el intercambio de tráfico entre redes de VPC

    Puedes establecer de forma proactiva el intercambio de tráfico entre redes de VPC en el extremoGoogle Cloud . Para ello, usa el peeringNetwork que se devolvió del recurso transport creado anteriormente y asegúrate de crear un peering con el mismo tipo de pila. El tipo de pila predeterminado coincide con el recurso transport a través de IPV4_ONLY.

    Para recibir las rutas de AWS, debes habilitar el campo Import custom routes.

    La MTU en la red de VPC de intercambio de tráfico se establece de forma explícita en el valor máximo para evitar problemas de MTU en la conectividad. Si usas una MTU inferior a 8896, es posible que recibas una advertencia WARNING: Some requests generated warnings: - Network MTU 1460B does not match the peer's MTU 8896B. En ese caso, debes asegurarte de usar configuraciones de MTU coincidentes entre tu red de VPC Google Cloud y la red de VPC de AWS. Si no coinciden, es posible que debas anular los valores de MTU y establecer el denominador común más bajo. Por ejemplo, si usas 8896 en Google Cloud y 8800 en AWS, todo en Google Cloud debe configurarse como 8800.

    gcloud

    Para establecer el intercambio de tráfico entre redes de VPC, usa el comando gcloud compute networks peerings create.

    gcloud compute networks peerings create "TRANSPORT_NAME" \
        --network="VPC_NETWORK"
        --peer-network="PEERING_NETWORK" \
        --import-custom-routes
        --export-custom-routes
    

    Reemplaza los siguientes valores:

    • TRANSPORT_NAME: Es el nombre del transporte que creaste.
    • VPC_NETWORK: Es el nombre de la red de VPC para la que deseas enumerar las rutas.
    • PEERING_NETWORK: El nombre de la red de VPC proporcionado por el recurso Transport que copiaste del campo peeringNetwork del recurso transport

    Si el comando se ejecuta correctamente, el campo state del resultado tendrá el valor ACTIVE.

    API

    Para establecer el intercambio de tráfico entre redes de VPC, usa el método compute.networks.addPeering.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT/global/networks/NETWORK/addPeering
    

    Reemplaza los siguientes valores:

    • PROJECT: Es el nombre del proyecto con el que intercambias tráfico.
    • NETWORK: Es el nombre del recurso de red al que se agregará el intercambio de tráfico.

    Verifica tu conexión

    Para verificar que se estableció la conectividad, enumera las redes de VPC interconectadas y las tablas de rutas. Una vez que se complete la configuración de AWS, podrás ver tus rutas de AWS en la lista.

    gcloud

    Para enumerar las redes de VPC con intercambio de tráfico, usa el comando gcloud compute networks peerings list.

    gcloud compute networks peerings list
    

    El resultado es similar a lo siguiente:

    DEST_RANGE   TYPE                   NEXT_HOP_REGION  PRIORITY  STATUS
    10.0.0.0/16  DYNAMIC_PEERING_ROUTE  us-east4         0         accepted
    10.0.0.0/16  DYNAMIC_PEERING_ROUTE  us-east4         0         accepted
    

    Para enumerar las rutas de un transporte específico, usa el comando gcloud compute networks peerings list-routes.

    gcloud compute networks peerings list-routes TRANSPORT_ID\
        --direction=INCOMING \
        --network=NETWORK \
        --region=LOCATION
    

    Reemplaza los siguientes valores:

    • TRANSPORT_ID: El nombre del recurso de transporte
    • NETWORK: Es el nombre de la red de VPC para la que deseas enumerar las tablas de rutas.
    • LOCATION: Es la ubicación del recurso de transporte.

    API

    Para enumerar las redes interconectadas, usa el método compute.networks.list.

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT/global/networks
    

    Reemplaza PROJECT por el nombre del proyecto para el que deseas enumerar las redes.

    Para enumerar rutas, usa el método compute.routes.listPeeringRoutes.

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT/global/networks/NETWORK/listPeeringRoutes
    

    Reemplaza los siguientes valores:

    • PROJECT con el nombre del proyecto para el que deseas enumerar las rutas
    • NETWORK: Es el nombre de la red de VPC para la que deseas enumerar las tablas de rutas.

    ¿Qué sigue?