Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Data Processing
  • Начало работы
    • Все руководства
      • Обмен данными с Managed Service for ClickHouse®
      • Импорт данных из кластера Managed Service for MySQL® с помощью Sqoop
      • Импорт данных из кластера Managed Service for PostgreSQL с помощью Sqoop
      • Интеграция с сервисом DataSphere
      • Работа с топиками Apache Kafka® с помощью PySpark-заданий
      • Автоматизация работы с помощью Managed Service for Apache Airflow™
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • Вопросы и ответы
  • Обучающие курсы

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

  • Необходимые платные ресурсы
  • Перед началом работы
  • Подготовьте инфраструктуру
  • Создайте каталог и сеть
  • Создайте сервисный аккаунт кластера
  • Сгенерируйте пару ключей SSH
  • Настройте DataSphere
  • Создайте проект
  • Измените настройки проекта
  • Создайте бакет
  • Создайте кластер Yandex Data Processing
  • Запустите вычисления на кластере
  • Удалите созданные ресурсы
  1. Практические руководства
  2. Интеграция Yandex Data Processing с другими сервисами
  3. Интеграция с сервисом DataSphere

Интеграция с сервисом Yandex DataSphere

Статья создана
Yandex Cloud
Обновлена 8 апреля 2025 г.
  • Необходимые платные ресурсы
  • Перед началом работы
  • Подготовьте инфраструктуру
    • Создайте каталог и сеть
    • Создайте сервисный аккаунт кластера
    • Сгенерируйте пару ключей SSH
  • Настройте DataSphere
    • Создайте проект
    • Измените настройки проекта
  • Создайте бакет
  • Создайте кластер Yandex Data Processing
  • Запустите вычисления на кластере
  • Удалите созданные ресурсы

Вы можете использовать кластеры Apache Spark™, развернутые в сервисе Yandex Data Processing, в проектах Yandex DataSphere. Чтобы в DataSphere настроить интеграцию с сервисом Yandex Data Processing:

  1. Подготовьте инфраструктуру.
  2. Создайте бакет.
  3. Создайте кластер Yandex Data Processing.
  4. Настройте проект DataSphere.
  5. Запустите вычисления.

Если созданные ресурсы вам больше не нужны, удалите их.

Необходимые платные ресурсыНеобходимые платные ресурсы

В стоимость поддержки описываемого решения входят:

  • Плата за кластер Yandex Data Processing (см. тарифы Yandex Data Processing).
  • Плата за NAT-шлюз (см. тарифы Virtual Private Cloud).
  • Плата за бакет Object Storage: хранение данных и выполнение операций с ними (см. тарифы Object Storage).

Перед началом работыПеред началом работы

Перед началом работы нужно зарегистрироваться в Yandex Cloud, настроить сообщество и привязать к нему платежный аккаунт:

  1. На главной странице DataSphere нажмите Попробовать бесплатно и выберите аккаунт для входа — Яндекс ID или рабочий аккаунт в федерации (SSO).
  2. Выберите организацию Yandex Cloud Organization, в которой вы будете работать в Yandex Cloud.
  3. Создайте сообщество.
  4. Привяжите платежный аккаунт к сообществу DataSphere, в котором вы будете работать. Убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его в интерфейсе DataSphere.

Подготовьте инфраструктуруПодготовьте инфраструктуру

Войдите в консоль управления Yandex Cloud и выберите организацию, в которой вы работаете с DataSphere. На странице Yandex Cloud Billing убедитесь, что у вас подключен платежный аккаунт.

Если у вас есть активный платежный аккаунт, на странице облака вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура.

Примечание

Если вы работаете с Yandex Cloud через федерацию удостоверений, вам может быть недоступна платежная информация. В этом случае обратитесь к администратору вашей организации в Yandex Cloud.

Создайте каталог и сетьСоздайте каталог и сеть

Создайте каталог, в котором будет работать ваш кластер Yandex Data Processing.

Консоль управления
  1. В консоли управления выберите облако и нажмите Создать каталог.
  2. Введите имя каталога, например data-folder.
  3. Выберите опцию Создать сеть по умолчанию. Будет создана сеть с подсетями в каждой зоне доступности.
  4. Нажмите Создать.

Подробнее об облаках и каталогах.

Создайте NAT-шлюз для доступа в интернетСоздайте NAT-шлюз для доступа в интернет

