Apache Spark on Kubernetes — deploy process. Как деплоите господа?

Здравствуйте, в последних версиях Apache Spark и Kubernetes появилась возможность деплоить Spark приложения с помощью sprak-submit на Kubernetes-master. Поcему у меня вопрос.

Как деплоите, господа? Как выглядит процесс деплоймента у вас, мысли идеи?

Пока что я вижу это сл образом. Например.
Jenkins:
1. Билдит и собирает Spark проект.
2. Создаёт docker image со Spark Shell внутри, засовывает наше приложение в контейнер.
3. Push image into local image registry.
4. kubectl - redeploy Spark deployment. Соответственно на этом шаге происходит spark-submit из контейнера к Kubernetes master-у

Все шаги делает Jenkins который тоже в кластере. Конечно же, есть много тонкостей. Но если в общем, то как-то так..

Буду благодарен за любые мысли, комментарии, подсказки!
  • Вопрос задан
  • 220 просмотров
Пригласить эксперта
Ответы на вопрос 2
angrySCV
@angrySCV
machine learning, programming, startuping
fabric8.io
и никаких забот по выстраиванию пайплайнов
Ответ написан
Комментировать
@sergeysamsonov
Добрый день!

Для управления Spark-приложениями на K8s использовали Kubernetes Operator.

Из плюсов - описание конфигурации приложения в YAML, возможность деплоя средствами Helm.

Если кратко, наш пайплайн выглядел следующим образом:

1) сборка приложения;
2) сборка и публикация Docker-образа с JAR-файлом Spark-приложения;
3) подготовка спецификации CRD SparkApplication;
4) деплой CRD SparkApplication средствами Helm.

Более подробно о нашем опыте можете почитать в статье.

Готов ответить на интересующие вопросы.

Также можете писать в личку Telegram @samsonov90
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы