Configuración de clústeres

En este artículo se explican las opciones de configuración disponibles al crear y editar Azure Databricks clústeres. Se centra en la creación y edición de clústeres mediante la interfaz de usuario. Para otros métodos, consulte CLI de clústeres y API de clústeres 2.0.

Para obtener ayuda para decidir qué combinación de opciones de configuración se adapta mejor a sus necesidades, consulte procedimientos recomendados de configuración de clúster.

Crear clúster

Recuperación de una propiedad de configuración de Spark de un secreto

Databricks recomienda almacenar información confidencial, como contraseñas, en un secreto en lugar de texto no cifrado. Para hacer referencia a un secreto en la configuración de Spark, use la sintaxis siguiente:

spark.<secret-prop-name> <path-value>

Por ejemplo, para establecer una propiedad de configuración de Spark llamada password al valor del secreto almacenado en secrets/apps/acme-app/password :

spark.password {{secrets/apps/acme-app/password}}

Para más información, consulte Rutas de acceso secretas en una variablede entorno o propiedad de configuración de Spark.

Directiva de clúster

Una directiva de clúster limita la capacidad de configurar clústeres en función de un conjunto de reglas. Las reglas de directiva limitan los atributos o valores de atributo disponibles para la creación del clúster. Las directivas de clúster tienen ACL que limitan su uso a usuarios y grupos específicos y, por tanto, limitan las directivas que puede seleccionar al crear un clúster.

Para configurar una directiva de clúster, seleccione la directiva de clúster en la lista desplegable Directiva.

Selección de la directiva de clúster

Nota

Si no se ha creado ninguna directiva en el área detrabajo , la lista desplegable Directiva no se muestra.

Si tiene:

  • Permiso de creación declústeres: puede seleccionar la directiva Sin restricciones y crear clústeres totalmente configurables. La directiva Unrestricted no limita los atributos de clúster ni los valores de atributo.
  • Tanto el permiso de creación del clúster como el acceso a las directivas de clúster, puede seleccionar la directiva Sin restricciones y las directivas a las que tiene acceso.
  • Acceso solo a las directivas de clúster, puede seleccionar las directivas a las que tiene acceso.

Modo de clúster

Azure Databricks admite tres modos de clúster: Estándar, Alta simultaneidad y Nodo único. El modo de clúster predeterminado es Estándar.

Nota

La configuración del clúster incluye una configuración de terminación automática cuyo valor predeterminado depende del modo de clúster:

  • Los clústeres estándar y de nodo único finalizan automáticamente después de 120 minutos de forma predeterminada.
  • Los clústeres de alta simultaneidad no finalizan automáticamente de forma predeterminada.

Importante

No puede cambiar el modo de clúster después de crear un clúster. Si desea un modo de clúster diferente, debe crear un nuevo clúster.

Clústeres estándar

Se recomienda un clúster estándar para un solo usuario. Los clústeres estándar pueden ejecutar cargas de trabajo desarrolladas en cualquier lenguaje: Python, SQL, R y Scala.

Clústeres de alta simultaneidad

Un clúster de alta simultaneidad es un recurso en la nube administrado. Las principales ventajas de los clústeres de alta simultaneidad son que proporcionan un uso compartido específico para el uso máximo de recursos y latencias mínimas de consulta.

Los clústeres de alta simultaneidad pueden ejecutar cargas de trabajo desarrolladas SQL, Python y R. El rendimiento y la seguridad de los clústeres de alta simultaneidad se proporcionan mediante la ejecución de código de usuario en procesos independientes, lo que no es posible en Scala.

Además, solo los clústeres de alta simultaneidad admiten el control de acceso de tabla.

Para crear un clúster de alta simultaneidad, establezca Modo de clúster en Alta simultaneidad.

Modo de clúster de alta simultaneidad

Para obtener un ejemplo de cómo crear un clúster de alta simultaneidad mediante clusters API, vea Ejemplo de clúster de alta simultaneidad.

Clústeres de nodo único

Un clúster de nodo único no tiene trabajos y ejecuta trabajos de Spark en el nodo del controlador.

Por el contrario, un clúster estándar requiere al menos un nodo de trabajo de Spark además del nodo de controlador para ejecutar trabajos de Spark.

Para crear un clúster de nodo único, establezca Modo de clúster en Nodo único.

