Cómo crear dominios multicast

En esta página, se describen los pasos que debes seguir para crear dominios de transmisión multidifusión.

Para obtener una descripción general del proceso de configuración de Cloud Multicast, consulta Descripción general de la configuración de Cloud Multicast.

Antes de comenzar

Antes de crear dominios de transmisión multidifusión, consulta las siguientes secciones.

Crea o identifica una red de VPC

Si aún no lo hiciste, crea una red de nube privada virtual (VPC) para usarla como red de administrador de multidifusión. Para obtener más información sobre cómo crear redes de VPC, consulta Crea y administra redes de VPC.

Si tu red de administrador de multicast también alojará productores o consumidores de multicast, como cuando se usa la topología de una sola red de VPC, asegúrate de que la red tenga las reglas de firewall adecuadas para permitir el tráfico de multicast. Consulta lo siguiente:

Configura tu proyecto

Configura gcloud CLI para usar tu proyecto. Como alternativa, puedes incluir la marca --project=MULTICAST_ADMIN_PROJECT para cada comando en los siguientes procedimientos.

    gcloud config set project MULTICAST_ADMIN_PROJECT

Reemplaza MULTICAST_ADMIN_PROJECT por el ID de tu proyecto.

Habilita las APIs

Si aún no lo hiciste, habilita las siguientes APIs.

Para habilitar APIs, necesitas el permiso serviceusage.services.enable. Si no tienes este permiso, pídele a tu administrador de Identity and Access Management (IAM) que te otorgue el rol de administrador de Service Usage (roles/serviceusage.serviceUsageAdmin).

  1. Para crear recursos de transmisión simultánea, habilita la API de networkservices:

        gcloud services enable networkservices.googleapis.com
    
  2. Para crear un radio de VPC de Network Connectivity Center (NCC), habilita la API de networkconnectivity:

        gcloud services enable networkconnectivity.googleapis.com
    

Roles obligatorios

Para obtener los permisos que necesitas para crear dominios de transmisión simultánea, pídele a tu administrador que te otorgue los siguientes roles de IAM:

  • Para crear y administrar recursos de red: Administrador de red de Compute (compute.networkAdmin) en tu proyecto
  • Para crear y administrar reglas de firewall: Administrador de seguridad de Compute (compute.securityAdmin) en tu proyecto
  • Para crear y administrar concentradores y radios de NCC: Administrador de Hub y Spoke (networkconnectivity.hubAdmin) en tu proyecto
  • Para crear recursos de transmisión por multicast, debes tener el rol de administrador de multicast (networkservices.multicastAdmin) en tu proyecto.

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

Configura NCC

Si creas un dominio de transmisión de multidifusión que usa la topología de estrella de NCC, sigue los pasos de esta sección para configurar el concentrador.

Si creas un dominio de multidifusión que usa la topología de una sola red de VPC, puedes omitir esta sección y continuar con Crea un dominio de multidifusión.

En esta sección, se describe cómo configurar el concentrador de NCC con la topología de estrella predeterminada para habilitar lo siguiente:

  • Puedes agregar tu red de VPC de administrador al concentrador como un radio central.
  • Si hay una red de VPC de productor de multidifusión independiente, esta puede unirse al concentrador como un radio central.
  • Las redes de VPC de consumidor de multidifusión pueden unirse al concentrador como radios perimetrales.

Para obtener más información, consulta Topología de estrella y Configura un concentrador en la documentación de NCC.

gcloud