Консоль управления
  1. В каталоге data-folder выберите сервис Virtual Private Cloud.
  2. На панели слева выберите Шлюзы.
  3. Нажмите Создать и задайте настройки шлюза:
    • Введите имя шлюза, например nat-for-cluster.
    • Тип шлюза — NAT-шлюз.
    • Нажмите Сохранить.
  4. На панели слева выберите Таблицы маршрутизации.
  5. Нажмите Создать и введите параметры таблицы маршрутизации:
    1. Введите имя, например route-table.
    2. Выберите сеть data-network.
    3. Нажмите Добавить маршрут.
      • В открывшемся окне в поле Next hop выберите Шлюз.
      • В поле Шлюз выберите созданный NAT-шлюз. Префикс назначения заполнится автоматически.
      • Нажмите Добавить.
  6. Нажмите Создать таблицу маршрутизации.

Затем привяжите таблицу маршрутизации к одной из подсетей, чтобы направить трафик из нее через NAT-шлюз:

  1. На панели слева выберите Подсети.
  2. В строке нужной подсети нажмите .
  3. В открывшемся меню выберите пункт Привязать таблицу маршрутизации.
  4. В открывшемся окне выберите созданную таблицу в списке.
  5. Нажмите Привязать.

Создайте сервисный аккаунт кластераСоздайте сервисный аккаунт кластера

Консоль управления
  1. Перейдите в каталог data-folder.

  2. В списке сервисов выберите Identity and Access Management.

  3. Нажмите кнопку Создать сервисный аккаунт.

  4. Введите имя сервисного аккаунта, например sa-for-data-proc.

  5. Нажмите Добавить роль и назначьте сервисному аккаунту роли:

    • dataproc.agent — для создания и использования кластеров Yandex Data Processing.
    • dataproc.provisioner — для автомасштабирования подкластеров.
    • vpc.user — для работы с сетью кластера Yandex Data Processing.
    • iam.serviceAccounts.user — для создания ресурсов в каталоге от имени сервисного аккаунта.
  6. Нажмите Создать.

Сгенерируйте пару ключей SSHСгенерируйте пару ключей SSH

Для безопасного подключения к хостам кластера Yandex Data Processing потребуются SSH-ключи. Если у вас уже есть сгенерированные SSH-ключи, вы можете пропустить этот шаг.

Как сгенерировать пару ключей SSH
Linux/macOS
Windows 10/11
Windows 7/8
  1. Откройте терминал.

  2. Создайте новый ключ с помощью команды ssh-keygen:

    ssh-keygen -t ed25519 -C "<опциональный_комментарий>"
    

    Вы можете передать в параметре -C пустую строку, чтобы не добавлять комментарий, или не указывать параметр -C вообще — в таком случае будет добавлен комментарий по умолчанию.

    После выполнения команды вам будет предложено указать имя и путь к файлам с ключами, а также ввести пароль для закрытого ключа. Если задать только имя, пара ключей будет создана в текущей директории. Открытый ключ будет сохранен в файле с расширением .pub, закрытый ключ — в файле без расширения.

    По умолчанию команда предлагает сохранить ключ под именем id_ed25519 в директории /home/<имя_пользователя>/.ssh. Если в этой директории уже есть SSH-ключ с именем id_ed25519, вы можете случайно перезаписать его и потерять доступ к ресурсам, в которых он используется. Поэтому рекомендуется использовать уникальные имена для всех SSH-ключей.

Если у вас еще не установлен OpenSSH, установите его по инструкции.

  1. Запустите cmd.exe или powershell.exe (предварительно обновите PowerShell).

  2. Создайте новый ключ с помощью команды ssh-keygen:

    ssh-keygen -t ed25519 -C "<опциональный_комментарий>"
    

    Вы можете передать в параметре -C пустую строку, чтобы не добавлять комментарий, или не указывать параметр -C вообще — в таком случае будет добавлен комментарий по умолчанию.

    После выполнения команды вам будет предложено указать имя и путь к файлам с ключами, а также ввести пароль для закрытого ключа. Если задать только имя, пара ключей будет создана в текущей директории. Открытый ключ будет сохранен в файле с расширением .pub, закрытый ключ — в файле без расширения.

    По умолчанию команда предлагает сохранить ключ под именем id_ed25519 в папку C:\Users\<имя_пользователя>/.ssh. Если в этой директории уже есть SSH-ключ с именем id_ed25519, вы можете случайно перезаписать его и потерять доступ к ресурсам, в которых он используется. Поэтому рекомендуется использовать уникальные имена для всех SSH-ключей.