Modo de clúster de nodo único

Para más información sobre cómo trabajar con clústeres de nodo único, consulte Clústeres de nodo único.

Piscinas

Para reducir la hora de inicio del clúster, puede asociar un clúster a un grupo predefinido de instancias inactivas para los nodos de controlador y de trabajo. El clúster se crea mediante instancias de los grupos. Si un grupo no tiene suficientes recursos inactivos para crear los nodos de controlador o de trabajo solicitados, el grupo se expande asignando nuevas instancias del proveedor de instancias. Cuando finaliza un clúster asociado, las instancias que usó se devuelven a los grupos y pueden reutilizarse por otro clúster.

Si selecciona un grupo para los nodos de trabajo, pero no para el nodo de controlador, el nodo de controlador hereda el grupo de la configuración del nodo de trabajo.

Importante

Si intenta seleccionar un grupo para el nodo de controlador, pero no para los nodos de trabajo, se produce un error y no se crea el clúster. Este requisito evita una situación en la que el nodo de controlador tiene que esperar a que se cree un nodo de trabajo, o viceversa.

Consulte Grupos para obtener más información sobre cómo trabajar con grupos en Azure Databricks.

Databricks Runtime

Los entornos de ejecución de Databricks son el conjunto de componentes principales que se ejecutan en los clústeres. Todos los entornos de ejecución de Databricks Apache Spark y agregan componentes y actualizaciones que mejoran la facilidad de uso, el rendimiento y la seguridad. Para más información, consulte Entornos de ejecución de Databricks.

Azure Databricks ofrece varios tipos de entornos de ejecución y varias versiones de esos tipos en tiempo de ejecución en la lista desplegable versión de Databricks Runtime al crear o editar un clúster.

Selección de la versión en tiempo de ejecución

Imágenes de photon

Importante

Esta característica está en versión preliminar pública.

Nota

Disponible en Databricks Runtime 8.3 y posteriores.

Para seleccionar una imagen de Photon:

  1. Mostrar solo los entornos de ejecución que contienen tipos de imagen photon. Active la casilla Photon:

    Selección de Photon

  2. Seleccione un entorno de ejecución de Photon.

  3. Opcionalmente, seleccione un tipo de instancia en la lista desplegable Tipo de trabajo y Tipo de controlador.

Databricks recomienda los siguientes tipos de instancia para obtener un precio y un rendimiento óptimos:

  • Standard_E4ds_v4
  • Standard_E8ds_v4
  • Standard_E16ds_v4

Puede ver la actividad photon en la interfaz de usuario de Spark. En la captura de pantalla siguiente se muestra el DAG de detalles de la consulta. Hay dos indicaciones de Photon en el DAG. En primer lugar, los operadores photon comienzan con "Photon", por ejemplo, PhotonGroupingAgg . En segundo lugar, en el DAG, los operadores photon y las fases son coloreados, mientras que los que no son photon son azules.

Photon DAG

Imágenes de Docker

Para algunas Databricks Runtime, puede especificar una imagen de Docker al crear un clúster. Entre los casos de uso de ejemplo se incluyen la personalización de bibliotecas, un entorno de contenedor golden que no cambia y la integración de CI/CD de Docker.

También puede usar imágenes de Docker para crear entornos de aprendizaje profundo personalizados en clústeres con dispositivos GPU.

Para obtener instrucciones, consulte Personalización de contenedores con Databricks Container Services y Databricks Container Services en clústeres de GPU.

Versión de Python

Importante

Python 2 alcanzó su fin de vida el 1 de enero de 2020. Python 2 no se admite en Databricks Runtime 6.0 y versiones posteriores. Databricks Runtime 5.5 y siguientes siguen siendo compatibles con Python 2.

Clústeres de Python Databricks Runtime 6.0 y posteriores

Databricks Runtime 6.0 (no compatible) y posteriores solo admite Python 3. Para conocer los cambios importantes relacionados con el entorno de Python introducidos por Databricks Runtime 6.0, consulte Entorno de Python en las notas de la versión.

Clústeres de Python Databricks Runtime 5.5 LTS

Para Databricks Runtime 5.5 LTS, los trabajos de Spark, las celdas de cuadernos de Python y la instalación de bibliotecas admiten Python 2 y 3.

