Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»
Yandex Managed Service for Apache Spark™
  • Начало работы
    • Все инструкции
      • Задания Spark
      • Задания PySpark
      • Задания SparkConnect
  • Управление доступом
  • Правила тарификации
  • Метрики Yandex Monitoring
  • Справочник Terraform
  • История изменений

В этой статье:

  • Создать задание
  • Отменить задание
  • Получить список заданий
  • Получить общую информацию о задании
  • Получить логи выполнения задания
  1. Пошаговые инструкции
  2. Задания (jobs)
  3. Задания PySpark

Управление заданиями PySpark

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 25 сентября 2025 г.
  • Создать задание
  • Отменить задание
  • Получить список заданий
  • Получить общую информацию о задании
  • Получить логи выполнения задания

Создать заданиеСоздать задание

Важно

Задание будет запущено автоматически после его создания.

Чтобы создать задание:

Консоль управления
gRPC API
  1. Перейдите на страницу каталога и выберите сервис Managed Service for Apache Spark.

  2. Нажмите на имя нужного кластера и выберите вкладку Задания.

  3. Нажмите кнопку Создать задание.

  4. Укажите имя задания.

  5. В поле Тип задания выберите PySpark.

  6. В поле Main python файл укажите путь к основному PY-файлу приложения в формате:

    Размещение файла Формат пути
    Файловая система инстанса file:///<путь_к_файлу>
    Бакет Object Storage s3a://<имя_бакета>/<путь_к_файлу>
    Интернет http://<путь_к_файлу> или https://<путь_к_файлу>

    Допускается использование архивов стандартных для Linux форматов: zip, gz, xz, bz2 и т. д.

    Сервисному аккаунту кластера необходим доступ на чтение ко всем файлам в бакете. Пошаговые инструкции по настройке доступа к Object Storage приведены в разделе Редактирование ACL бакета.

  7. (Опционально) Укажите пути к PY-файлам, если они используются.

  8. Укажите аргументы задания.

    Если аргумент, переменная или свойство состоит из нескольких частей, разделенных пробелом, указывайте каждую часть отдельно. При этом важно сохранить порядок объявления аргументов, переменных и свойств.

    Например, аргумент -n 1000 должен быть преобразован в два аргумента -n и 1000, стоящих последовательно.

  9. (Опционально) Укажите пути к JAR-файлам, если они используются.

  10. (Опционально) Задайте продвинутые настройки:

    • Укажите пути к необходимым файлам и архивам.
    • В поле Настройки укажите свойства компонентов в виде пар ключ-значение.
    • Укажите координаты используемых и исключаемых Maven-пакетов, а также URL дополнительных репозиториев для поиска пакетов.
  11. Нажмите кнопку Создать задание.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом JobService.Create и выполните запрос, например, с помощью gRPCurl:

    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/spark/v1/job_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
               "cluster_id": "<идентификатор_кластера>",
               "name": "<имя_задания>",
               "pyspark_job": {
                 "args": [
                   <список_аргументов>
                 ],
                 "jar_file_uris": [
                   <список_путей_к_JAR-файлам>
                 ],
                 "file_uris": [
                   <список_путей_к_файлам>
                 ],
                 "archive_uris": [
                   <список_путей_к_архивам>
                 ],
                 "properties": {
                   <список_свойств>
                 },
                 "main_python_file_uri": "<путь_к_основному_PY-файлу>",
                 "python_file_uris": [
                   <список_путей_к_PY-файлам>
                 ],
                 "packages": [
                   <список_Maven-координат_пакетов>
                 ],
                 "repositories": [
                   <URL_репозиториев_для_поиска_пакетов>
                 ],
                 "exclude_packages": [
                   <список_Maven-координат_исключаемых_пакетов>
                 ]
               }
           }' \
        spark.api.yandexcloud.kz:443 \
        yandex.cloud.spark.v1.JobService.Create
    

    Где:

    • name — имя PySpark-задания.

    • spark_job — параметры PySpark-задания:

      • args — аргументы задания.

      • jar_file_uris — пути к используемым JAR-файлам.

      • file_uris — пути к используемым файлам.

      • archive_uris — пути к используемым архивам.

      • properties — свойства компонентов в виде пар "ключ":"значение".

      • main_python_file_uri — путь к основному PY-файлу приложения в формате:

        Размещение файла Формат пути
        Файловая система инстанса file:///<путь_к_файлу>
        Бакет Object Storage s3a://<имя_бакета>/<путь_к_файлу>
        Интернет http://<путь_к_файлу> или https://<путь_к_файлу>

        Допускается использование архивов стандартных для Linux форматов: zip, gz, xz, bz2 и т. д.

        Сервисному аккаунту кластера необходим доступ на чтение ко всем файлам в бакете. Пошаговые инструкции по настройке доступа к Object Storage приведены в разделе Редактирование ACL бакета.

      • python_file_uris — пути к используемым PY-файлам.

      • packages — Maven-координаты JAR-файлов в формате groupId:artifactId:version.

      • repositories — URL дополнительных репозиториев для поиска пакетов.

      • exclude_packages — Maven-координаты пакетов, которые нужно исключить, в формате groupId:artifactId.

    Идентификатор кластера можно получить со списком кластеров в каталоге.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Отменить заданиеОтменить задание

