Usa la duplicación de paquetes

Usa la duplicación de paquetes para duplicar el tráfico hacia instancias de VM específicas y desde ellas. Puedes usar el tráfico recopilado para detectar amenazas de seguridad y supervisar el rendimiento de las aplicaciones. Para obtener detalles acerca de la duplicación de paquetes, consulta la Descripción general de la duplicación de paquetes.

En las siguientes secciones, se describe cómo crear y administrar las políticas de duplicación de paquetes.

Antes de comenzar

Antes de crear una política de duplicación de paquetes, debes tener los permisos correspondientes. También debes crear un balanceador de cargas interno, que es el destino de colector, en la misma región que las instancias que deseas duplicar.

Permisos

Para crear y administrar políticas de duplicación de paquetes, Google Cloud proporciona dos funciones relacionadas con la duplicación de paquetes:

  • compute.packetMirroringUser otorga permiso a los usuarios para crear, actualizar y borrar políticas de duplicación de paquetes. Para usar la duplicación de paquetes, los usuarios deben tener esta función en los proyectos en los que crean políticas de duplicación de paquetes.

  • compute.packetMirroringAdmin otorga permiso a los usuarios para duplicar recursos específicos. Incluso si los usuarios tienen permiso para crear una política de duplicación de paquetes, aún necesitan permiso a fin de duplicar las fuentes relacionadas. Usa esta función en proyectos en los que el propietario de una política quizás no tenga otros permisos, por ejemplo, en situaciones de VPC compartida.

Para obtener más información sobre cómo usar las funciones de IAM, consulta Otorga, cambia y revoca el acceso a los recursos en la documentación de IAM.

Balanceador de cargas interno

Debes tener un balanceador de cargas de TCP/UDP interno configurado para la duplicación de paquetes, y debe estar ubicado en la misma región que las instancias que duplicas. Todo el tráfico de los orígenes de duplicación se envía a las instancias de colector que están detrás del balanceador de cargas.

A fin de configurar el balanceador de cargas interno para la duplicación de paquetes, la regla de reenvío debe configurarse como un colector de duplicación de paquetes. El tráfico no duplicado que se envía al balanceador de cargas se descarta. Además, si una política de duplicación de paquetes puede aplicarse a las instancias de colector, la duplicación de paquetes las ignora y no duplica su tráfico.

Recomendamos que uses una plantilla de instancias y un grupo de instancias administrado para las instancias de colector. Un grupo de instancias administrado proporciona capacidades de ajuste de escala automático y reparación automática para satisfacer tus demandas de tráfico y requisitos de disponibilidad. Si usas un grupo de instancias administrado, no uses los discos de arranque como datos persistentes. Crea una copia de seguridad de tus datos en otra ubicación central para conservarlos.

Para obtener detalles sobre los grupos de instancias y los balanceadores de cargas internos, consulta la siguiente documentación: Crea una plantilla de instancias, Crea un grupo de instancias administrado y Configura componentes del balanceador de cargas.

Reglas de firewall

Se debe permitir que el tráfico duplicado pase de instancias de origen a instancias de destino que forman parte del balanceador de cargas interno. Es posible que ya haya reglas existentes que permitan este tráfico.

  • Comprueba que las instancias duplicadas tengan una regla de salida que les permita enviar tráfico a la regla de reenvío del balanceador de cargas interno.
  • Comprueba que las instancias de colector del grupo de instancias del balanceador de cargas tengan una regla de entrada que les permita recibir tráfico de instancias duplicadas o del rango de direcciones IP de las instancias duplicadas. Por ejemplo, puedes especificar un rango de origen 0.0.0.0/0 para recopilar todo el tráfico entrante de las instancias duplicadas. Para evitar que el tráfico de Internet llegue a las instancias de colector, asígnale solo direcciones IP internas.

Si no tienes reglas existentes que permitan este tráfico, consulta Usa reglas de firewall para crearlas.

Crea una política de duplicación de paquetes

Crea una política de duplicación de paquetes para comenzar a duplicar el tráfico hacia instancias específicas y desde ellas.

