Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Important
Эта функция доступна в бета-версии. Чтобы использовать эту функцию, администратор рабочей области должен включить Databricks Artifact Registry на странице Previews. См. статью "Управление предварительными версиями Azure Databricks". Databricks объявит цены на Artifact Registry, когда он станет доступен в общем доступе.
Используйте Реестр артефактов для запуска образов контейнеров с помощью Docker и управления ими в Unity Catalog.
На этой странице показано, как настроить аутентификацию, предоставить доступ, отправить изображение и найти его. О понятиях и ограничениях см. Реестр артефактов. Если команда или операция не работают, см. раздел «Устранение неполадок: Реестр артефактов».
Необходимые условия
Перед началом работы убедитесь, что у вас есть перечисленные ниже ресурсы.
- Рабочее пространство в регионе, поддерживающее Реестр артефактов. См. Ограничения.
- Databricks CLI (командный интерфейс) версии 1.18.0 или выше установлен на вашем локальном компьютере.
- Docker CLI установлен на вашем локальном компьютере.
- Существующий каталог и схема Unity Catalog, доступные из рабочего пространства.
- Привилегии Unity Catalog для вашей операции.
Настройте аутентификацию Docker
CLI Databricks включает экспериментальную команду, которая настраивает Docker для запроса учетных данных для реестра рабочего пространства. Для помощника учетных данных Docker требуется профиль OAuth рабочего пространства, созданный с помощью databricks auth login. Он не поддерживает профили, использующие личные токены доступа, учетные данные OAuth machine-to-machine (M2M) или аутентификацию только по аккаунту.
Создайте или обновите профиль для целевого рабочего пространства:
databricks auth login --profile <profile>Настройте аутентификацию Docker для реестра рабочего пространства:
databricks auth docker configure --profile <profile>Опустите
--profile <profile>, чтобы использовать профиль Databricks CLI по умолчанию.CLI Databricks определяет регион реестра и печатает имя хоста реестра рабочего пространства. Используйте это имя хоста при загрузке изображения.
Предоставление разрешений
Реестр артефактов не создаёт каталог или схему. Оба должны уже существовать в Unity Catalog и быть доступны из рабочего пространства.
Реестр артефактов использует привилегии Unity Catalog для управления доступом к изображениям. В следующей таблице показаны наименьшие привилегии для каждой операции. Более широкие управленческие права также могут разрешать некоторые операции.
| Операция | Наименьшие привилегии |
|---|---|
| Отправить новый артефакт |
USE CATALOG, USE SCHEMA и CREATE VOLUME |
| Отправьте новую версию или переместите тег |
USE CATALOG, USE SCHEMA и WRITE VOLUME |
| Откройте для себя артефакты и версии |
USE CATALOG, USE SCHEMA и READ METADATA |
| Используйте изображение в поддерживаемой рабочей нагрузке |
USE CATALOG, USE SCHEMA и READ VOLUME |
Для схемы, посвящённой Реестру артефактов, администратор может предоставить привилегии на уровне схемы. Привилегии уровня схемы применяются к каждому совпадающему объекту в схеме, включая объекты, созданные позже. Используйте отдельные схемы для издателей, которые не должны иметь возможности изменять артефакты друг друга. Предоставить каждому директору только те привилегии, необходимые для его деятельности. Замените значения в примере и удалите ненужные операторы назначения привилегий перед выполнением следующих операторов:
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>`;
Подробную информацию о CREATE VOLUME, WRITE VOLUME, READ METADATA и READ VOLUME см. в справочнике по привилегиям Unity Catalog. Для других способов предоставления грантов см. раздел «Показать, предоставить и отменить привилегии».
Продвините изображение
Используйте имя хоста реестра рабочего пространства вместе с именем catalog.schema.artifact:tag изображения.
Получите имя хоста реестра
Используйте имя хоста реестра, выведенное databricks auth docker configure. Чтобы позже найти имя хоста для профиля и проверить, настроен ли его помощник для учетных данных Docker, запустите:
databricks auth docker host --profile <profile>
Если нужно строить имя хоста вручную, используйте цифровой идентификатор рабочего пространства и регион рабочего пространства. Чтобы найти идентификатор рабочего пространства, см. Имена экземпляров, URL-адреса и идентификаторы рабочих пространств.
Чтобы найти регион рабочего пространства, откройте переключатель рабочего пространства в верхней панели навигации. Регион отображается под названием рабочего пространства. Его также можно найти в консоли учетной записи в разделе "Рабочие области".
Используйте следующее имя хоста:
<workspace-id>.container.<region>.azuredatabricks.net
Требования к названию артефактов
Important
Имена артефактов должны представлять собой полностью определённые имена Unity Catalog в формате <catalog>.<schema>.<artifact>. Не используйте косые черты в названии. См. иерархию объектов Unity Catalog.
Сегмент <artifact> может содержать до 255 символов. Используйте только строчные буквы, цифры, подчёркивания и дефисы. Она должна начинаться и заканчиваться буквой или цифрой. Используйте не более двух последовательных подчёркиваний и не ставьте подчёркивание рядом с дефисом.
Отметьте и протолкните изображение
Предупреждение
Не включайте учетные данные или другие конфиденциальные данные в изображение. Проверьте изображение, прежде чем надавать. Версии артефактов неизменяемы, и запросы на удаление не поддерживаются. Если вы опубликовали конфиденциальные данные, немедленно замените или отзовите их и попросите администратора ограничить все READ VOLUME разрешения доступа, которые распространяются на затронутый артефакт. Прекратите использовать затронутый дайджест и все теги, которые на него ссылаются, затем ознакомьтесь с информацией, которую следует указать при обращении за помощью.
Присвойте тег локальному образу для Artifact Registry:
docker tag <local-image>:<local-tag> \ <registry-hostname>/<catalog>.<schema>.<artifact>:<tag>Отправьте образ:
docker push <registry-hostname>/<catalog>.<schema>.<artifact>:<tag>
Откройте для себя изображения и версии
Используйте API программных артефактов, чтобы перечислить артефакты в каталоге и схеме, а затем перечислить версии артефакта.
Note
Выделенные CLI-команды Databricks для перечисления и управления изображениями Реестра артефактов недоступны. Используйте databricks api, чтобы вызвать API Software Artifacts.
В следующих примерах используется профиль, который вы настроили для аутентификации в Docker. Опустите --profile <profile> , если это ваш стандартный CLI-профиль Databricks.
Список артефактов
Чтобы перечислить артефакты, выполните следующую команду:
databricks api get --profile <profile> \
"/api/2.1/unity-catalog/software-artifacts?parent=schemas/<catalog>.<schema>"
В ответе указано имя артефакта и владельца. Если ответ включает next_page_token, передайте его значение в page_token параметре запроса для получения следующей страницы, например, &page_token=<next_page_token>.
Список версий
Чтобы перечислить версии артефакта, выполните следующую команду:
databricks api get --profile <profile> \
"/api/2.1/unity-catalog/software-artifacts/<catalog>.<schema>.<artifact>/versions"
Ответ включает дайджест изображений, теги и image_acceleration_details.status для каждой версии. Для ограничений отклика см. раздел Ограничения.
Проверьте статус ускорения изображения
Считайте image_acceleration_details.status из ответа о версии артефакта:
| Статус | Значение |
|---|---|
SUCCESS |
Ускорение изображения успешно завершено. |
UNSPECIFIED |
Успешного результата ускорения изображения не было зафиксировано. Этот статус не обозначает отказ. |