Para configurar NCC, haz lo siguiente:

  1. Para crear un concentrador, usa el comando network-connectivity hubs create.

      gcloud network-connectivity hubs create HUB_NAME \
        --policy-mode=PRESET \
        --preset-topology=STAR
    

    Reemplaza HUB_NAME por un nombre para el concentrador.

  2. Para agregar tu red de VPC como un radio central al concentrador, usa el comando network-connectivity spokes linked-vpc-network create.

      gcloud network-connectivity spokes linked-vpc-network create SPOKE_NAME \
        --hub=projects/MULTICAST_ADMIN_PROJECT/locations/global/hubs/HUB_NAME \
        --vpc-network=MULTICAST_ADMIN_NETWORK \
        --group="center" \
        --global
    

    Reemplaza lo siguiente:

    • SPOKE_NAME: Es el nombre del radio.
    • MULTICAST_ADMIN_PROJECT: Es el ID del proyecto de administrador de multicast.
    • HUB_NAME: Es el nombre del concentrador de NCC que creaste anteriormente.
    • MULTICAST_ADMIN_NETWORK: Es el nombre de la red de administrador de multidifusión que creaste antes.

      Como alternativa, puedes proporcionar el URI de la red del administrador de multidifusión con el siguiente formato: projects/MULTICAST_ADMIN_PROJECT/global/networks/MULTICAST_ADMIN_NETWORK.

  3. Para permitir que las redes de VPC de consumidor de multidifusión se unan al concentrador, haz lo siguiente. Como alternativa, puedes seguir configurando la transmisión por multidifusión y completar estos pasos más adelante, como se describe en Controla el acceso a los dominios de multidifusión.

    1. Otorga a los administradores de redes de consumidores de multidifusión en otros proyectos la capacidad de proponer radios de VPC al concentrador. Para ello, sigue los pasos que se indican en Otorga acceso en la documentación de NCC.

    2. Pídeles a los administradores de redes de consumidores de multicast que agreguen sus redes de VPC como radios al concentrador que creaste cuando sigan el procedimiento para habilitar una red de VPC para que consuma tráfico de multicast.

    3. Revisa los radios de VPC propuestos según sea necesario para verificar si hay propuestas de radios.

    4. Cuando recibas una propuesta de radio, sigue los pasos para aceptar el radio de VPC.

Cómo crear un dominio de transmisión por multidifusión

En esta sección, se describe cómo crear un dominio de transmisión multidifusión.

Crear grupo de dominios

En esta sección, se describe cómo crear un grupo de dominios de transmisión simultánea. Antes de continuar, revisa lo siguiente:

  • Si planeas crear dominios redundantes, te recomendamos que crees un grupo de dominios para lograr una mayor disponibilidad entre los dominios.

  • Un grupo de dominios agrupa explícitamente dos dominios relacionados. No crees un grupo de dominios para un solo dominio ni para más de dos dominios.

  • Crear un grupo de dominios es una configuración opcional. Si no necesitas un grupo de dominio, puedes omitir este paso. Sin embargo, no puedes agregar dominios existentes a un grupo de dominios más adelante.

gcloud

Para crear un grupo de dominios, usa el comando network-services multicast-domain-groups create.

gcloud network-services multicast-domain-groups create DOMAIN_GROUP_NAME \
   --location=global

Reemplaza DOMAIN_GROUP_NAME por un nombre para el grupo de dominios.

API

Para crear un grupo de dominios, usa el método multicastDomainGroups.create.

POST https://networkservices.googleapis.com/v1/projects/MULTICAST_ADMIN_PROJECT/locations/global/multicastDomainGroups?multicastDomainGroupId=DOMAIN_GROUP_NAME

Reemplaza lo siguiente:

  • DOMAIN_GROUP_NAME: Es un nombre para el grupo de dominio.
  • MULTICAST_ADMIN_PROJECT: Es el ID del proyecto de administrador de multicast.

Crea un dominio

Crea uno o más dominios de transmisión de multidifusión asociados con la red de VPC del administrador de multidifusión.

gcloud

Para crear un dominio, usa el comando network-services multicast-domains create.

Si quieres usar un grupo de dominios, debes especificarlo cuando crees el dominio. No podrás agregar el dominio a un grupo de dominios más adelante. Para crear dominios que formen parte de un grupo de dominios, debes ejecutar el siguiente comando dos veces, por ejemplo, para crear DOMAIN_1 y DOMAIN_2.

   gcloud network-services multicast-domains create DOMAIN_NAME \
      --location=global \
      --admin-network=projects/MULTICAST_ADMIN_PROJECT/locations/global/networks/MULTICAST_ADMIN_NETWORK \
      --connection-type=TOPOLOGY \
      [--ncc-hub=projects/MULTICAST_ADMIN_PROJECT/locations/global/hubs/HUB_NAME] \
      [--multicast-domain-group=projects/MULTICAST_ADMIN_PROJECT/locations/global/multicastDomainGroups/DOMAIN_GROUP_NAME]

