Empieza con el Registro de Artefactos

Importante

Esta característica se encuentra en su versión beta. Para usarlo, un administrador de espacio de trabajo debe activar el Registro de Artefactos de Databricks desde la página de Previsualizaciones . Consulte Administrar versiones preliminares de Azure Databricks. Databricks anunciará los precios del Registro de Artefactos cuando esté disponible de forma general.

Usa Artifact Registry para enviar imágenes de contenedor con Docker y gobernarlas en Unity Catalog.

Esta página te muestra cómo configurar la autenticación, conceder acceso, enviar una imagen y descubrirla. Para conceptos y limitaciones, véase Registro de Artefactos. Si un comando u operación falla, consulte Resolución de problemas en el Registro de Artefactos.

Prerrequisitos

Antes de empezar, debe disponer de lo siguiente:

  • Un espacio de trabajo en una región que soporta el Registro de Artefactos. Consulte Limitaciones.
  • La CLI de Databricks (interfaz de línea de comandos) versión 1.18.0 o superior instalada en tu máquina local.
  • La CLI de Docker está instalada en tu equipo local.
  • Un catálogo y un esquema existentes de Unity Catalog accesibles desde el espacio de trabajo.
  • Los privilegios del Catálogo de Unity para tu operación.

Configurar la autenticación Docker

La CLI Databricks incluye un comando experimental que configura Docker para solicitar credenciales para el registro del espacio de trabajo. El asistente de credenciales Docker requiere un perfil OAuth de espacio de trabajo creado por databricks auth login. No admite perfiles que utilicen tokens de acceso personales, credenciales OAuth máquina a máquina (M2M) ni autenticación solo de cuenta.

  1. Crea o actualiza un perfil para el espacio de trabajo objetivo:

    databricks auth login --profile <profile>
    
  2. Configurar la autenticación Docker para el registro del espacio de trabajo:

    databricks auth docker configure --profile <profile>
    

    Omite --profile <profile> para usar tu perfil predeterminado de la CLI de Databricks.

    La CLI Databricks infiere la región del registro e imprime el nombre de host del registro del espacio de trabajo. Usa este nombre de host cuando envíes una imagen.

Conceder permisos

El Registro de Artefactos no crea el catálogo ni el esquema. Ambos deben existir ya en el Catálogo de Unity y ser accesibles desde el espacio de trabajo.

Artefact Registry utiliza los privilegios del Catálogo de Unity para controlar el acceso a imágenes. La siguiente tabla muestra las concesiones de privilegios menores para cada operación. Privilegios de gestión más amplios también pueden autorizar algunas operaciones.

Operación Concesiones de privilegios mínimos
Impulsar un nuevo artefacto USE CATALOG, USE SCHEMA y CREATE VOLUME
Empuja una nueva versión o mueve una etiqueta USE CATALOG, USE SCHEMA y WRITE VOLUME
Descubre artefactos y versiones USE CATALOG, USE SCHEMA y READ METADATA
Utiliza una imagen en una carga de trabajo soportada USE CATALOG, USE SCHEMA y READ VOLUME

Para un esquema dedicado al Registro de Artefactos, un administrador puede conceder los privilegios a nivel de esquema. Los privilegios a nivel de esquema se aplican a cada objeto coincidente en el esquema, incluidos los objetos creados posteriormente. Utiliza esquemas separados para los publicadores que no deberían poder modificar los artefactos de los otros. Conceder a cada principal solo los privilegios necesarios para su funcionamiento. Sustituye los valores de ejemplo y elimina las sentencias de privilegio innecesarias antes de ejecutar las siguientes instrucciones:

GRANT USE CATALOG ON CATALOG <catalog> TO `<principal>`;
GRANT USE SCHEMA ON SCHEMA <catalog>.<schema> TO `<principal>`;
GRANT CREATE VOLUME ON SCHEMA <catalog>.<schema> TO `<principal>`;
GRANT WRITE VOLUME ON SCHEMA <catalog>.<schema> TO `<principal>`;
GRANT READ METADATA ON SCHEMA <catalog>.<schema> TO `<principal>`;
GRANT READ VOLUME ON SCHEMA <catalog>.<schema> TO `<principal>`;

Para detalles sobre CREATE VOLUME, WRITE VOLUME, READ METADATA, y READ VOLUME, véase la referencia de privilegios del Catálogo de Unity. Para otros métodos de concesión, véase Mostrar, conceder y revocar privilegios.