La versión predeterminada de Python para los clústeres creados mediante la interfaz de usuario es Python 3. En Databricks Runtime 5.5 LTS, la versión predeterminada para los clústeres creados mediante la API REST es Python 2.

Especificación de la versión de Python

Para especificar la versión de Python al crear un clúster mediante la interfaz de usuario, selecciónelo en la lista desplegable Versión de Python.

Versión de Python del clúster

Para especificar la versión de Python al crear un clúster mediante la API, establezca la variable de entorno PYSPARK_PYTHON en /databricks/python/bin/python o /databricks/python3/bin/python3 . Para obtener un ejemplo, consulte el ejemplo de API rest Upload un archivo grande en DBFS.

Para validar que la PYSPARK_PYTHON configuración suminó efecto, en un cuaderno (o celda) de %python Python, ejecute:

import sys
print(sys.version)

Si especificó /databricks/python3/bin/python3 , debe imprimir algo parecido a lo siguiente:

3.5.2 (default, Sep 10 2016, 08:21:44)
[GCC 5.4.0 20160609]

Importante

Para Databricks Runtime 5.5 LTS, cuando se ejecuta en un cuaderno, hace referencia a la versión de Python del sistema %sh python --versionpython Ubuntu, que es Python 2. Use para hacer referencia a la versión de Python que usan los cuadernos de Databricks y Spark: esta ruta de acceso se configura automáticamente para que apunte al /databricks/python/bin/python ejecutable de Python correcto.

Preguntas más frecuentes

¿Puedo usar cuadernos de Python 2 y Python 3 en el mismo clúster?

No. La versión de Python es una configuración para todo el clúster y no se puede configurar por cuaderno.

¿Qué bibliotecas se instalan en clústeres de Python?

Para más información sobre las bibliotecas específicas que están instaladas, consulte las notas de la versión del entorno de ejecución de Databricks.

¿Funcionarán mis bibliotecas pyPI existentes con Python 3?

Depende de si la versión de la biblioteca admite la versión de Python 3 de Databricks Runtime versión.

Databricks Runtime 5.5 LTS usa Python 3.5. Databricks Runtime 6.0 y posteriores y Databricks Runtime con Conda, use Python 3.7. Es posible que una versión anterior específica de una biblioteca de Python no sea compatible con Python 3.7. En este caso, deberá usar una versión más reciente de la biblioteca.

¿Funcionarán .egg mis bibliotecas existentes con Python 3?

Depende de si la biblioteca de berenjenas existente es compatible con Python 2 y 3. Si la biblioteca no admite Python 3, se producirá un error en los datos adjuntos de la biblioteca o se producirán errores en tiempo de ejecución.

Para obtener una guía completa sobre cómo portear código a Python 3 y escribir código compatible con Python 2 y 3, consulte Compatibilidad con Python 3.

¿Puedo seguir instalando bibliotecas de Python mediante scripts init?

Un caso de uso común para los scripts de inicialización del nodo de clúster es instalar paquetes.

Para Databricks Runtime 5.5 LTS, use para asegurarse de que los paquetes de Python se instalan en el entorno virtual de Python de Databricks en lugar del entorno /databricks/python/bin/pip de Python del sistema.

Para Databricks Runtime 6.0 y posteriores, y Databricks Runtime con Conda, el comando hace referencia a en el pip entorno virtual de Python pip correcto. Sin embargo, si usa un script init para crear el entorno virtual de Python, use siempre la ruta de acceso absoluta para acceder a python y pip .

Tipo de nodo de clúster

Un clúster consta de un nodo de controlador y cero o más nodos de trabajo.

Puede elegir tipos de instancia de proveedor de nube independientes para los nodos de controlador y de trabajo, aunque de forma predeterminada el nodo de controlador usa el mismo tipo de instancia que el nodo de trabajo. Las distintas familias de tipos de instancia se ajustan a distintos casos de uso, como cargas de trabajo con un uso intensivo de memoria o de proceso intensivo.

Nota

Si los requisitos de seguridad incluyen aislamiento de proceso,seleccione una Standard_F72s_V2 como tipo de trabajo. Estos tipos de instancia representan máquinas virtuales aisladas que consumen todo el host físico y proporcionan el nivel de aislamiento necesario para admitir, por ejemplo, cargas de trabajo de nivel de impacto 5 (IL5) del Departamento de Defensa de EE. UU.

Nodo de controlador