Примечание

Задания в статусах ERROR, DONE или CANCELLED отменить нельзя. Чтобы узнать статус задания, получите список заданий в кластере.

Консоль управления
CLI
gRPC API
  1. Перейдите на страницу каталога и выберите сервис Managed Service for Apache Spark.
  2. Нажмите на имя нужного кластера и выберите вкладку Задания.
  3. Нажмите на имя нужного задания.
  4. В правом верхнем углу страницы нажмите кнопку Отменить.
  5. В открывшемся окне выберите Отменить задание.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы отменить задание:

  1. Посмотрите описание команды CLI для отмены задания:

    yc managed-spark job cancel --help
    
  2. Отмените задание, выполнив команду:

    yc managed-spark job cancel <имя_или_идентификатор_задания> \
      --cluster-id <идентификатор_кластера>
    

    Идентификатор кластера можно получить со списком кластеров в каталоге.

    Имя и идентификатор задания можно получить со списком заданий в кластере.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом JobService.Cancel и выполните запрос, например, с помощью gRPCurl:

    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/spark/v1/job_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
               "cluster_id": "<идентификатор_кластера>",
               "job_id": "<идентификатор_задания>"
           }' \
        spark.api.yandexcloud.kz:443 \
        yandex.cloud.spark.v1.JobService.Cancel
    

    Идентификатор кластера можно получить со списком кластеров в каталоге, идентификатор задания — со списком заданий в кластере.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Получить список заданийПолучить список заданий

Консоль управления
CLI
gRPC API
  1. Перейдите на страницу каталога и выберите сервис Managed Service for Apache Spark.
  2. Нажмите на имя нужного кластера и выберите вкладку Задания.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы получить список заданий кластера:

  1. Посмотрите описание команды CLI для получения списка заданий:

    yc managed-spark job list --help
    
  2. Получите список заданий, выполнив команду:

    yc managed-spark job list \
      --cluster-id <идентификатор_кластера>
    

    Идентификатор кластера можно получить со списком кластеров в каталоге.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом JobService.List и выполните запрос, например, с помощью gRPCurl:

    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/spark/v1/job_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
               "cluster_id": "<идентификатор_кластера>"
           }' \
        spark.api.yandexcloud.kz:443 \
        yandex.cloud.spark.v1.JobService.List
    

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Получить общую информацию о заданииПолучить общую информацию о задании

Консоль управления
CLI
gRPC API
  1. Перейдите на страницу каталога и выберите сервис Managed Service for Apache Spark.
  2. Нажмите на имя нужного кластера и выберите вкладку Задания.
  3. Нажмите на имя нужного задания.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы получить информацию о задании:

  1. Посмотрите описание команды CLI для получения информации о задании:

    yc managed-spark job get --help
    
  2. Получите информацию о задании, выполнив команду:

    yc managed-spark job get <идентификатор_задания> \
      --cluster-id <идентификатор_кластера>
    

    Идентификатор кластера можно получить со списком кластеров в каталоге.

    Идентификатор задания можно получить со списком заданий в кластере.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом JobService.Get и выполните запрос, например, с помощью gRPCurl:

    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/spark/v1/job_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
               "cluster_id": "<идентификатор_кластера>",
               "job_id": "<идентификатор_задания>"
           }' \
        spark.api.yandexcloud.kz:443 \
        yandex.cloud.spark.v1.JobService.Get
    

    Идентификатор кластера можно получить со списком кластеров в каталоге, идентификатор задания — со списком заданий в кластере.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Получить логи выполнения заданияПолучить логи выполнения задания

Важно

Чтобы получать логи выполнения заданий, включите запись логов в кластере при его создании.

Консоль управления
CLI
gRPC API
  1. Перейдите на страницу каталога и выберите сервис Managed Service for Apache Spark.
  2. Нажмите на имя нужного кластера и выберите вкладку Задания.
  3. Нажмите на имя нужного задания.
  4. В поле Логи выполнения задания нажмите на ссылку.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы получить логи выполнения задания:

  1. Посмотрите описание команды CLI для получения логов задания:

    yc managed-spark job log --help
    
  2. Получите логи задания, выполнив команду:

    yc managed-spark job log <идентификатор_задания> \
      --cluster-id <идентификатор_кластера>
    

    Идентификатор кластера можно получить со списком кластеров в каталоге.

    Идентификатор задания можно получить со списком заданий в кластере.

    Чтобы получить логи нескольких заданий, перечислите их идентификаторы через пробел, например:

    yc managed-spark job log c9q9veov4uql******** c9qu8uftedte******** \
      --cluster-id c9q8ml85r1oh********
    
  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом JobService.ListLog и выполните запрос, например, с помощью gRPCurl:

    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/spark/v1/job_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
               "cluster_id": "<идентификатор_кластера>",
               "job_id": "<идентификатор_задания>"
           }' \
        spark.api.yandexcloud.kz:443 \
        yandex.cloud.spark.v1.JobService.ListLog
    

    Идентификатор кластера можно запросить со списком кластеров в каталоге, идентификатор задания — со списком заданий в кластере.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Была ли статья полезна?

Предыдущая
Задания Spark
Следующая
Задания SparkConnect
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»