Console

  1. Ve a la página Duplicación de paquetes en Google Cloud Console.
    Ir a la página Duplicación de paquetes
  2. Haz clic en Crear política.
  3. Ingresa la siguiente información sobre la política y haz clic en Continuar.

    1. Ingresa un nombre para la política.
    2. Selecciona la región que incluye los orígenes de duplicación y el destino del colector. La política de duplicación de paquetes debe estar en la misma región que la fuente y el destino.
    3. Ignora el campo Prioridad. No se puede ajustar en este momento.
    4. Selecciona Habilitada para activar la política cuando la crees.
  4. Selecciona las redes de VPC en las que se encuentran el origen de duplicación y el destino de colector, y haz clic en Continuar.

    El origen y el destino pueden, o no, estar en la misma red de VPC. Si están en la misma red de VPC, selecciona El origen de duplicación y el destino están en la misma red de VPC y, luego, selecciona la red. Si están en redes diferentes, selecciona El origen de duplicación y el destino de colector están en redes de VPC de intercambio de tráfico independientes y, a continuación, selecciona la red de origen de duplicación y, luego, la red de destino del colector.

  5. Selecciona los orígenes de duplicación y, luego, haz clic en Continuar. Puedes seleccionar uno o más orígenes. Google Cloud duplica cualquier instancia que coincida con al menos uno de las fuentes seleccionadas.

    • Subredes: Selecciona una o más subredes. Google Cloud duplica instancias existentes y futuras en las subredes seleccionadas.
    • Etiqueta de red: especifica una o más etiquetas de red. Google Cloud duplica las instancias que tienen al menos una de las etiquetas especificadas.
    • Nombre de la instancia: selecciona las instancias específicas que deseas duplicar.
  6. Selecciona un balanceador de cargas interno configurado para la duplicación de paquetes y haz clic en Continuar. Google Cloud envía tráfico duplicado a las instancias que están detrás del balanceador de cargas interno.

    Para la VPC compartida, si el destino del colector y los orígenes de duplicación están en la misma red de VPC compartida, debes seleccionar el proyecto donde se encuentra el destino del colector y, luego, seleccionar un balanceador de cargas.

  7. Si deseas limitar el tráfico que se duplica, selecciona Duplicar tráfico filtrado. De forma predeterminada, Google Cloud duplica todo el tráfico.

    Puedes optar por duplicar el tráfico según rangos de direcciones IP, protocolos, o ambos.

  8. Haz clic en Enviar para crear la política de duplicación de paquetes.

gcloud

Crea una política de duplicación de paquetes y especifica uno o más orígenes que deseas duplicar. Google Cloud duplica cualquier instancia que coincida con al menos uno de los orígenes especificados.

gcloud compute packet-mirrorings create policy-name \
  --region=region \
  --network=network-name \
  --collector-ilb=forwarding-rule-name \
  [--mirrored-subnets=subnet,[subnet,...]] \
  [--mirrored-tags=tag,[tag,...]] \
  [--mirrored-instances=instance,[instance,...]] \
  [--filter-cidr-ranges=address-range,[address-range,...]] \
  [--filter-protocols=protocol,[protocol,...]]

Reemplaza los marcadores de posición por valores válidos:

  • policy-name es un nombre para la política de duplicación de paquetes.
  • region es la región en la que se encuentran las fuentes duplicadas y el destino del colector.
  • network-name es la red en la que se encuentran las fuentes duplicadas.
  • forwarding-rule-name es el nombre de una regla de reenvío configurada como colector de duplicación. Google Cloud envía todo el tráfico duplicado al balanceador de cargas interno asociado.
  • subnet es el nombre de una subred que deseas duplicar. Google Cloud duplica instancias existentes y futuras en la subred.
  • tag es una etiqueta de red. Google Cloud duplica las instancias que tienen la etiqueta de red.
  • instance es el ID completamente calificado de una instancia que deseas duplicar.
  • address-range es un rango de direcciones IP (rango CIDR) para duplicar.
  • protocol es un protocolo de dirección IP para duplicar (TCP, UDP o ICMP).

