Crear y gestionar interfaces de Private Service Connect

En esta página se describe cómo pueden crear y gestionar interfaces de Private Service Connect los administradores de redes de productores. Las interfaces de Private Service Connect permiten que las redes de nube privada virtual (VPC) de los productores de servicios inicien conexiones con las redes de VPC de los consumidores.

Antes de empezar

Roles

Para obtener los permisos que necesitas para crear interfaces de Private Service Connect, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en tu proyecto:

Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.

También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.

El rol Administrador de instancias de Compute (v1) contiene el permiso compute.instances.pscInterfaceCreate, que es necesario para crear interfaces de Private Service Connect.

Crear VMs con interfaces de Private Service Connect

Para crear una conexión de interfaz de Private Service Connect, necesitas una instancia de máquina virtual (VM) que tenga al menos dos interfaces de red. La primera interfaz se conecta a una subred de productor. Las otras interfaces pueden ser interfaces de Private Service Connect que soliciten conexiones a vinculaciones de red en diferentes redes de VPC de consumidor.

Si se acepta una conexión, Google Cloud asigna a la interfaz de Private Service Connect una dirección IP interna de la subred especificada por el adjunto de red.

Cuando creas una VM con varias interfaces de Private Service Connect, cada interfaz de Private Service Connect debe conectarse a una vinculación de red diferente que esté en una red de VPC diferente.

Si creas una interfaz de Private Service Connect que hace referencia a un adjunto de red configurado para aceptar conexiones manualmente y el proyecto de la interfaz no está en la lista de aceptación del adjunto de red, se producirá un error al crear la VM de la interfaz de Private Service Connect. En este caso, colabora con la organización del consumidor para añadir tu proyecto a la lista de permitidos y, a continuación, crea una interfaz de Private Service Connect.

Cuando creas una interfaz de Private Service Connect, puedes asignarle de forma opcional uno o varios intervalos de IP de alias internos. Si tienes previsto asignar intervalos de IPs de alias, ponte en contacto con la organización de consumidor para determinar los intervalos de direcciones IP adecuados.

Para asignar un intervalo de IPs de alias, especifica la longitud del prefijo del intervalo en notación CIDR. Cuando asignas uno o varios intervalos de IPs de alias a una interfaz de Private Service Connect,Google Cloud asigna los intervalos de IPs de alias del intervalo de direcciones IP principal de la subred asociada al acoplamiento de red. La dirección IP principal de la interfaz de Private Service Connect se asigna desde fuera de cualquier intervalo de IPs de alias. Si no hay suficientes direcciones IP en la subred de la conexión de red para asignar la dirección IP principal y los intervalos de IP de alias, se producirá un error al crear la VM de la interfaz de Private Service Connect. Puedes encontrar las direcciones IP específicas que se asignan describiendo la máquina virtual de la interfaz.

Para crear interfaces dinámicas de Private Service Connect (vista previa), usa la CLI de gcloud o envía una solicitud de API.

Consola

  1. En la Google Cloud consola, ve a la página Instancias de VM:

    Ir a instancias de VM

  2. Haz clic en Crear instancia.

  3. Escribe un nombre.

  4. Selecciona una región que coincida con la de la red adjunta a la que quieras conectarte.

  5. Selecciona una zona.

  6. Haz clic en Advanced options (Opciones avanzadas).

  7. Haz clic en Redes.

  8. En la sección Interfaces de red, haga clic en la primera interfaz de red, que es la interfaz de red principal, y, a continuación, haga lo siguiente:

    1. Selecciona una red para la interfaz de red principal.
    2. Selecciona una subred para la interfaz de red principal. Esta subred debe estar en la misma región que la vinculación de red de la interfaz de Private Service Connect.
  9. Haz clic en Añadir una interfaz de red.

  10. En Tipo de interfaz, selecciona Private Service Connect.

  11. Introduce una URL de archivo adjunto de red.

  12. Seleccione un tipo de pila de IP. Para crear una interfaz de Private Service Connect de doble pila, la subred del adjunto de red debe ser de doble pila.

  13. Opcional: Para añadir un intervalo de IPs alias, en el cuadro Longitud del prefijo, introduce la longitud del prefijo (por ejemplo, /30). Puedes añadir varios intervalos de IPs de alias haciendo clic en Añadir intervalo de IPs y, a continuación, introduciendo la longitud del prefijo de cada intervalo de IPs de alias que quieras añadir.

  14. Haz clic en Listo.

  15. Haz clic en Crear.