Empujar una imagen

Usa el nombre de host del registro del espacio de trabajo con el nombre de la catalog.schema.artifact:tag imagen.

Consigue el nombre de host del registro

Utiliza el nombre de host del registro impreso por databricks auth docker configure. Para encontrar el nombre de host de un perfil más adelante y comprobar si su asistente de credenciales Docker está configurado, ejecuta:

databricks auth docker host --profile <profile>

Si necesitas construir el nombre del host manualmente, usa el ID numérico del espacio de trabajo y la región del espacio de trabajo. Para encontrar el ID del espacio de trabajo, consulta nombres de instancia, URLs e IDs del espacio de trabajo.

Para encontrar la región del espacio de trabajo, abre el selector del espacio de trabajo en la barra de navegación superior. La región aparece debajo del nombre del espacio de trabajo. También puede encontrarlo en la consola de la cuenta en Áreas de trabajo.

Utiliza el siguiente nombre de anfitrión:

<workspace-id>.container.<region>.azuredatabricks.net

Requisitos de nombre de artefactos

Importante

Los nombres de artefactos deben ser nombres totalmente cualificados del Catálogo de Unity en el formato <catalog>.<schema>.<artifact>. No utilice barras diagonales en el nombre. Consulta la jerarquía de objetos del Catálogo de Unity.

El <artifact> segmento puede contener hasta 255 caracteres. Utiliza solo letras minúsculas, números, guiones bajos y guiones. Debe empezar y terminar con una letra o un número. No uses más de dos guiones bajos consecutivos y no coloques un guion bajo junto a un guion.

Etiqueta y empuja la imagen

Warning

No incluyas credenciales ni otros datos sensibles en una imagen. Revisa la imagen antes de subirla. Las versiones de artefactos son inmutables y no se admiten solicitudes de borrado. Si publicas datos sensibles, rótalos o revócalos de inmediato y pide a un administrador que restrinja cualquier permiso de READ VOLUME que se aplique al artefacto afectado. Deja de usar el digest afectado y todas las etiquetas que apunten a él, y luego consulta la información que debes incluir al solicitar ayuda.

  1. Etiqueta una imagen local para el Registro de Artefactos:

    docker tag <local-image>:<local-tag> \
      <registry-hostname>/<catalog>.<schema>.<artifact>:<tag>
    
  2. Empuja la imagen:

    docker push <registry-hostname>/<catalog>.<schema>.<artifact>:<tag>
    

Descubre imágenes y versiones

Utiliza la API de Artefactos de Software para listar artefactos en un catálogo y esquema y luego listar las versiones de un artefacto.

Note

No hay comandos dedicados de la CLI Databricks para listar y gestionar imágenes del Registro de Artefactos. Usa databricks api para llamar a la API de artefactos de software.

Los siguientes ejemplos utilizan el perfil que configuraste para la autenticación Docker. Omite --profile <profile> si es tu perfil predeterminado de la CLI de Databricks.

Lista de artefactos

Para listar artefactos, ejecuta el siguiente comando:

databricks api get --profile <profile> \
  "/api/2.1/unity-catalog/software-artifacts?parent=schemas/<catalog>.<schema>"

La respuesta incluye el nombre y propietario del artefacto. Si la respuesta incluye next_page_token, pasa su valor en el page_token parámetro de consulta para recuperar la siguiente página, por ejemplo, &page_token=<next_page_token>.

Enumerar versiones

Para listar versiones de un artefacto, ejecute el siguiente comando:

databricks api get --profile <profile> \
  "/api/2.1/unity-catalog/software-artifacts/<catalog>.<schema>.<artifact>/versions"

La respuesta incluye el resumen de la imagen, las etiquetas y image_acceleration_details.status para cada versión. Para los límites de respuesta, véase Limitaciones.

Comprueba el estado de aceleración de imagen

Lee image_acceleration_details.status de la respuesta de la versión del artefacto:

Situación Meaning
SUCCESS Aceleración de imagen completada con éxito.
UNSPECIFIED No se ha registrado ningún resultado exitoso de aceleración de imagen. Este estado no identifica un fallo.

Usar imágenes en cargas de trabajo admitidas de Azure Databricks

Después de enviar una imagen a Artifact Registry, haz referencia a ella cuando crees una carga de trabajo compatible de Azure Databricks.

Para usar una imagen en una carga de trabajo de IA Runtime, consulta Usar imágenes Docker personalizadas con AI Runtime.

Recursos adicionales