Asignación automática de zonas de Dataproc

Cuando creas un clúster de Dataproc, los recursos del clúster usan endpoints regionales basados en zonas de Compute Engine. Cuando elijas una región, puedes seleccionar una zona de esa región u omitir la zona para que la función de zona automática de Dataproc elija una zona por ti en la región que elijas. Una vez que se haya seleccionado una zona, todos los nodos de ese clúster se desplegarán en esa zona.

Puedes excluir zonas de los criterios de selección automática de zonas siempre que la región del clúster incluya al menos dos zonas no excluidas. Para obtener más información, consulta Usar la colocación de zonas automáticas.

Reservas de recursos y de asignación automática de zonas

Auto Zone prioriza la creación de un clúster en una zona con reservas de recursos de la siguiente manera:

  • Si los recursos del clúster solicitados se pueden satisfacer por completo con los recursos reservados y, si es necesario, con los recursos bajo demanda de una zona, Auto Zone consumirá los recursos reservados y bajo demanda, y creará el clúster en esa zona.

  • La función de zona automática prioriza las zonas para la selección según las reservas totales de núcleos de CPU (vCPU) de una zona.

    Ejemplo: Una solicitud de creación de clúster especifica 20 n2-standard-2 y 1 n2-standard-64 (se solicitan 40 + 64 vCPUs). La función de zona automática priorizará las siguientes zonas para la selección en función del total de reservas de vCPU disponibles en la zona:

    1. Reservas disponibles de zone-c: 3 n2-standard-2 y 1 n2-standard-64 (70 vCPUs)
    2. zone-b reservas disponibles: 1 n2-standard-64 (64 vCPUs)
    3. zone-a reservas disponibles: 25 n2-standard-2 (50 vCPUs)

      Si se presupone que cada una de estas zonas tiene vCPU adicional bajo demanda y otros recursos suficientes para satisfacer la solicitud del clúster, Auto Zone seleccionará zone-c para crear el clúster.

  • Si los recursos de clúster solicitados no se pueden satisfacer por completo con los recursos reservados y los recursos bajo demanda de una zona, Auto Zone creará el clúster en la zona que tenga más probabilidades de satisfacer la solicitud con recursos bajo demanda.

Usar la asignación automática de zonas

Consola

Para crear un clúster de Dataproc que use la colocación automática de zonas, sigue estos pasos:

  1. En la Google Cloud consola, abre la página de Dataproc Crear un clúster de Dataproc en Compute Engine. El panel Configurar clúster está seleccionado.
  2. En la sección Ubicación, haga lo siguiente:
    • Selecciona una región para el clúster.
    • En Zona, selecciona "Cualquiera".

Excluir zonas: no se pueden especificar zonas para excluir de la colocación de zonas automáticas a través de la Google Cloud consola. Esta función está disponible mediante la CLI de Google Cloud y la API REST.

CLI de gcloud

Para crear un clúster de Dataproc que use la colocación automática de zonas, usa el comando gcloud dataproc clusters create. Asigne la marca --region a una región. A continuación, omita la marca --zone o asígnela a una cadena vacía (--zone="").--zone

Como alternativa a la marca `--zone`, puedes usar la marca --auto-zone-exclude-zones para especificar una lista de zonas separada por comas. La selección automática de zonas elegirá una zona de la región especificada, pero excluirá las zonas de la lista de sus criterios de selección. Ten en cuenta que debe haber al menos dos zonas no excluidas disponibles en la región del clúster.

Ejemplos:

Uso básico de la asignación automática de zonas:

gcloud dataproc clusters create CLUSTER_NAME \
    --region=REGION \
    other args ...

Zona automática con zonas excluidas:

gcloud dataproc clusters create CLUSTER_NAME \
    --region=REGION \
    --auto-zone-exclude-zones=ZONE_1,ZONE_2 \
    other args ...

API REST

Para crear un clúster de Dataproc que use la colocación automática de zonas, crea una solicitud de API clusters.create en formato JSON y deja vacío el campo gceClusterConfig.zoneUri. En el endpoint REST https://dataproc.googleapis.com/v1/projects/projectId/regions/region/clusters, inserta el nombre de una región. La función de zona automática de Dataproc elegirá una zona para el clúster dentro de la región especificada.

Para excluir zonas específicas, puedes rellenar el campo gceClusterConfig.autoZoneExcludeZoneUris con una lista de nombres de zonas que quieras excluir. Ten en cuenta que debe haber al menos dos zonas no excluidas disponibles en la región del clúster.

Usar nombres de recursos cortos con la colocación automática de zonas: al especificar un URI de recurso, como machineTypeUri o acceleratorTypeUri, en una solicitud de creación de clústeres de la API REST de colocación automática de zonas, usa un nombre de recurso corto sin especificar la zona. Por ejemplo, "n1-standard-2" o "nvidia-tesla-t4".