gcloud

  • Para crear una VM con una interfaz virtual de Private Service Connect, usa el comando gcloud compute instances create.

    gcloud compute instances create INSTANCE_NAME \
        --zone=ZONE \
        --machine-type=MACHINE_TYPE \
        --image-project=IMAGE_PROJECT \
        --image-family=IMAGE_FAMILY \
        --network-interface='subnet=PRODUCER_SUBNET,no-address' \
        --network-interface='network-attachment=ATTACHMENT_URI,stack-type=STACK_TYPE
    

    Haz los cambios siguientes:

    • INSTANCE_NAME: el nombre de la nueva instancia
    • ZONE: la zona de la nueva instancia
    • MACHINE_TYPE: el tipo de máquina de la instancia, que puede ser predefinido o personalizado. Por ejemplo, n1-standard-1.
    • IMAGE_PROJECT: el proyecto de la familia de imágenes

      Por ejemplo, si especifica debian-12 como familia de imágenes, especifique debian-cloud como proyecto de imagen. Para ver una lista de las imágenes, los proyectos de imágenes y las familias de imágenes disponibles, usa el comando gcloud compute images list.

    • IMAGE_FAMILY: la familia de imágenes de la instancia

      De esta forma, se crea la VM con la imagen de SO más reciente y no obsoleta de la familia de imágenes. Por ejemplo, si especificas debian-12, Compute Engine usará la versión más reciente de la imagen del SO en la familia de imágenes Debian 12.

    • PRODUCER_SUBNET: la subred de la interfaz de red principal de la VM

      Esta subred debe estar en la misma región que la interfaz de Private Service Connect.

    • ATTACHMENT_URI: el URI del archivo adjunto de red. Por ejemplo: projects/CONSUMER_PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME

    • STACK_TYPE: el tipo de pila de la interfaz de Private Service Connect dinámica.

      Para crear una interfaz con una dirección IPv4, especifique IPV4_ONLY (el valor predeterminado). Para crear una interfaz que utilice tanto una dirección IPv4 como una IPv6 (de doble pila), especifica IPV4_IPV6. Solo puedes crear una interfaz de pila dual si el archivo adjunto de red de la interfaz está asociado a una subred de pila dual.

  • Para crear una VM con una interfaz de Private Service Connect dinámica (vista previa), usa el comando gcloud beta compute instances create. Incluye un ID de VLAN para especificar la creación de una interfaz de Private Service Connect dinámica.

    gcloud beta compute instances create INSTANCE_NAME \
        --zone=ZONE \
        --machine-type=MACHINE_TYPE \
        --image-project=IMAGE_PROJECT \
        --image-family=IMAGE_FAMILY \
        --network-interface='subnet=PRODUCER_SUBNET,no-address' \
        --network-interface='network-attachment=ATTACHMENT_URI,vlan=VLAN_ID,stack-type=STACK_TYPE'
    

    Sustituye VLAN_ID por el ID de VLAN de la interfaz de Private Service Connect dinámica, que debe ser un número entero entre 2 y 255.

    Los IDs de VLAN deben ser únicos para cada interfaz dinámica que comparta una vNIC principal. Puedes reutilizar el mismo ID para otras interfaces dinámicas asociadas a diferentes vNICs.

  • Para asignar intervalos de IP de alias a una interfaz de Private Service Connect, envía la siguiente solicitud:

    gcloud beta compute instances create INSTANCE_NAME \
        --zone=ZONE \
        --machine-type=MACHINE_TYPE \
        --image-project=IMAGE_PROJECT \
        --image-family=IMAGE_FAMILY \
        --network-interface='subnet=PRODUCER_SUBNET,no-address' \
        --network-interface='network-attachment=ATTACHMENT_URI,vlan=VLAN_ID,stack-type=STACK_TYPE,aliases=ALIAS_IP_RANGES'
    

    Sustituye ALIAS_IP_RANGES por uno o varios intervalos de IPs alias que quieras asignar a la interfaz. Puede introducir intervalos específicos (192.168.100.0/24), direcciones IP específicas (192.168.100.1) o longitudes de prefijo en formato CIDR (/24). Puede introducir varios valores en una lista separada por punto y coma. No puedes introducir varios valores de tipos diferentes. Por ejemplo, no se admite 192.168.100.0/24;/28.

  • Para crear una VM con varias interfaces de Private Service Connect, incluye marcas --network-interface independientes para cada interfaz, donde cada marca hace referencia a un archivo de red diferente.

    En el caso de las interfaces de Private Service Connect dinámicas, la vNIC principal se determina en función del orden de las marcas en el comando. La NIC virtual principal es la primera NIC virtual que especifica antes de la interfaz dinámica.

    Puedes crear interfaces de Private Service Connect dinámicas y virtuales que coexistan en la misma VM. Por ejemplo, el siguiente comando crea una VM con interfaces de Private Service Connect virtuales y dinámicas.

    El elemento superior de las interfaces dinámicas de Private Service Connect que tienen los IDs de VLAN 2 y 3 es la primera interfaz de red virtual, que se conecta a producer-subnet. El elemento superior de la interfaz dinámica que tiene el ID de VLAN 4 es la vNIC que se conecta a producer-subnet-2. La última interfaz es una interfaz virtual de Private Service Connect.

    gcloud beta compute instances create producer-vm \
        --zone=us-west-1a \
        --network-interface='subnet=producer-subnet,no-address' \
        --network-interface='network-attachment=projects/consumer-project/regions/us-west-1/networkAttachments/consumer-1-network-attachment,vlan=2' \
        --network-interface='network-attachment=projects/consumer-project/regions/us-west-1/networkAttachments/consumer-2-network-attachment,vlan=3' \
        --network-interface='network=producer-vpc-2,subnet=producer-subnet-2' \
        --network-interface='network-attachment=projects/consumer-project/regions/us-west-1/networkAttachments/consumer-3-network-attachment,vlan=4' \
        --network-interface='network-attachment=projects/consumer-project/regions/us-west-1/networkAttachments/consumer-4-network-attachment'
    