Para obtener más información y las descripciones de cada marca, consulta la documentación de referencia del SDK.

API

Crea una política de duplicación de paquetes y especifica uno o más orígenes que deseas duplicar. Google Cloud duplica cualquier instancia que coincida con al menos uno de los orígenes especificados.

POST https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/packetMirrorings
{
  "name": "policy-name",
  "network": {
    "url": "network-url"
  },
  "priority": priority,
  "mirroredResources": {
    "subnetworks": [
      {
        "url": "subnet-url"
      }
    ],
    "tags": [
      "tag"
    ],
    "instances": [
      {
        "url": "instance"
      }
    ]
  },
  "collectorIlb": {
    "url": "forwarding-rule-url"
  },
  "filter": {
    "IPProtocols": [
      "protocol"
    ],
    "cidrRanges": [
      "address-range"
    ]
  }
}

Reemplaza los marcadores de posición por valores válidos:

  • project-id es el ID del proyecto en el que se crea la política.
  • policy-name es un nombre para la política de duplicación de paquetes.
  • region es la región en la que se encuentran las fuentes duplicadas y el destino del colector.
  • network-url es la URL de la red en la que se encuentran las fuentes duplicadas.
  • forwarding-rule-url es la URL de una regla de reenvío configurada como colector de duplicación. Google Cloud envía todo el tráfico duplicado al balanceador de cargas interno asociado.
  • subnet-url es la URL de una subred que deseas duplicar. Google Cloud duplica instancias existentes y futuras en la subred.
  • tag es una etiqueta de red. Google Cloud duplica las instancias que tienen la etiqueta de red.
  • instance es el ID completamente calificado de una instancia que deseas duplicar.
  • address-range es un rango de direcciones IP (rango CIDR) para duplicar.
  • protocol es un protocolo de dirección IP para duplicar (TCP, UDP o ICMP).

Para obtener más información y las descripciones de cada campo, consulta el método packetmirrorings.insert.

Para verificar que la política de duplicación de paquetes esté activa, consulta Supervisa las políticas de duplicación de paquetes.

Modifica una política de duplicación de paquetes

Actualiza una política existente para cambiar sus orígenes de duplicación o el destino del colector.

Console

  1. Ve a la página Duplicación de paquetes en Google Cloud Console.
    Ir a la página Duplicación de paquetes
  2. En la lista de políticas de duplicación de paquetes, haz clic en la que deseas editar.
  3. En la página de detalles de la política, haz clic en Editar.
  4. Edita los campos que deseas actualizar. La consola sigue el mismo flujo que cuando creas una política. Para obtener información sobre cada campo, consulta Crea una política de duplicación de paquetes.

gcloud

Actualiza una política de duplicación de paquetes existente.

gcloud compute packet-mirrorings update policy-name \
  --region=region \
  [--collector-ilb=forwarding-rule-name] \
  [--mirrored-subnets=subnet,[subnet,...]] \
  [--mirrored-tags=tag,[tag,...]] \
  [--mirrored-instances=instance,[instance,...]] \
  [--filter-cidr-ranges=address-range,[address-range,...]] \
  [--filter-protocols=protocol,[protocol,...]]

Reemplaza los marcadores de posición por valores válidos:

  • policy-name es el nombre de la política de duplicación de paquetes que deseas modificar.
  • region es la región en la que se encuentra la política.
  • forwarding-rule-name es el nombre de una regla de reenvío configurada como colector. Google Cloud envía todo el tráfico duplicado al balanceador de cargas interno asociado.
  • subnet es el nombre de una subred que deseas duplicar. Google Cloud duplica instancias existentes y futuras en la subred.
  • tag es una etiqueta de red. Google Cloud duplica las instancias que tienen la etiqueta de red.
  • instance es el ID completamente calificado de una instancia que deseas duplicar.
  • address-range es un rango de direcciones IP (rango CIDR) para duplicar.
  • protocol es un protocolo de dirección IP para duplicar (TCP, UDP o ICMP).