Reemplaza los siguientes valores:

  • DOMAIN_NAME: Un nombre para el dominio
  • MULTICAST_ADMIN_PROJECT: Es el ID del proyecto de administrador de multicast.
  • MULTICAST_ADMIN_NETWORK: Es la red de VPC del administrador de multidifusión. Si usas la topología de NCC, esta red también debe formar parte del concentrador como radio central; de lo contrario, fallará la creación del dominio.
  • TOPOLOGY: Es la topología que deseas configurar para Cloud Multicast. Especifica una de las siguientes opciones:
    • SAME_VPC: Es la topología de una sola red de VPC.
    • NCC: Es la topología en estrella de NCC.
  • HUB_NAME: Si configuras la topología de estrella de Network Connectivity Center, especifica el nombre del concentrador.
  • DOMAIN_GROUP_NAME: Si creaste un grupo de dominios, ingresa el nombre del grupo de dominios.

API

Para crear un dominio, usa el método multicastDomains.create.

Si quieres usar un grupo de dominios, debes especificarlo cuando crees el dominio. No podrás agregar el dominio a un grupo de dominios más adelante. Para crear dominios que formen parte de un grupo de dominios, debes realizar la siguiente solicitud a la API dos veces. Por ejemplo, realiza la siguiente solicitud una vez para crear DOMAIN_1 y, luego, vuelve a realizarla para crear DOMAIN_2:

POST https://networkservices.googleapis.com/v1/projects/MULTICAST_ADMIN_PROJECT/locations/global/multicastDomains?multicastDomainId=DOMAIN_NAME

{
  "adminNetwork": "projects/MULTICAST_ADMIN_PROJECT/locations/global/networks/MULTICAST_ADMIN_NETWORK",
  "connection": {
      "connectionType": "TOPOLOGY",
      "nccHub": "projects/MULTICAST_ADMIN_PROJECT/locations/global/hubs/HUB_NAME"
  },
  "multicastDomainGroup": "projects/MULTICAST_ADMIN_PROJECT/locations/global/multicastDomainGroups/DOMAIN_GROUP_NAME"
}

Reemplaza los siguientes valores:

  • DOMAIN_NAME: Un nombre para el dominio
  • MULTICAST_ADMIN_PROJECT: Es el ID del proyecto de administrador de multicast.
  • MULTICAST_ADMIN_NETWORK: Es la red de VPC del administrador de multidifusión. Si usas la topología de NCC, esta red también debe formar parte del concentrador como radio central; de lo contrario, fallará la creación del dominio.
  • TOPOLOGY: Es la topología que deseas configurar para Cloud Multicast. Especifica una de las siguientes opciones:
    • SAME_VPC: Es la topología de una sola red de VPC.
    • NCC: Es la topología en estrella de NCC.
  • HUB_NAME: Si configuras la topología de estrella de Network Connectivity Center, especifica el nombre del concentrador con el campo nccHub.
  • DOMAIN_GROUP_NAME: Si creaste un grupo de dominios, ingresa su nombre en el campo multicastDomainGroup.

Activa el dominio

Activa el dominio en cada zona en la que los productores o consumidores de multidifusión necesiten enviar o recibir tráfico de multidifusión. Cuando activas un dominio en una zona,Google Cloud aprovisiona la infraestructura de transmisión por multidifusión para tu dominio en esa zona.

Si no activas un dominio en una zona determinada, no se podrá enviar ni recibir tráfico de multidifusión en esa zona.

gcloud

Para activar un dominio, usa el comando network-services multicast-domain-activations create.

El siguiente comando tarda entre 10 y 30 minutos en completarse.

   gcloud network-services multicast-domain-activations create DOMAIN_ACTIVATION_NAME \
      --multicast-domain="projects/MULTICAST_ADMIN_PROJECT/locations/global/multicastDomains/DOMAIN_NAME" \
      --location=ZONE \
      [--disable-placement-policy] \
      [--aggr-egress-pps=AGGR_EGRESS_PPS] \
      [--aggr-ingress-pps=AGGR_INGRESS_PPS] \
      [--avg-packet-size=AVG_PACKET_SIZE] \
      [--max-per-group-ingress-pps=MAX_PER_GROUP_INGRESS_PPS] \
      [--max-per-group-subscribers=MAX_PER_GROUP_SUBSCRIBERS]