API

  • Para crear una VM con una interfaz virtual de Private Service Connect, envía una solicitud al método instances.insert.

    Método HTTP y URL:

    POST https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/zones/INSTANCE_ZONE/instances
    

    Cuerpo JSON de la solicitud:

    {
      "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE",
      "name": "VM_NAME",
      "disks": [
        {
          "initializeParams": {
            "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
          },
          "boot": true
        }
      ],
      "networkInterfaces": [
        {
          "network": "https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/global/networks/PRODUCER_NETWORK",
          "subnetwork": "https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/regions/SUBNET_REGION/subnetworks/PRODUCER_SUBNET"
        },
        {
          "networkAttachment": "ATTACHMENT_URI",
          "stackType": "STACK_TYPE"
        }
      ]
    }
    

    Haz los cambios siguientes:

    • PRODUCER_PROJECT_ID: el ID del proyecto de la VM
    • INSTANCE_ZONE: la zona de la nueva instancia
    • MACHINE_TYPE_ZONE: la zona del tipo de máquina
    • MACHINE_TYPE: el tipo de máquina de la instancia, que puede ser predefinido o personalizado. Por ejemplo, n1-standard-1.
    • VM_NAME: el nombre de la instancia de VM
    • IMAGE_PROJECT: el proyecto de la familia de imágenes

      Por ejemplo, si especifica debian-12 como familia de imágenes, especifique debian-cloud como proyecto de imagen. Para ver una lista de las imágenes, los proyectos de imágenes y las familias de imágenes disponibles, usa el comando gcloud compute images list.

    • IMAGE_FAMILY: la familia de imágenes de la instancia

      De esta forma, se crea la VM con la imagen de SO más reciente y no obsoleta de la familia de imágenes. Por ejemplo, si especificas debian-12, Compute Engine usará la versión más reciente de la imagen del SO en la familia de imágenes Debian 12.

    • PRODUCER_NETWORK: la red de la interfaz de red principal de la VM

    • SUBNET_REGION: la región de la subred de la interfaz de red principal de la máquina virtual

    • PRODUCER_SUBNET: la subred de la interfaz de red principal de la VM

      Esta subred debe estar en la misma región que la interfaz de Private Service Connect.

    • ATTACHMENT_URI: el URI del archivo adjunto de red. Por ejemplo: projects/CONSUMER_PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME

    • STACK_TYPE: el tipo de pila de la interfaz de Private Service Connect dinámica.

      Para crear una interfaz con una dirección IPv4, especifique IPV4_ONLY (el valor predeterminado). Para crear una interfaz que utilice tanto una dirección IPv4 como una IPv6 (de doble pila), especifica IPV4_IPV6. Solo puedes crear una interfaz de pila dual si el archivo adjunto de red de la interfaz está asociado a una subred de pila dual.

  • Para crear una VM con una interfaz de Private Service Connect dinámica (vista previa), envía una solicitud a la versión beta del método instances.insert. Incluye un ID de VLAN en el objeto de interfaz de red para especificar la creación de una interfaz de Private Service Connect dinámica.

    Método HTTP y URL:

    POST https://compute.googleapis.com/compute/beta/projects/PRODUCER_PROJECT_ID/zones/INSTANCE_ZONE/instances
    

    Cuerpo JSON de la solicitud:

    {
      "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE",
      "name": "VM_NAME",
      "disks": [
        {
          "initializeParams": {
            "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
          },
          "boot": true
        }
      ],
      "networkInterfaces": [
        {
          "network": "https://compute.googleapis.com/compute/beta/projects/PRODUCER_PROJECT_ID/global/networks/PRODUCER_NETWORK",
          "subnetwork": "https://compute.googleapis.com/compute/beta/projects/PRODUCER_PROJECT_ID/regions/SUBNET_REGION/subnetworks/PRODUCER_SUBNET"
        },
        {
          "networkAttachment": "ATTACHMENT_URI",
          "vlan": VLAN_ID,
          "stackType": "IPV4_IPV6"
        }
      ]
    }
    

    Sustituye VLAN_ID por el ID de VLAN de la interfaz de Private Service Connect dinámica, que debe ser un número entero entre 2 y 255.

    Los IDs de VLAN deben ser únicos para cada interfaz dinámica que comparta una vNIC principal. Puedes reutilizar el mismo ID para otras interfaces dinámicas asociadas a diferentes vNICs.

  • Para asignar intervalos de IPs de alias a una interfaz de Private Service Connect, incluye el campo aliasesIpRanges.

    Método HTTP y URL:

    POST https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/zones/INSTANCE_ZONE/instances
    

    Cuerpo JSON de la solicitud:

    {
      "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE",
      "name": "VM_NAME",
      "disks": [
        {
          "initializeParams": {
            "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
          },
          "boot": true
        }
      ],
      "networkInterfaces": [
        {
          "network": "https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/global/networks/PRODUCER_NETWORK",
          "subnetwork": "https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/regions/SUBNET_REGION/subnetworks/PRODUCER_SUBNET"
        },
        {
          "aliasIpRanges": [
            {
              "ipCidrRange": "ALIAS_IP_RANGE"
            }
          ],
          "networkAttachment": "ATTACHMENT_URI"
        }
      ]
    }
    

    Sustituye ALIAS_IP_RANGE por los intervalos de IP de alias que quieras asignar a la interfaz. Puede introducir un intervalo específico (192.168.100.0/24), una dirección IP específica (192.168.100.1) o una longitud de prefijo en formato CIDR (/24).

    Puedes especificar varios intervalos de IPs de alias en el array aliasIpRanges. Cada intervalo debe especificarse con el mismo formato:

    "aliasIpRanges": [
      {
        "ipCidrRange": "/28"
      },
      {
        "ipCidrRange": "/30"
      }
    ]
    
  • Para crear una VM con varias interfaces de Private Service Connect, incluya objetos independientes en la matriz networkInterfaces para cada interfaz, donde cada objeto de interfaz haga referencia a un archivo adjunto de red diferente.

    En el caso de las interfaces de Private Service Connect dinámicas, la vNIC principal se determina según el orden de los objetos en la matriz. La NIC virtual principal es la primera NIC virtual que especifica antes de la interfaz dinámica.

    Puedes crear interfaces de Private Service Connect dinámicas y virtuales que coexistan en la misma VM. Por ejemplo, la siguiente solicitud crea una VM con interfaces de Private Service Connect virtuales y dinámicas.

    El elemento superior de las interfaces dinámicas de Private Service Connect que tienen los IDs de VLAN 2 y 3 es la primera interfaz de red virtual, que se conecta a producer-subnet. El elemento superior de la interfaz dinámica que tiene el ID de VLAN 4 es la vNIC que se conecta a producer-subnet-2. La última interfaz es una interfaz virtual de Private Service Connect.

    {
      "machineType": "zones/us-west-1a/machineTypes/e2-medium",
      "name": "producer-vm",
      "disks": [
        {
          "initializeParams": {
            "sourceImage": "projects/debian-cloud/global/images/family/debian-11"
        },
        "boot": true
      }
      ],
      "networkInterfaces": [
        {
          "network": "https://www.googleapis.com/compute/beta/projects/producer-project-id/global/networks/producer-vpc-1",
          "subnetwork": "https://www.googleapis.com/compute/beta/projects/producer-project-id/regions/us-west-1/subnetworks/producer-subnet"
        },
        {
          "networkAttachment": "projects/consumer-project1/regions/us-west-1/networkAttachments/consumer-1-network-attachment",
          "vlan": 2
        },
        {
          "networkAttachment": "projects/consumer-project2/regions/us-west-1/networkAttachments/consumer-2-network-attachment",
          "vlan": 3
        },
        {
          "network": "https://www.googleapis.com/compute/beta/projects/producer-project-id/global/networks/producer-vpc-2",
          "subnetwork": "https://www.googleapis.com/compute/beta/projects/producer-project-id/regions/us-west-1/subnetworks/producer-subnet-2"
        },
        {
          "networkAttachment": "projects/consumer-project3/regions/us-west-1/networkAttachments/consumer-3-network-attachment",
          "vlan": 4
        },
        {
          "networkAttachment": "projects/consumer-project4/regions/us-west-1/networkAttachments/consumer-4-network-attachment"
        }
      ]
    }
    ```
    

Para obtener más información sobre cómo crear instancias de VM, consulta Crear e iniciar una instancia de VM.

Añadir interfaces de Private Service Connect dinámicas a VMs

Puedes añadir una interfaz dinámica de Private Service Connect a una VM que ya tengas sin tener que reiniciarla.

Debes configurar el enrutamiento para que el tráfico pueda fluir a través de una nueva interfaz de Private Service Connect.

gcloud

Para añadir una interfaz dinámica de Private Service Connect a una máquina virtual, usa el comando gcloud beta compute instances network-interfaces add.

Para añadir varias interfaces Private Service Connect dinámicas, repite el comando con cada interfaz que quieras añadir.

gcloud beta compute instances network-interfaces add INSTANCE_NAME \
    --zone=ZONE \
    --vlan=VLAN_ID \
    --parent-nic-name=PARENT_NIC_NAME \
    --network-attachment=ATTACHMENT_URI
    

Haz los cambios siguientes:

  • INSTANCE_NAME: el nombre de la instancia que se va a actualizar
  • ZONE: la zona de la instancia que se va a actualizar
  • VLAN_ID: ID (entero del 2 al 4094) de la interfaz dinámica de Private Service Connect.

    Los IDs de VLAN deben ser únicos para cada interfaz dinámica que comparta una vNIC principal. Puedes reutilizar el mismo ID para otras interfaces dinámicas asociadas a diferentes vNICs.

  • PARENT_NIC_NAME: el nombre de la interfaz de red principal de la nueva NIC de VLAN. Por ejemplo, nic0.

  • ATTACHMENT_URI: el URI del archivo adjunto de red. Por ejemplo: projects/CONSUMER_PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME

API

Para añadir una interfaz dinámica de Private Service Connect a una VM, envía una solicitud a la versión beta del método instances.addNetworkInterface.

Para añadir varias interfaces de Private Service Connect dinámicas, repite la solicitud para cada interfaz que quieras añadir.

Método HTTP y URL:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/addNetworkInterface

Cuerpo JSON de la solicitud:

{
  "networkAttachment": "ATTACHMENT_URI",
  "parentNicName": "PARENT_NIC_NAME",
  "vlan": VLAN_ID
}

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto de la VM
  • ZONE: la zona de la VM
  • INSTANCE_NAME: el nombre de la VM que se va a actualizar

  • ATTACHMENT_URI: el URI del archivo adjunto de red. Por ejemplo: projects/CONSUMER_PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME

  • PARENT_NIC_NAME: el nombre de la interfaz de red principal de la nueva NIC de VLAN. Por ejemplo, nic0.

  • VLAN_ID: un ID (un número entero del 2 al 4094) de la interfaz de Private Service Connect de la NIC de VLAN.

    Los IDs de interfaz de NIC de VLAN deben ser únicos para cada NIC de VLAN de una interfaz de red principal, pero puedes reutilizar el mismo ID para otras NICs de VLAN asociadas a diferentes interfaces de red principales.

Migrar de interfaces virtuales a dinámicas de Private Service Connect

Para configurar tu servicio de forma que use interfaces de Private Service Connect dinámicas en lugar de interfaces de Private Service Connect virtuales, haz lo siguiente.

  1. Crea una VM que use interfaces de Private Service Connect dinámicas.
  2. Configura el enrutamiento de la nueva VM.
  3. Actualiza tu servicio para usar la nueva máquina virtual.
  4. Elimina la VM que usa interfaces virtuales de Private Service Connect.

Crear y gestionar interfaces Private Service Connect mediante plantillas de instancia

Puedes crear y gestionar interfaces de Private Service Connect mediante plantillas de instancia.

Después de crear una plantilla de instancia, puedes usarla para lo siguiente:

  • Crea un grupo de instancias gestionado (MIG) regional que use interfaces Private Service Connect
  • Aplicar nuevas configuraciones a un MIG, como añadir o quitar interfaces de Private Service Connect

    Cuando aplicas una nueva configuración a un MIG, puedes especificar los niveles de interrupción mínimos y máximos para los métodos de actualización automática o selectiva. Las MIGs que usan interfaces de Private Service Connect solo admiten valores máximos de interrupción de RESTART y REPLACE. Las operaciones para actualizar grupos de instancias gestionados con un nivel de interrupción máximo de REFRESH fallan.

Para crear plantillas de instancia con interfaces de Private Service Connect dinámicas (vista previa), usa la CLI de Google Cloud o envía una solicitud a la API.

Para crear plantillas de instancias que usen intervalos de IP de alias o varias interfaces de Private Service Connect, usa la misma sintaxis que para crear VMs con interfaces de Private Service Connect. Las plantillas de instancia solo admiten la especificación de intervalos de IP de alias por longitud de prefijo.

Consola

  1. En la Google Cloud consola, ve a la página Plantillas de instancia:

    Ir a Plantillas de instancia

  2. Haz clic en Crear plantilla de instancia.

  3. Introduce un nombre para la plantilla de instancia.

  4. Haz clic en Advanced options (Opciones avanzadas).

  5. Haz clic en Redes.

  6. En la sección Interfaces de red, haz clic en la flecha de expansión .

  7. Selecciona una red y una subred para la interfaz de red principal de la plantilla de instancia.

  8. Haz clic en Listo.

  9. Haz clic en Añadir una interfaz de red.

  10. Haz clic en Private Service Connect.

  11. Introduce la URL del archivo adjunto de red al que se conecta esta interfaz.

  12. Seleccione un tipo de pila de IP.

  13. Haz clic en Listo.

  14. Haz clic en Crear.

gcloud

  • Para crear una plantilla de instancia con una interfaz virtual de Private Service Connect, usa el comando gcloud compute instance-templates create.

    gcloud compute instance-templates create NAME \
        --machine-type=MACHINE_TYPE \
        --image-project=IMAGE_PROJECT \
        --image-family=IMAGE_FAMILY \
        --region=REGION \
        --network-interface='subnet=PRODUCER_SUBNET,no-address' \
        --network-interface='network-attachment=ATTACHMENT_URI,stack-type=STACK_TYPE'
    

    Haz los cambios siguientes:

    • NAME: el nombre de la nueva plantilla de instancia
    • MACHINE_TYPE: el tipo de máquina de la instancia, que puede ser predefinido o personalizado. Por ejemplo, n1-standard-1.
    • IMAGE_PROJECT: el proyecto de la familia de imágenes

      Por ejemplo, si especifica debian-12 como familia de imágenes, especifique debian-cloud como proyecto de imagen. Para ver una lista de las imágenes, los proyectos de imágenes y las familias de imágenes disponibles, usa el comando gcloud compute images list.

    • IMAGE_FAMILY: la familia de imágenes de la instancia

      De esta forma, se crea la VM con la imagen de SO más reciente y no obsoleta de la familia de imágenes. Por ejemplo, si especificas debian-12, Compute Engine usará la versión más reciente de la imagen del SO en la familia de imágenes Debian 12.

    • REGION: la región de la subred del productor de la plantilla de instancia.

    • PRODUCER_SUBNET: la subred de la plantilla de la instancia.

      Cuando creas una VM con esta plantilla de instancia, a la interfaz de red principal de la VM se le asigna una dirección IP interna de esta subred. Esta subred debe estar en la misma región que la interfaz de Private Service Connect.

    • ATTACHMENT_URI: el URI del archivo adjunto de red. Por ejemplo: projects/CONSUMER_PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME

    • STACK_TYPE: el tipo de pila de la interfaz Private Service Connect dinámica de la plantilla de instancia.

      Para añadir una interfaz con una dirección IPv4, especifica IPV4_ONLY (el valor predeterminado). Para añadir una interfaz que use tanto una dirección IPv4 como una IPv6 (doble pila), especifica IPV4_IPV6. Solo puedes crear una interfaz de pila dual si el archivo adjunto de red de la interfaz está asociado a una subred de pila dual.

  • Para crear una plantilla de instancia con una interfaz de Private Service Connect dinámica, usa el comando gcloud beta compute instance-templates create.

    gcloud beta compute instance-templates create NAME \
        --machine-type=MACHINE_TYPE \
        --image-project=IMAGE_PROJECT \
        --image-family=IMAGE_FAMILY \
        --region=REGION \
        --network-interface='subnet=PRODUCER_SUBNET,no-address' \
        --network-interface='network-attachment=ATTACHMENT_URI,vlan=VLAN_ID,stack-type=STACK_TYPE'
    

    Sustituye VLAN_ID por el ID de VLAN de la interfaz de Private Service Connect dinámica, que debe ser un número entero entre 2 y 255.

    Los IDs de VLAN deben ser únicos para cada interfaz dinámica que comparta una vNIC principal. Puedes reutilizar el mismo ID para otras interfaces dinámicas asociadas a diferentes vNICs.

API

  • Para crear una plantilla de instancia con una interfaz virtual de Private Service Connect, haz una solicitud al método instanceTemplates.insert.

    Método HTTP y URL:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates
    

    Cuerpo JSON de la solicitud:

    {
      "name": "NAME",
      "properties": {
        "disks": [
          {
            "boot": true,
            "initializeParams": {
              "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
            }
          }
        ],
        "machineType": "MACHINE_TYPE",
        "networkInterfaces": [
          {
            "subnetwork": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/SUBNET_REGION/subnetworks/PRODUCER_SUBNET"
          },
          {
            "networkAttachment": "ATTACHMENT_URI",
            "stackType": "STACK_TYPE"
          }
        ]
      }
    }
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID de proyecto de la plantilla de instancia
    • NAME: el nombre de la nueva plantilla de instancia
    • IMAGE_PROJECT: el proyecto de la familia de imágenes

      Por ejemplo, si especifica debian-12 como familia de imágenes, especifique debian-cloud como proyecto de imagen. Para ver una lista de las imágenes, los proyectos de imágenes y las familias de imágenes disponibles, usa el comando gcloud compute images list.

    • IMAGE_FAMILY: la familia de imágenes de la instancia

      De esta forma, se crea la VM con la imagen de SO más reciente y no obsoleta de la familia de imágenes. Por ejemplo, si especificas debian-12, Compute Engine usará la versión más reciente de la imagen del SO en la familia de imágenes Debian 12.

    • MACHINE_TYPE: el tipo de máquina de la instancia, que puede ser predefinido o personalizado. Por ejemplo, n1-standard-1.

    • SUBNET_REGION: la región de la subred del productor de la plantilla de instancia.

    • PRODUCER_SUBNET: la subred de la plantilla de la instancia.

      Cuando creas una VM con esta plantilla de instancia, a la interfaz de red principal de la VM se le asigna una dirección IP interna de esta subred. Esta subred debe estar en la misma región que la interfaz de Private Service Connect.

    • ATTACHMENT_URI: el URI del archivo adjunto de red. Por ejemplo: projects/CONSUMER_PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME

    • STACK_TYPE: el tipo de pila de la interfaz Private Service Connect dinámica de la plantilla de instancia.

      Para añadir una interfaz con una dirección IPv4, especifica IPV4_ONLY (el valor predeterminado). Para añadir una interfaz que use tanto una dirección IPv4 como una IPv6 (doble pila), especifica IPV4_IPV6. Solo puedes crear una interfaz de pila dual si el archivo adjunto de red de la interfaz está asociado a una subred de pila dual.

  • Para crear una plantilla de instancia con una interfaz de Private Service Connect dinámica, envía una solicitud a la versión beta del método instanceTemplates.insert.

    Método HTTP y URL:

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/global/instanceTemplates
    

    Cuerpo JSON de la solicitud:

    {
      "name": "NAME",
      "properties": {
        "disks": [
          {
            "boot": true,
            "initializeParams": {
              "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
            }
          }
        ],
        "machineType": "MACHINE_TYPE",
        "networkInterfaces": [
          {
            "subnetwork": "https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/SUBNET_REGION/subnetworks/PRODUCER_SUBNET"
          },
          {
            "networkAttachment": "ATTACHMENT_URI",
            "vlan": VLAN_ID,
            "stackType": "STACK_TYPE"
          }
        ]
      }
    }
    

    Sustituye VLAN_ID por el ID de VLAN de la interfaz de Private Service Connect dinámica, que debe ser un número entero entre 2 y 255.

    Los IDs de VLAN deben ser únicos para cada interfaz dinámica que comparta una vNIC principal. Puedes reutilizar el mismo ID para otras interfaces dinámicas asociadas a diferentes vNICs.

Para obtener más información sobre cómo crear plantillas de instancia, consulta el artículo Crear plantillas de instancia.

Describe una interfaz de Private Service Connect

Puedes describir una VM para ver los detalles de sus interfaces de Private Service Connect. El nombre, la dirección IP, los intervalos de IP de alias, la vinculación de red y la subred de consumidor de cada interfaz se indican en la sección de interfaces de red de la descripción de la VM.

Para describir una interfaz de Private Service Connect dinámica, usa la CLI de gcloud o envía una solicitud de API.

Consola

  1. En la consola de Google Cloud , ve a la página Instancias de VM.

    Ir a instancias de VM

  2. Haz clic en la VM que tenga tu interfaz de Private Service Connect.

  3. En la sección Interfaces de red, consulta los detalles de tu interfaz de Private Service Connect.

gcloud

gcloud beta compute instances describe VM_NAME
    --zone=ZONE

Haz los cambios siguientes:

  • VM_NAME: el nombre de la máquina virtual de tu interfaz.
  • ZONE: la zona de tu VM.

API

GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME

Haz los cambios siguientes:

  • PROJECT_ID: el ID de proyecto de la VM.
  • ZONE: la zona de la VM.
  • VM_NAME: el nombre de la VM.

Finalizar conexiones de interfaz de Private Service Connect

Para finalizar una conexión entre una interfaz de Private Service Connect virtual y un adjunto de red, elimina la VM de la interfaz.

Para finalizar una conexión entre una interfaz de Private Service Connect dinámica y un archivo adjunto de red, haz una de las siguientes acciones:

  • Quita la interfaz dinámica de Private Service Connect.
  • Elimina la VM de la interfaz de Private Service Connect dinámica.

Quitar una interfaz dinámica de Private Service Connect

Puedes quitar una interfaz de Private Service Connect dinámica sin reiniciar la VM asociada.

gcloud

Usa el comando gcloud beta compute instances network-interfaces delete.

gcloud beta compute instances network-interfaces delete INSTANCE_NAME \
    --zone=ZONE \
    --network-interface=INTERFACE_NAME

Haz los cambios siguientes:

  • INSTANCE_NAME: el nombre de la instancia de VM de la interfaz
  • ZONE: la zona de la instancia de VM de la interfaz
  • INTERFACE_NAME: nombre de la interfaz de Private Service Connect dinámica que se va a eliminar. Google Cloud

    Por ejemplo, nic0.10 es el nombre de una interfaz de Private Service Connect dinámica, donde nic0 es el elemento superior y 10 es el ID de VLAN.

API

Envía una solicitud a la versión beta del método instances.deleteNetworkInterface.

Método HTTP y URL:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/deleteNetworkInterface?networkInterfaceName=INTERFACE_NAME

Haz los cambios siguientes:

  • PROJECT_ID: el ID de proyecto de la VM de la interfaz
  • ZONE: la zona de la máquina virtual de la interfaz
  • INSTANCE_NAME: el nombre de la VM de la interfaz
  • INTERFACE_NAME: nombre de la interfaz de Private Service Connect dinámica que se va a eliminar. Google Cloud

    Por ejemplo, nic0.10 es el nombre de una interfaz de Private Service Connect dinámica, donde nic0 es el nombre de la vNIC principal y 10 es el ID de VLAN.

Eliminar una VM con una interfaz de Private Service Connect

Si eliminas una VM, se terminarán todas las conexiones de la interfaz de Private Service Connect.

Para obtener información sobre cómo eliminar una VM, consulta Eliminar una instancia.

Siguientes pasos