Uso de la comunicación simplificada de nodo de proceso

Un grupo de Azure Batch contiene uno o varios nodos de ejecución que ejecutan cargas de trabajo especificadas por el usuario en forma de tareas de Batch. Para habilitar la funcionalidad de Batch y la administración de la infraestructura de grupos de Batch, los nodos de ejecución se deben comunicar con el servicio Azure Batch.

Batch admite dos tipos de modos de comunicación:

  • Clásico: el servicio Batch inicia la comunicación con los nodos de ejecución.
  • Simplificado: los nodos de ejecución inician la comunicación con el servicio Batch.

Este artículo describe el modo de comunicación simplificado y los requisitos de configuración de red asociados.

Sugerencia

La información de este documento relativa a los recursos y las reglas de red, como los grupos de seguridad de red, no se aplica a los grupos de Batch sin direcciones IP públicas que usan el punto de conexión privado de administración de nodos sin acceso saliente a Internet.

Advertencia

El modelo de comunicación de nodos de proceso clásico se retirará el 31 de marzo de 2026 y se reemplazará por el modelo simplificado de comunicación, tal como se describe en este documento. Para más información, consulte la guía de migración del modo de comunicación.

Regiones admitidas

La comunicación simplificada de nodos de proceso en Azure Batch está disponible actualmente para las siguientes regiones:

  • Público: todas las regiones públicas en las que Batch está presente, excepto la India Occidental.
  • Gobierno: USGov Arizona, USGov Virginia, USGov Texas.
  • China: todas las regiones de China en las que Batch está presente, excepto Norte de China 1 y Este de China 1.

Diferencias entre los modos clásicos y simplificados

El modo de comunicación simplificado de nodos de ejecución simplifica la forma en que se administra la infraestructura de grupos de Batch en nombre de los usuarios. El nuevo método de comunicación reduce la complejidad y el ámbito de las conexiones de red entrantes y salientes necesarias en las operaciones de línea de base.

En los grupos de Batch con el modo de comunicación clásico se requieren las siguientes reglas de red en grupos de seguridad de red (NSG), rutas definidas por el usuario (UDR) y firewalls al crear un grupo en una red virtual:

  • Entrada:

    • Puertos de destino 29876, 29877 mediante de TCP a BatchNodeManagement.<region>
  • Salida:

    • Puerto de destino 443 mediante TCP a Storage.<region>
    • Puerto de destino 443mediante TCP a BatchNodeManagement.<region>. para determinadas cargas de trabajo que necesitan comunicarse con el servicio Batch, como tareas del Administrador de trabajos

Los grupos de Batch con el modo de comunicación simplificado solo necesita acceso saliente al punto de conexión de administración de nodos de la cuenta de Batch (consulte Puntos de conexión públicos de la cuenta de Batch). Requieren las siguientes reglas de red en grupos de seguridad de red, rutas de red definidas por el usuario y firewalls:

  • Entrada:

    • Ninguno
  • Salida:

    • Puerto de destino 443 mediante CUALQUIERA a BatchNodeManagement.<region>

Los requisitos de salida de una cuenta de Batch se pueden detectar mediante la API List Outbound Network Dependencies Endpoints (Enumerar puntos de conexión de dependencias de red de salida). Esta API notifica el conjunto base de dependencias, en función del modelo de comunicación del grupo de cuentas de Batch. Las cargas de trabajo específicas del usuario pueden necesitar reglas adicionales, como abrir el tráfico a otros recursos de Azure (como Azure Storage para paquetes de aplicación, Azure Container Registry) o puntos de conexión, como el repositorio de paquetes de Microsoft para la funcionalidad de montaje del sistema de archivos virtual.

Ventajas del modo simplificado

Los usuarios de Azure Batch que usan el modo simplificado se benefician de la simplificación de las reglas y las conexiones de red. La comunicación simplificada de nodos de ejecución ayuda a reducir los riesgos de seguridad al eliminar el requisito de abrir puertos para la comunicación entrante desde Internet. Solo se necesita una regla de salida a una etiqueta de servicio conocida para la operación de línea de base.

El modo simplificado también proporciona un mayor control sobre la filtración de datos que el modo de comunicación clásico dado que la comunicación saliente a Storage.<region> ya no es necesaria. Puede bloquear explícitamente la comunicación saliente a Azure Storage si es necesario para su flujo de trabajo. Por ejemplo, puede definir el ámbito de las reglas de comunicación salientes para Azure Storage con el fin de habilitar las cuentas de almacenamiento de AppPackage u otras cuentas de almacenamiento para archivos de recursos o archivos de salida.