Reemplaza los siguientes valores:

  • DOMAIN_ACTIVATION_NAME: Un nombre para la activación del dominio
  • MULTICAST_ADMIN_PROJECT: Es el ID del proyecto de administrador de multicast.
  • DOMAIN_NAME: Es el nombre del dominio que se activará.
  • ZONE: Es la zona en la que se activará el dominio.
  • --disable-placement-policy: Si activas un dominio que forma parte de un grupo de dominios, puedes incluir esta marca de forma opcional para inhabilitar la creación de una política de posición. De lo contrario, Google Cloudcrea automáticamente una política de posición que se puede aplicar de forma opcional a consumidores de transmisión simultánea nuevos o existentes.
  • Especifica los siguientes parámetros según tus necesidades para el tráfico de multidifusión en esta zona. Google Cloud usa estos parámetros para determinar la escala de tu infraestructura de multidifusión.

    Antes de especificar estos parámetros, consulta lo siguiente:

    • Revisa las limitaciones del tráfico de multidifusión correspondientes que se describen en la descripción general de Cloud Multicast.
    • Si no incluyes estas marcas, Google Cloudgenerará una configuración mínima que puedes usar para las pruebas.
    • Puedes actualizar la configuración de estas marcas más adelante, como se describe en Actualiza los parámetros del dominio de multidifusión.
    • Si bien estas marcas son opcionales, si incluyes alguna de ellas, --aggr-egress-pps se convierte en una marca obligatoria.

    Para obtener más información sobre cada marca, consulta lo siguiente:

    • AGGR_EGRESS_PPS: Paquetes de salida agregados por segundo (pps) para todos los grupos de multidifusión del dominio en la zona especificada. La salida hace referencia a los paquetes distribuidos desde la infraestructura de multicast a los consumidores de multicast.

      Puedes ingresar un valor entre 0 y 500,000,000 (500 millones). El valor predeterminado es 1,000,000 (1 millón). Los valores predeterminados para los otros campos se establecen de forma dinámica según el valor que ingreses para esta marca.

    • AGGR_INGRESS_PPS: Es el PPS de ingreso agregado para todos los grupos de multidifusión del dominio en la zona especificada. La entrada hace referencia a los paquetes que se envían desde los productores de multidifusión a la infraestructura de multidifusión.

      Puedes ingresar un valor de 0 a 2,000,000 (2 millones). El valor que ingreses para --aggr-ingress-pps no puede ser mayor que el valor de --aggr-egress-pps.

    • AVG_PACKET_SIZE: Es el tamaño promedio de los paquetes en bytes. Puedes ingresar un valor entre 64 y 1,500.

    • MAX_PER_GROUP_INGRESS_PPS: Es la cantidad máxima de PPS de entrada para un solo grupo de multidifusión en el dominio de la zona especificada. Usa esta marca para especificar el grupo de transmisión por multidifusión más activo del dominio, lo que ayuda a Google Cloud determinar con mayor precisión la escala requerida de tu infraestructura de transmisión por multidifusión.

      Puedes ingresar un valor de 0 a 2,000,000 (2 millones). El valor que ingreses para --max-per-group-ingress-pps no puede ser mayor que el valor de --aggr-ingress-pps.

    • MAX_PER_GROUP_SUBSCRIBERS: Es la cantidad máxima de consumidores de multidifusión para un solo grupo de multidifusión en el dominio de la zona especificada. Usa esta marca para especificar el grupo con la mayor cantidad de consumidores de transmisión por multidifusión, lo que ayuda a Google Cloud determinar con mayor precisión la escala requerida de tu infraestructura de transmisión por multidifusión. Si se incluye esta marca, no se aplica un límite en la cantidad de consumidores de multicast para un grupo.

      Puedes ingresar un valor entre 1 y 500.

API

Para activar un dominio, usa el método multicastDomainActivations.create.

La siguiente solicitud tarda entre 10 y 30 minutos en completarse.

POST https://networkservices.googleapis.com/v1/projects/MULTICAST_ADMIN_PROJECT/locations/ZONE/multicastDomainActivations?multicastDomainActivationId=DOMAIN_ACTIVATION_NAME