Para obtener más información y las descripciones de cada marca, consulta la documentación de referencia del SDK.

API

Actualiza una política de duplicación de paquetes existente.

PATCH https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/packetMirrorings/policy-name
{
  "priority": priority,
  "mirroredResources": {
    "subnetworks": [
      {
        "url": "subnet-url"
      }
    ],
    "tags": [
      "tag"
    ],
    "instances": [
      {
        "url": "instance"
      }
    ]
  },
  "collectorIlb": {
    "url": "forwarding-rule-url"
  },
  "filter": {
    "IPProtocols": [
      "protocol"
    ],
    "cidrRanges": [
      "address-range"
    ]
  }
}

Reemplaza los marcadores de posición por valores válidos:

  • project-id es el ID del proyecto en el que se encuentra la política.
  • policy-name es el nombre de la política de duplicación de paquetes que deseas modificar.
  • region es la región en la que se encuentra la política.
  • forwarding-rule-url es la URL de una regla de reenvío configurada como colector de duplicación. Google Cloud envía todo el tráfico duplicado al balanceador de cargas interno asociado.
  • subnet-url es la URL de una subred que deseas duplicar. Google Cloud duplica instancias existentes y futuras en la subred.
  • tag es una etiqueta de red. Google Cloud duplica las instancias que tienen la etiqueta de red.
  • instance es el ID completamente calificado de una instancia que deseas duplicar.
  • address-range es un rango de direcciones IP (rango CIDR) para duplicar.
  • protocol es un protocolo de dirección IP para duplicar (TCP, UDP o ICMP).

Para obtener más información y las descripciones de cada campo, consulta el método packetmirrorings.patch.

Enumera las políticas de duplicación de paquetes

Enumera las políticas de duplicación de paquetes para ver las políticas existentes.

Console

  1. Ve a la página Duplicación de paquetes en Google Cloud Console.
    Ir a la página Duplicación de paquetes

    En Cloud Console, se enumeran todas las políticas en el proyecto.

gcloud

Enumera las políticas de duplicación de paquetes existentes que se encuentran en el proyecto o en una región en particular.

gcloud compute packet-mirrorings list \
  [--filter="region:(region...)"]

Reemplaza region por el nombre de la región que contiene las políticas que deseas incluir en la lista.

Para obtener más información y las descripciones de cada marca, consulta la documentación de referencia del SDK.

API

Enumera las políticas de duplicación de paquetes existentes que están en el proyecto.

GET https://compute.googleapis.com/compute/v1/projects/project-id/aggregated/packetMirrorings

Enumera las políticas existentes de duplicación de paquetes de una región en particular.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/packetMirrorings

Reemplaza los marcadores de posición por valores válidos:

  • project-id es el ID del proyecto que contiene las políticas que deseas enumerar.
  • region es la región que contiene las políticas que deseas enumerar.

Para obtener más información y las descripciones de cada campo, consulta los métodos packetmirrorings.aggregatedList o packetmirrorings.list.

Describe una política de duplicación de paquetes

Consulta los detalles de una política de duplicación de paquetes existente para ver, por ejemplo, sus filtros.

Console

  1. Ve a la página Duplicación de paquetes en Google Cloud Console.
    Ir a la página Duplicación de paquetes
  2. En la lista de políticas de duplicación de paquetes, selecciona la que deseas ver.

    En Cloud Console, se muestran los detalles de la política que seleccionaste.

gcloud

Describe una política de duplicación de paquetes existente para ver sus detalles.

gcloud compute packet-mirrorings describe policy-name \
  --region=region \

Reemplaza los marcadores de posición por valores válidos:

  • policy-name es el nombre de la política de duplicación de paquetes que deseas describir.
  • region es la región en la que se encuentra la política.

Para obtener más información y las descripciones de cada marca, consulta la documentación de referencia del SDK.

API

Describe una política de duplicación de paquetes existente para ver sus detalles.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/packetMirrorings/policy-name