Incluso si las cargas de trabajo no se ven afectadas actualmente por los cambios (como se describe en la sección siguiente), se recomienda pasar al modo simplificado. Las mejoras futuras en el servicio Batch solo pueden ser funcionales con la comunicación simplificada de nodos de ejecución.

Posible impacto entre los modos de comunicación clásico y simplificado

En muchos casos, el modo de comunicación simplificado no afecta directamente a las cargas de trabajo de Batch. Pero la comunicación simplificada de nodos de ejecución tiene un impacto en los casos siguientes:

  • Usuarios que especifican una red virtual como parte de la creación de un grupo de Batch y realizan una o ambas de las siguientes acciones:
    • Deshabilitan explícitamente las reglas de tráfico de red salientes incompatibles con la comunicación simplificada de nodos de ejecución.
    • Usan UDR y reglas de firewall que no son compatibles con la comunicación simplificada de nodos de ejecución.
  • Usuarios que habilitan firewalls de software en nodos de ejecución y deshabilitan explícitamente el tráfico saliente en reglas de firewall de software que no son compatibles con la comunicación simplificada de nodos de ejecución.

Si se le aplica alguno de estos casos, siga los pasos descritos en la sección siguiente para asegurarse de que las cargas de trabajo de Batch pueden seguir funcionando en el modo simplificado. Se recomienda encarecidamente probar y comprobar todos los cambios en un entorno de desarrollo y pruebas antes de insertar los cambios en producción.

Cambios de configuración de red necesarios para el modo simplificado

Para migrar al nuevo modo de comunicación, los pasos a seguir son:

  1. Asegúrese de que la configuración de red aplicable a los grupos de Batch (NSG, UDR, firewalls, etc.) incluya una unión de los modelos (es decir, las reglas de red combinadas de los modos clásico y simplificado). Como mínimo, estas reglas serían:
    • Entrada:
      • Puertos de destino 29876, 29877 mediante de TCP a BatchNodeManagement.<region>
    • Salida:
      • Puerto de destino 443 mediante TCP a Storage.<region>
      • Puerto de destino 443 mediante CUALQUIERA a BatchNodeManagement.<region>
  2. Si tiene otros escenarios de entrada o salida que son necesarios para su flujo de trabajo, debe asegurarse de que las reglas reflejen estos requisitos.
  3. Use una de las opciones siguientes para actualizar las cargas de trabajo para usar el nuevo modo de comunicación.
    • Cree nuevos grupos con targetNodeCommunicationMode establecido en simplificado y valide que funcionan correctamente. Migre la carga de trabajo a los nuevos grupos y elimine los grupos anteriores.
    • Actualice la propiedad targetNodeCommunicationMode de los grupos existentes a simplificado y, luego, cambie el tamaño de todos los grupos existentes a cero nodos y vuelva a escalarlos horizontalmente.
  4. Use la API Get Pool, la API List Pool o el Azure Portal para confirmar que currentNodeCommunicationMode está establecido en el modo de comunicación deseado de simplificado.
  5. Modifique todas las configuraciones de red aplicables a las reglas de comunicación simplificadas, como mínimo (tenga en cuenta las reglas adicionales necesarias, como se explicó anteriormente):
    • Entrada:
      • None
    • Salida:
      • Puerto de destino 443 mediante CUALQUIERA a BatchNodeManagement.<region>

Si sigue estos pasos, pero más adelante quiere dejar de usar la comunicación de nodos de ejecución clásico, debe hacer lo siguiente:

  1. Revierta cualquier configuración de red que funcione exclusivamente en modo de comunicación de nodo de proceso simplificado.
  2. Cree nuevos grupos o actualice la propiedad targetNodeCommunicationMode establecida en clásico de los grupos existentes.
  3. Migre la carga de trabajo a estos grupos, o bien cambie el tamaño de los grupos existentes y vuelva a escalarlos horizontalmente (vea el paso 3 anterior).
  4. Consulte el paso 4 anterior para confirmar que los grupos funcionan en el modo de comunicación clásico.
  5. Opcionalmente, restaure la configuración de red.

Especificación del modo de comunicación en un grupo de Batch