Создайте ключи с помощью приложения PuTTY:

  1. Скачайте и установите PuTTY.

  2. Добавьте папку с PuTTY в переменную PATH:

    1. Нажмите кнопку Пуск и в строке поиска Windows введите Изменение системных переменных среды.
    2. Справа снизу нажмите кнопку Переменные среды....
    3. В открывшемся окне найдите параметр PATH и нажмите Изменить.
    4. Добавьте путь к папке в список.
    5. Нажмите кнопку ОК.
  3. Запустите приложение PuTTYgen.

  4. В качестве типа генерируемой пары выберите EdDSA. Нажмите Generate и поводите курсором в поле выше до тех пор, пока не закончится создание ключа.

    ssh_generate_key

  5. В поле Key passphrase введите надежный пароль. Повторно введите его в поле ниже.

  6. Нажмите кнопку Save private key и сохраните закрытый ключ. Никому не сообщайте ключевую фразу от него.

  7. Нажмите кнопку Save public key и сохраните открытый ключ в файле <имя_ключа>.pub.

Важно

Надежно сохраните закрытый ключ: без него подключиться к ВМ будет невозможно.

Настройте DataSphereНастройте DataSphere

Чтобы работать с кластерами Yandex Data Processing в DataSphere, создайте и настройте проект.

Создайте проектСоздайте проект

  1. Откройте главную страницу DataSphere.
  2. На панели слева выберите Сообщества.
  3. Выберите сообщество, в котором вы хотите создать проект.
  4. На странице сообщества нажмите кнопку Создать проект.
  5. В открывшемся окне укажите имя и (опционально) описание проекта.
  6. Нажмите кнопку Создать.

Измените настройки проектаИзмените настройки проекта

  1. Перейдите на вкладку Настройки.

  2. В блоке Расширенные настройки нажмите кнопку Редактировать.

  3. Укажите параметры:

    • Каталог по умолчанию — data-folder.

    • Сервисный аккаунт — sa-for-data-proc.

    • Подсеть — подсеть зоны доступности ru-central1-a в каталоге data-folder.

      Примечание

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

    • Группу безопасности, если они используются в вашей организации.

  4. Нажмите Сохранить.

Создайте бакетСоздайте бакет

Консоль управления
  1. В консоли управления выберите каталог, в котором хотите создать бакет.
  2. В списке сервисов выберите Object Storage.
  3. Нажмите кнопку Создать бакет.
  4. В поле Имя укажите имя бакета.
  5. В полях Доступ на чтение объектов, Доступ к списку объектов и Доступ на чтение настроек выберите Ограниченный.
  6. Нажмите кнопку Создать бакет.

Создайте кластер Yandex Data ProcessingСоздайте кластер Yandex Data Processing

Перед созданием кластера убедитесь, что в вашем облаке имеется достаточный суммарный объем SSD-дисков (по умолчанию для нового облака выделяется 200 ГБ).

Посмотреть имеющиеся у вас ресурсы можно в консоли управления в разделе Квоты.