Reemplaza los marcadores de posición por valores válidos:

  • project-id es el ID del proyecto en el que se encuentra la política.
  • policy-name es el nombre de la política de duplicación de paquetes que deseas describir.
  • region es la región en la que se encuentra la política.

Para obtener más información y las descripciones de cada campo, consulta el método packetmirrorings.get.

Habilita o inhabilita una política de duplicación de paquetes

Habilita o inhabilita una política de duplicación de paquetes para detener o comenzar a recopilar el tráfico duplicado.

Console

  1. Ve a la página Duplicación de paquetes en Google Cloud Console.
    Ir a la página Duplicación de paquetes
  2. En la lista de políticas de duplicación de paquetes, selecciona la opción que quieres habilitar o inhabilitar.
  3. Haz clic en Habilitar o Inhabilitar.
  4. Para confirmar, haz clic en Habilitar o Inhabilitar.

gcloud

Inhabilita una política de duplicación de paquetes existente.

gcloud compute packet-mirrorings update policy-name \
  --region=region \
  --no-enable

Habilita una política de duplicación de paquetes existente.

gcloud compute packet-mirrorings update policy-name \
  --region=region \
  --enable

Reemplaza los marcadores de posición por valores válidos:

  • policy-name es el nombre de la política de duplicación de paquetes que deseas habilitar o inhabilitar.
  • region es la región en la que se encuentra la política.

Para obtener más información y las descripciones de cada marca, consulta la documentación de referencia del SDK.

API

Habilita o inhabilitar una política de duplicación de paquetes existente.

PATCH https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/packetMirrorings/policy-name
{
  "enable": "FALSE|TRUE"
}

Reemplaza los marcadores de posición por valores válidos:

  • project-id es el ID del proyecto en el que se encuentra la política.
  • policy-name es el nombre de la política de duplicación de paquetes que deseas inhabilitar.
  • region es la región en la que se encuentra la política.

Para obtener más información y las descripciones de cada campo, consulta el método packetmirrorings.patch.

Borra una política de duplicación de paquetes

Borra una política de duplicación de paquetes para quitarla del proyecto. Después de borrar una política, Google Cloud deja de duplicar todo el tráfico relacionado con la política.

Console

  1. Ve a la página Duplicación de paquetes en Google Cloud Console.
    Ir a la página Duplicación de paquetes
  2. En la lista de políticas de duplicación de paquetes, selecciona la que deseas inhabilitar.
  3. Haz clic en Borrar.
  4. Haz clic en Borrar para confirmar la acción.

gcloud

Borra una política de duplicación de paquetes existente.

gcloud compute packet-mirrorings delete policy-name \
  --region=region \

Reemplaza los marcadores de posición por valores válidos:

  • policy-name es el nombre de la política de duplicación de paquetes que deseas borrar.
  • region es la región en la que se encuentra la política.

Para obtener más información y las descripciones de cada marca, consulta la documentación de referencia del SDK.

API

Borra una política de duplicación de paquetes existente.

DELETE https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/packetMirrorings/policy-name

Reemplaza los marcadores de posición por valores válidos:

  • project-id es el ID del proyecto en el que se encuentra la política.
  • policy-name es el nombre de la política de duplicación de paquetes que deseas borrar.
  • region es la región en la que se encuentra la política.

Para obtener más información y las descripciones de cada campo, consulta el método packetmirrorings.delete.

Soluciona problemas

Si la política de duplicación de paquetes no recopila el tráfico duplicado deseado, verifica las siguientes configuraciones:

  • Comprueba que tengas reglas de firewall que permitan el tráfico de las instancias duplicadas a las instancias de colector.

  • Comprueba que los orígenes de duplicación incluyan o excluyan las instancias que se duplicarán. Por ejemplo, si especificas una subred como un origen de duplicación, todas las instancias existentes y futuras de la subred se duplican. Si especificas etiquetas, solo se duplican las instancias que tienen etiquetas coincidentes.

  • Comprueba que los filtros de duplicación de paquetes no sean demasiado amplios ni demasiado reducidos. Es posible que hayas configurado filtros de manera involuntaria para incluir o excluir cierto tráfico.