• Русский
  • Руководство по CodeFlare SDK

    В этом руководстве показано, как использовать CodeFlare SDK для отправки RayJobs в существующий RayCluster. Вы узнаете, как развернуть кластер Ray, проверить его состояние, отправить RayJob и управлять жизненным циклом кластера.

    Требования

    • В вашем кластере для науки о данных установлен плагин Alauda Build of KubeRay Operator, см. Install Alauda Build of KubeRay Operator.
    • У вас есть доступ к namespace в Alauda AI, создан рабочий стол (workbench), и рабочий стол использует стандартный образ с предустановленным CodeFlare SDK, например, блокнот Standard Data Science. Для информации о создании рабочих столов смотрите Create Workbench.
    • Вы вошли в Alauda AI, запустили рабочий стол и вошли в JupyterLab.

    Демонстрационный блокнот

    Скачайте демонстрационный Jupyter-блокнот, чтобы следовать этому руководству:

    Нажмите кнопку со стрелкой вверх на странице JupyterLab, чтобы загрузить скачанный файл блокнота.

    Процедура

    Откройте демонстрационный блокнот в JupyterLab и выполните следующие шаги. Каждый шаг соответствует разделу в блокноте.

    Шаг 1: Создание RayCluster

    Выполните первые две ячейки кода, чтобы импортировать CodeFlare SDK и создать кластер Ray с помощью API ClusterConfiguration. Перед запуском обновите параметр image на образ Ray кластера, совместимый с вашей аппаратной архитектурой. Если у вашего кластера нет прямого доступа в интернет, используйте образ из вашего внутреннего реестра.

    Вызов cluster.apply() отправляет конфигурацию кластера и ожидает его готовности. При необходимости можно изменить значение timeout.

    Шаг 2: Проверка состояния кластера

    Выполните ячейку с cluster.status(). Если кластер не запустился сразу, выполните ячейку несколько раз, пока не увидите состояние Ready.

    Шаг 3: Отправка RayJob

    Выполните ячейку с RayJob, чтобы создать и отправить задачу в работающий кластер. Обратите внимание на следующие параметры:

    • job_name: уникальное имя для вашего RayJob.
    • cluster_name: должно совпадать с именем вашего существующего RayCluster.
    • entrypoint: команда для выполнения. В стандартной практике это будет путь к Python-скрипту обучения, а не встроенная команда, используемая в демо.

    Шаг 4: Мониторинг RayJob

    Выполните ячейку с rayjob.status(). Эта функция выводит разные таблицы в зависимости от текущего состояния RayJob. Вы можете выполнять ячейку несколько раз, чтобы наблюдать изменения.

    Шаг 5: Очистка

    После завершения задачи выполните cluster.down(), чтобы остановить кластер.

    WARNING

    Для оптимального управления ресурсами всегда удаляйте кластер Ray, когда он больше не нужен.