Консоль управления
  1. В консоли управления выберите каталог, в котором нужно создать кластер.

  2. Нажмите Создать ресурс и выберите Кластер Yandex Data Processing в выпадающем списке.

  3. Введите имя кластера в поле Имя кластера. Имя кластера должно быть уникальным в рамках каталога.

  4. В поле Окружение выберите PRODUCTION.

  5. В поле Версия выберите 2.0.

  6. В поле Сервисы выберите: LIVY, SPARK, YARN и HDFS.

  7. Вставьте в поле SSH-ключ публичную часть вашего SSH-ключа.

  8. В поле Сервисный аккаунт выберите sa-for-data-proc.

  9. В поле Зона доступности выберите ru-central1-a.

  10. При необходимости в поле Свойства задайте свойства Hadoop и его компонентов, например:

    hdfs:dfs.replication : 2
    hdfs:dfs.blocksize : 1073741824
    spark:spark.driver.cores : 1
    
    Доступные свойства в официальной документации компонентов
    • Flume 1.8.0
    • Hadoop
    • HBASE
    • HDFS
    • HIVE
    • MapReduce
    • Spark
    • SQOOP
    • Tez 0.9.1
    • YARN
    • Zeppelin 0.7.3
    • ZooKeeper 3.4.6
  11. В поле Имя бакета выберите созданный бакет.

  12. Выберите сеть для кластера.

  13. Включите опцию UI Proxy, чтобы получить доступ к веб-интерфейсам компонентов Yandex Data Processing.

  14. Настройте подкластеры: не больше одного главного подкластера с управляющим хостом (обозначается как Мастер) и подкластеры для хранения данных или вычислений.

    Примечание

    Для проведения вычислений на кластерах у вас должен быть хотя бы один подкластер типа Compute или Data.

    Роли подкластеров (Compute и Data) различаются тем, что на Data-подкластерах можно разворачивать компоненты для хранения данных, а на Compute — компоненты обработки данных. Хранилище на подкластере Compute предназначено только для временного хранения обрабатываемых файлов.

  15. Для каждого подкластера можно настроить:

    • Количество хостов.
    • Класс хостов — платформа и вычислительные ресурсы, доступные хосту.
    • Размер и тип хранилища.
    • Подсеть сети, в которой расположен кластер.
  16. Для Compute-подкластеров можно задать параметры автоматического масштабирования.

  17. После настройки всех подкластеров нажмите Создать кластер.

Yandex Data Processing запустит операцию создания кластера. После того как кластер перейдет в статус Running, вы можете подключиться к любому активному подкластеру с помощью указанного SSH-ключа.

Созданный кластер Yandex Data Processing появится в проекте DataSphere в разделе Ресурсы проекта ⟶ Yandex Data Processing ⟶ Доступные кластеры.

Запустите вычисления на кластереЗапустите вычисления на кластере

  1. Откройте проект DataSphere:

    1. Выберите нужный проект в своем сообществе или на главной странице DataSphere во вкладке Недавние проекты.

    2. Нажмите кнопку Открыть проект в JupyterLab и дождитесь окончания загрузки.
    3. Откройте вкладку с ноутбуком.
  2. В ячейку вставьте код для вычисления, например:

    #!spark --cluster <имя_кластера>
    import random
    
    def inside(p):
        x, y = random.random(), random.random()
        return x*x + y*y < 1
    
    NUM_SAMPLES = 1_000_000
    
    count = sc.parallelize(range(0, NUM_SAMPLES)) \
        .filter(inside).count()
    print("Pi is roughly %f" % (4.0 * count / NUM_SAMPLES))
    

    Где #!spark --cluster <имя_кластера> — обязательная системная команда для запуска вычислений на кластере.

    Дождитесь запуска вычисления. Под ячейкой в процессе вычисления будут отображаться логи.

  3. Запишите данные в S3, указав имя бакета:

    #!spark 
    data = [[1, "tiger"], [2, "lion"], [3, "snow leopard"]]
    df = spark.createDataFrame(df, schema="id LONG, name STRING")
    df.repartition(1).write.option("header", True).csv("s3://<имя_бакета>/")
    
  4. Запустите ячейки, выбрав в меню Run ⟶ Run Selected Cells (также можно использовать сочетание клавиш Shift + Enter).

После этого файл появится в бакете. Чтобы просматривать содержимое бакета в интерфейсе JupyterLab, создайте и активируйте в проекте коннектор S3.

Примечание

Чтобы получить из кластера Yandex Data Processing данные больше 100 МБ, используйте коннектор S3.

Подробнее о запуске вычислений на кластерах Yandex Data Processing в DataSphere см. в концепции.

Удалите созданные ресурсыУдалите созданные ресурсы

Важно

Используя кластер, развернутый в сервисе Yandex Data Processing, вы управляете его жизненным циклом самостоятельно. Кластер будет работать и тарифицироваться, пока вы его не выключите.

Некоторые ресурсы платные. Чтобы за них не списывалась плата, удалите ресурсы, которые вы больше не будете использовать:

  • объекты из бакета;
  • бакет;
  • кластер;
  • проект;
  • подсеть;
  • таблицу маршрутизации;
  • NAT-шлюз;
  • сеть;
  • сервисный аккаунт.

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

Предыдущая
Импорт данных из кластера Managed Service for PostgreSQL с помощью Sqoop
Следующая
Работа с топиками Apache Kafka® с помощью PySpark-заданий
Проект Яндекса
© 2025 ООО «Яндекс.Облако»