El nodo del controlador mantiene la información de estado de todos los cuadernos asociados al clúster. El nodo de controlador también mantiene SparkContext e interpreta todos los comandos que se ejecutan desde un cuaderno o una biblioteca en el clúster, y ejecuta el maestro Apache Spark que coordina con los ejecutores de Spark.

El valor predeterminado del tipo de nodo de controlador es el mismo que el tipo de nodo de trabajo. Puede elegir un tipo de nodo de controlador mayor con más memoria si planea usar muchos datos de los trabajadores de Spark y collect() analizarlos en el cuaderno.

Sugerencia

Puesto que el nodo del controlador mantiene toda la información de estado de los cuadernos adjuntos, asegúrese de desasoyérse los cuadernos no usados del nodo del controlador.

Nodo de trabajo

Azure Databricks nodos de trabajo ejecutan los ejecutores de Spark y otros servicios necesarios para el funcionamiento correcto de los clústeres. Al distribuir la carga de trabajo con Spark, todo el procesamiento distribuido se produce en los nodos de trabajo. Azure Databricks ejecuta un ejecutor por nodo de trabajo; por lo tanto, los términos ejecutor y trabajo se usan indistintamente en el contexto de la arquitectura Azure Databricks trabajo.

Sugerencia

Para ejecutar un trabajo de Spark, necesita al menos un nodo de trabajo. Si un clúster tiene cero trabajadores, puede ejecutar comandos que no son de Spark en el nodo del controlador, pero se producirá un error en los comandos de Spark.

Tipos de instancia de GPU

En el caso de las tareas que exigen un alto rendimiento, como las asociadas al aprendizaje profundo, Azure Databricks admite clústeres acelerados con unidades de procesamiento gráfico (GPU). Esta compatibilidad está en versión beta. Para más información, consulte Clústeres habilitados para GPU.

Instancias de Spot

Para ahorrar costos, puede optar por usar instancias de spot, también conocidas como máquinas virtuales de Azure Spot activando la casilla Instancias de Spot.

Configuración de spot

La primera instancia siempre estará a petición (el nodo del controlador siempre está a petición) y las instancias posteriores serán instancias de spot. Si las instancias de spot se expulsen debido a la falta de disponibilidad, las instancias a petición se implementan para reemplazar las instancias expulsadas.

Tamaño del clúster y escalado automático

Al crear un clúster Azure Databricks, puede proporcionar un número fijo de trabajadores para el clúster o proporcionar un número mínimo y máximo de trabajadores para el clúster.

Cuando se proporciona un clúster de tamaño fijo, Azure Databricks garantiza que el clúster tiene el número especificado de trabajadores. Cuando se proporciona un intervalo para el número de trabajos, Databricks elige el número adecuado de trabajos necesarios para ejecutar el trabajo. Esto se conoce como escalado automático.

Con el escalado automático, Azure Databricks de forma dinámica los trabajos para tener en cuenta las características del trabajo. Algunas partes de la canalización pueden ser más exigentes computacionalmente que otras, y Databricks agrega automáticamente trabajos adicionales durante estas fases del trabajo (y los quita cuando ya no son necesarios).

El escalado automático facilita la realización de un uso elevado del clúster, ya que no es necesario aprovisionar el clúster para que coincida con una carga de trabajo. Esto se aplica especialmente a las cargas de trabajo cuyos requisitos cambian con el tiempo (como explorar un conjunto de datos durante el transcurso de un día), pero también se puede aplicar a una carga de trabajo única más corta cuyos requisitos de aprovisionamiento se desconocen. Por lo tanto, el escalado automático ofrece dos ventajas:

  • Las cargas de trabajo se pueden ejecutar más rápido en comparación con un clúster con un tamaño constante infraaprovisionado.
  • El escalado automático de clústeres puede reducir los costos generales en comparación con un clúster de tamaño estático.

En función del tamaño constante del clúster y la carga de trabajo, el escalado automático le ofrece una o ambas ventajas al mismo tiempo. El tamaño del clúster puede ir por debajo del número mínimo de trabajadores seleccionados cuando el proveedor de nube finaliza las instancias. En este caso, Azure Databricks continuamente para volver a aprovisionar instancias con el fin de mantener el número mínimo de trabajos.

Nota

El escalado automático no está disponible para los spark-submit trabajos.