{
  "multicastDomain": "projects/MULTICAST_ADMIN_PROJECT/locations/global/multicastDomains/DOMAIN_NAME",
  "disablePlacementPolicy": "PLACEMENT_POLICY_DISABLED",
  "trafficSpec": {
    "aggrEgressPps": "AGGR_EGRESS_PPS",
    "aggrIngressPps": "AGGR_INGRESS_PPS",
    "avgPacketSize": "AVG_PACKET_SIZE",
    "maxPerGroupIngressPps": "MAX_PER_GROUP_INGRESS_PPS",
    "maxPerGroupSubscribers": "MAX_PER_GROUP_SUBSCRIBERS"
  }
}

Reemplaza los siguientes valores:

  • DOMAIN_ACTIVATION_NAME: Un nombre para la activación del dominio
  • MULTICAST_ADMIN_PROJECT: Es el ID del proyecto de administrador de multicast.
  • DOMAIN_NAME: Es el nombre del dominio que se activará.
  • ZONE: Es la zona en la que se activará el dominio.
  • PLACEMENT_POLICY_DISABLED: Si activas un dominio que forma parte de un grupo de dominios, puedes incluir este campo de forma opcional y establecerlo en true para inhabilitar la creación de una política de posición. De lo contrario, Google Cloud crea automáticamente una política de posición que se puede aplicar de forma opcional a los consumidores de transmisión simultánea nuevos o existentes.
  • Especifica valores para el objeto trafficSpec según tus necesidades de tráfico de multidifusión en esta zona. Google Cloud usa estos parámetros para determinar la escala de tu infraestructura de multidifusión.

    Antes de especificar estos parámetros, consulta lo siguiente:

    • Revisa las limitaciones del tráfico de multidifusión correspondientes que se describen en la descripción general de Cloud Multicast.
    • Si no incluyes el objeto trafficSpec en el cuerpo de la solicitud, Google Cloudgenera una configuración mínima que puedes usar para las pruebas.
    • Puedes actualizar la configuración de trafficSpec más adelante, como se describe en Actualiza los parámetros del dominio de multidifusión.
    • Si bien los campos en trafficSpec son opcionales, si incluyes alguno, aggrEgressPps se convierte en un campo obligatorio. Si incluyes el objeto trafficSpec con algunos campos, debes incluir aggrEgressPps.

    Para obtener más información sobre cada campo, consulta lo siguiente:

    • AGGR_EGRESS_PPS: Paquetes de salida agregados por segundo (pps) para todos los grupos de multidifusión del dominio en la zona especificada. La salida hace referencia a los paquetes distribuidos desde la infraestructura de multicast a los consumidores de multicast.

      Puedes ingresar un valor entre 0 y 500,000,000 (500 millones). El valor predeterminado es 1,000,000 (1 millón). Los valores predeterminados para los otros campos se establecen de forma dinámica según el valor que ingreses en este campo.

    • AGGR_INGRESS_PPS: Es el PPS de ingreso agregado para todos los grupos de multidifusión del dominio en la zona especificada. La entrada hace referencia a los paquetes que se envían desde los productores de multidifusión a la infraestructura de multidifusión.

      Puedes ingresar un valor de 0 a 2,000,000 (2 millones). El valor que ingreses para aggrIngressPps no puede ser mayor que el valor de aggrEgressPps.

    • AVG_PACKET_SIZE: Es el tamaño promedio de los paquetes en bytes. Puedes ingresar un valor entre 64 y 1,500.

    • MAX_PER_GROUP_INGRESS_PPS: Es la cantidad máxima de PPS de entrada para un solo grupo de multidifusión en el dominio de la zona especificada. Usa esta marca para especificar el grupo de transmisión por multidifusión más activo del dominio, lo que ayuda a Google Cloud determinar con mayor precisión la escala requerida de tu infraestructura de transmisión por multidifusión.

      Puedes ingresar un valor de 0 a 2,000,000 (2 millones). El valor que ingreses para maxPerGroupIngressPps no puede ser mayor que el valor de aggrIngressPps.

    • MAX_PER_GROUP_SUBSCRIBERS: Es la cantidad máxima de consumidores de multidifusión para un solo grupo de multidifusión en el dominio de la zona especificada. Usa esta marca para especificar el grupo con la mayor cantidad de consumidores de transmisión por multidifusión, lo que ayuda a Google Cloud determinar con mayor precisión la escala requerida de tu infraestructura de transmisión por multidifusión. Proporcionar esta especificación no impone un límite en la cantidad de consumidores de multicast para un grupo.

      Puedes ingresar un valor entre 1 y 500.

¿Qué sigue?