La propiedad de los grupos de Batch targetNodeCommunicationMode permite indicar una preferencia al servicio Batch para el que se usará el modo de comunicación entre el servicio Batch y los nodos de proceso. A continuación se muestran las opciones permitidas en esta propiedad:

  • Clásico: crea el grupo mediante la comunicación clásica de nodos de proceso.
  • Simplificado: crea el grupo mediante la comunicación simplificada de nodo de ejecución.
  • Predeterminado: permite que el servicio Batch seleccione el modo de comunicación de nodo de ejecución adecuado. En el caso de los grupos sin una red virtual, el grupo se puede crear en modo clásico o simplificado. En el caso de los grupos con una red virtual, el grupo siempre tiene como valor predeterminado el clásico hasta el 30 de septiembre de 2024. Para más información, consulte la guía de migración del modo de comunicación del nodo de ejecución clásico.

Sugerencia

Especificar el modo de comunicación de los nodos de destino indica una preferencia para el servicio Batch, pero no garantiza que se respete. Algunas configuraciones del grupo pueden impedir que el servicio Batch respete el modo de comunicación especificado de los nodos de destino, como la interacción con direcciones IP no públicas, redes virtuales y el tipo de configuración del grupo.

A continuación, se muestran ejemplos de cómo crear un grupo de Batch con el modo simplificado de comunicación de nodos de ejecución.

Portal de Azure

En primer lugar, inicie sesión en Azure Portal. Entonces, vaya a la hoja Grupos de la cuenta de Batch y seleccione el botón Agregar. En CONFIGURACIÓN OPCIONAL, puede seleccionar Simplificado como una opción en la extracción del modo de comunicación de nodo, como se muestra:

Screenshot that shows creating a pool with simplified mode.

Para actualizar un grupo existente al modo de comunicación simplificado, vaya a la hoja Grupos de la cuenta de Batch y seleccione el grupo que se actualizará. En el panel de navegación izquierdo, seleccione Modo de comunicación de nodo. Allí puede seleccionar un nuevo modo de comunicación de los nodos de destino, como se muestra a continuación. Después de seleccionar el modo de comunicación adecuado, seleccione el botón Guardar para actualizarlo. Tiene que reducir el grupo a cero nodos primero, y luego retroceder para que el cambio surta efecto, si las condiciones lo permiten.

Screenshot that shows updating a pool to simplified mode.

Para mostrar el modo de comunicación actual de los nodos para un grupo, vaya a la hoja Grupos de la cuenta de Batch y seleccione el grupo que quiere ver. Seleccione Propiedades en el panel de navegación izquierdo y el modo de comunicación de los nodos del grupo aparece en la sección General.

Screenshot that shows properties with a pool with simplified mode.

REST API

En este ejemplo se muestra cómo usar la API REST de servicios de Batch para crear un grupo con la comunicación de nodos de ejecución simplificada.

POST {batchURL}/pools?api-version=2022-10-01.16.0
client-request-id: 00000000-0000-0000-0000-000000000000

Cuerpo de la solicitud

"pool": {
     "id": "pool-simplified",
     "vmSize": "standard_d2s_v3",
     "virtualMachineConfiguration": {
          "imageReference": {
               "publisher": "Canonical",
               "offer": "0001-com-ubuntu-server-jammy",
               "sku": "22_04-lts"
          },
          "nodeAgentSKUId": "batch.node.ubuntu 22.04"
     },
     "resizeTimeout": "PT15M",
     "targetDedicatedNodes": 2,
     "targetLowPriorityNodes": 0,
     "taskSlotsPerNode": 1,
     "taskSchedulingPolicy": {
          "nodeFillType": "spread"
     },
     "enableAutoScale": false,
     "enableInterNodeCommunication": false,
     "targetNodeCommunicationMode": "simplified"
}

Limitaciones

A continuación se muestran las limitaciones conocidas del modo de comunicación simplificado:

  • Compatibilidad limitada con la migración para grupos creados anteriormente sin direcciones IP públicas. Estos grupos solo se pueden migrar si se crean en una red virtual; de lo contrario, no usarán la comunicación simplificada de nodos de ejecución, incluso si se especifica en el grupo. Para más información, consulte la guía de migración.
  • Los grupos de configuración del servicio en la nube no admiten actualmente la comunicación simplificada de nodos de ejecución y están en desuso. La especificación de un modo de comunicación para estos tipos de grupos no se respeta y siempre da como resultado el modo de comunicación clásico. Se recomienda usar Configuración de la máquina virtual para los grupos de Batch. Para más información, consulte Migración de la configuración del grupo de Batch de Cloud Services a máquina virtual.

Pasos siguientes