Escalado automático de tipos

Azure Databricks ofrece dos tipos de escalado automático de nodos de clúster: estándar y optimizado. Para obtener una explicación de las ventajas del escalado automático optimizado, vea la entrada de blog sobre el escalado automático optimizado.

Los clústeres automatizados (trabajo) siempre usan el escalado automático optimizado. El tipo de escalado automático realizado en clústeres de uso completo depende de la configuración del área de trabajo.

Los clústeres de uso general usan el escalado automático estándar en las áreas de trabajo del plan de tarifa Estándar. Los clústeres de uso general usan el escalado automático optimizado en Azure Databricks Premium plan.

Comportamiento del escalado automático

El escalado automático se comporta de forma diferente en función de si está optimizado o estándar y de si se aplica a un clúster de trabajo o de uso completo.

Escalado automático optimizado

  • Escala verticalmente de min a max en 2 pasos.
  • Puede reducir verticalmente incluso si el clúster no está inactivo si observa el estado del archivo aleatorio.
  • Se escala verticalmente en función de un porcentaje de nodos actuales.
  • En los clústeres de trabajo, se escala verticalmente si el clúster está infrautilizado en los últimos 40 segundos.
  • En los clústeres de uso general, se escala verticalmente si el clúster está infrautilizado en los últimos 150 segundos.
  • La propiedad de configuración de Spark especifica en segundos la frecuencia con la que un clúster toma decisiones spark.databricks.aggressiveWindowDownS de reducción vertical. Aumentar el valor hace que un clúster se escale más lentamente. El valor máximo es 600.

Escalado automático estándar

  • Comienza con la adición de 8 nodos. A partir de entonces, se escala verticalmente de forma exponencial, pero puede realizar muchos pasos para alcanzar el máximo. Puede personalizar el primer paso estableciendo la propiedad spark.databricks.autoscaling.standardFirstStepUp de configuración de Spark.
  • Solo se escala verticalmente cuando el clúster está completamente inactivo y se ha infrautilizado durante los últimos 10 minutos.
  • Se escala verticalmente exponencialmente, empezando por 1 nodo.

Habilitación y configuración del escalado automático

Para permitir Azure Databricks cambiar el tamaño del clúster automáticamente, habilite el escalado automático para el clúster y proporcione el intervalo mínimo y máximo de trabajo.

  1. Habilite el escalado automático.

    • All-Purpose clúster: en la página Crear clúster, active la casilla Habilitar escalado automático en el cuadro Opciones de Autopilot:

      Habilitación del escalado automático para clústeres interactivos

    • Clúster de trabajos: en la página Configurar clúster, active la casilla Habilitar escalado automático en el cuadro Opciones de Autopilot:

      Habilitación del escalado automático para clústeres de trabajos

  2. Configure los trabajadores mínimo y máximo.

    Configuración de los trabajadores mínimos y máximos

    Cuando se ejecuta el clúster, la página de detalles del clúster muestra el número de trabajadores asignados. Puede comparar el número de trabajadores asignados con la configuración de trabajo y realizar ajustes según sea necesario.

Importante

Si usa un grupo de instancias:

  • Asegúrese de que el tamaño del clúster solicitado es menor o igual que el número mínimo de instancias inactivas del grupo. Si es mayor, el tiempo de inicio del clúster será equivalente a un clúster que no use un grupo.
  • Asegúrese de que el tamaño máximo del clúster sea menor o igual que la capacidad máxima del grupo. Si es mayor, se producirá un error en la creación del clúster.

Ejemplo de escalado automático

Si vuelve a configurar un clúster estático para que sea un clúster de escalado automático, Azure Databricks cambia inmediatamente el tamaño del clúster dentro de los límites mínimo y máximo y, a continuación, inicia el escalado automático. Por ejemplo, en la tabla siguiente se muestra lo que sucede con los clústeres con un tamaño inicial determinado si se vuelve a configurar un clúster para escalar automáticamente entre 5 y 10 nodos.

Tamaño inicial Tamaño después de la reconfiguración
6 6
12 10
3 5

Escalado automático del almacenamiento local

A menudo puede ser difícil calcular cuánto espacio en disco ocupará un trabajo determinado. Para evitar tener que calcular cuántos gigabytes de disco administrado se asocian al clúster en el momento de la creación, Azure Databricks habilita automáticamente el escalado automático del almacenamiento local en todos los clústeres Azure Databricks clústeres.

Con el escalado automático de almacenamiento local, Azure Databricks la cantidad de espacio libre en disco disponible en los trabajadores de Spark del clúster. Si un trabajo comienza a ejecutarse demasiado bajo en el disco, Databricks asocia automáticamente un nuevo disco administrado al trabajo antes de que se agote el espacio en disco. Los discos están conectados hasta un límite de 5 TB de espacio total en disco por máquina virtual (incluido el almacenamiento local inicial de la máquina virtual).

Los discos administrados conectados a una máquina virtual solo se desasocian cuando la máquina virtual se devuelve a Azure. Es decir, los discos administrados nunca se desasocian de una máquina virtual, siempre que sea parte de un clúster en ejecución. Para reducir verticalmente el uso de disco administrado, Azure Databricks recomienda usar esta característica en un clúster configurado con tipos de instancia de GPU o terminación automática.

Cifrado de discos locales

Importante

Esta característica está en versión preliminar pública.

Algunos tipos de instancia que se usan para ejecutar clústeres pueden tener discos conectados localmente. Azure Databricks almacenar datos aleatorios o datos efímeros en estos discos conectados localmente. Para asegurarse de que todos los datos en reposo están cifrados para todos los tipos de almacenamiento, incluidos los datos aleatorios que se almacenan temporalmente en los discos locales del clúster, puede habilitar el cifrado de disco local.

Importante

Las cargas de trabajo pueden ejecutarse más lentamente debido al impacto en el rendimiento de la lectura y escritura de datos cifrados hacia y desde volúmenes locales.

Cuando el cifrado de disco local está habilitado, Azure Databricks genera una clave de cifrado localmente que es única para cada nodo del clúster y se usa para cifrar todos los datos almacenados en discos locales. El ámbito de la clave es local para cada nodo de clúster y se destruye junto con el propio nodo del clúster. Durante su vigencia, la clave reside en la memoria para el cifrado y descifrado y se almacena cifrada en el disco.

Para habilitar el cifrado de disco local, debe usar clusters API 2.0. Durante la creación o edición del clúster, establezca:

{
  "enable_local_disk_encryption": true
}

Consulte Creación yedición en la referencia de api de clústeres para obtener ejemplos de cómo invocar estas API.

Este es un ejemplo de una llamada de creación de clúster que habilita el cifrado de disco local:

{
  "cluster_name": "my-cluster",
  "spark_version": "7.3.x-scala2.12",
  "node_type_id": "Standard_D3_v2",
  "enable_local_disk_encryption": true,
  "spark_conf": {
    "spark.speculation": true
  },
  "num_workers": 25
}

Configuración de Spark

Para ajustar los trabajos de Spark, puede proporcionar propiedades de configuración de Spark personalizadas en una configuración de clúster.

  1. En la página de configuración del clúster, haga clic en el botón de alternancia Opciones avanzadas.

  2. Haga clic en la pestaña Spark.

    Configuración de Spark

    En Configuración de Spark,escriba las propiedades de configuración como un par clave-valor por línea.

Al configurar un clúster mediante clusters API 2.0,establezca las propiedades de Spark en el campo de Creación de una solicitud de clúster o Editar solicitud de clúster.

Para establecer las propiedades de Spark para todos los clústeres, cree un script de init global:

dbutils.fs.put("dbfs:/databricks/init/set_spark_params.sh","""
  |#!/bin/bash
  |
  |cat << 'EOF' > /databricks/driver/conf/00-custom-spark-driver-defaults.conf
  |[driver] {
  |  "spark.sql.sources.partitionOverwriteMode" = "DYNAMIC"
  |}
  |EOF
  """.stripMargin, true)

Variables de entorno

Puede establecer variables de entorno a las que puede acceder desde scripts que se ejecutan en un clúster.

  1. En la página de configuración del clúster, haga clic en el botón de alternancia Opciones avanzadas.

  2. Haga clic en la pestaña Spark.

  3. Establezca las variables de entorno en el campo Variables de entorno.

    Campo Variables de entorno

También puede establecer variables de entorno mediante el campo de los puntos de conexión de API Crear solicitud de clúster o Editar clúster spark_env_vars de solicitud de clúster. spark_env_vars

Nota

Las variables de entorno que establezca en este campo no están disponibles en Scripts de inicialización de nodo de clúster. Los scripts de init solo admiten un conjunto limitado de orden de ejecución de scripts init predefinidos.

Etiquetas de clúster

Las etiquetas de clúster permiten supervisar fácilmente el costo de los recursos en la nube que usan varios grupos de la organización. Puede especificar etiquetas como pares clave-valor al crear un clúster y Azure Databricks aplica estas etiquetas a recursos en la nube como máquinas virtuales y volúmenes de disco, así como a informes de uso de DBU.

En el caso de los clústeres iniciados desde grupos, las etiquetas de clúster personalizadas solo se aplican a los informes de uso de DBU y no se propagan a los recursos en la nube. Para obtener información detallada sobre cómo funcionan conjuntamente los tipos de etiquetas de grupo y clúster, consulte Supervisión del uso mediante etiquetas de clúster, grupo y área de trabajo.

Para mayor comodidad, Azure Databricks aplica cuatro etiquetas predeterminadas a cada clúster: Vendor , Creator , y ClusterNameClusterId .

Además, en los clústeres de trabajos, Azure Databricks aplica dos etiquetas predeterminadas: RunName y JobId . En los recursos que usa Databricks SQL, Azure Databricks aplica también la etiqueta predeterminada SqlEndpointId .

Advertencia

No asigne una etiqueta personalizada con la clave Name a un clúster. Cada clúster tiene una etiqueta Name cuyo valor se establece mediante Azure Databricks. Si cambia el valor asociado a la clave , ya no se puede realizar el seguimiento del Name clúster Azure Databricks. Como consecuencia, es posible que el clúster no se termine después de quedarse inactivo y seguirá incurriendo en costos de uso.

Puede agregar etiquetas personalizadas al crear un clúster. Para configurar etiquetas de clúster:

  1. En la página de configuración del clúster, haga clic en el botón de alternancia Opciones avanzadas.

  2. En la parte inferior de la página, haga clic en la pestaña Etiquetas.

    Pestaña Etiquetas

  3. Agregue un par clave-valor para cada etiqueta personalizada. Puede agregar hasta 43 etiquetas personalizadas.

Acceso SSH a los clústeres

Por motivos de seguridad, en Azure Databricks el puerto SSH está cerrado de forma predeterminada. Si desea habilitar el acceso SSH a los clústeres de Spark, póngase en contacto Azure Databricks soporte técnico.

Nota

SSH solo se puede habilitar si el área de trabajo se implementa en su propia red virtual de Azure.

Envío de los registros de clúster

Al crear un clúster, puede especificar una ubicación para entregar los registros del nodo de controlador de Spark, los nodos de trabajo y los eventos. Los registros se entregan cada cinco minutos al destino elegido. Cuando se termina un clúster, Azure Databricks garantías de entregar todos los registros generados hasta que se haya terminado el clúster.

El destino de los registros depende del identificador del clúster. Si el destino especificado es dbfs:/cluster-log-delivery , los registros de clúster para se 0630-191345-leap375 entregan a dbfs:/cluster-log-delivery/0630-191345-leap375 .

Para configurar la ubicación de entrega del registro:

  1. En la página de configuración del clúster, haga clic en el botón de alternancia Opciones avanzadas.

  2. Haga clic en la pestaña Registro.

    Envío de los registros de clúster

  3. Seleccione un tipo de destino.

  4. Escriba la ruta de acceso del registro del clúster.

Nota

Esta característica también está disponible en la API REST. Consulte Clusters API 2.0 y Ejemplos de entrega de registros de clúster.

Scripts de inicialización

Un script de inicialización de nodo de clúster (o init) es un script de shell que se ejecuta durante el inicio de cada nodo de clúster antes de que se inicie la JVM de trabajo o del controlador spark. Puede usar scripts de init para instalar paquetes y bibliotecas no incluidos en el entorno de ejecución de Databricks, modificar la ruta de clase del sistema JVM, establecer las propiedades del sistema y las variables de entorno usadas por JVM o modificar los parámetros de configuración de Spark, entre otras tareas de configuración.

Puede adjuntar scripts de init a un clúster si expande la sección Opciones avanzadas y hace clic en la pestaña Scripts de inicio.

Para obtener instrucciones detalladas, consulte Scripts de inicialización de nodos de clúster.