Запустите Docker контейнер через Oozie - PullRequest
4 голосов
/ 30 сентября 2019

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

В настоящий момент я создал виртуальную среду Python (с использованием venv) на узле моего кластера. (состоящий из 11 узлов). Через Oozie я увидел, что можно запустить скрипт, используя действие SSH, определяющее узел, содержащий виртуальную среду. В качестве альтернативы можно использовать действие Shell для запуска сценария python, но для этого необходимо создать виртуальную среду с такими же зависимостями в плане библиотек на узле, где будет выполняться оболочка (любой из узлов кластера).

Я хотел бы избежать совместного использования ключей или настройки всех узлов кластера, чтобы сделать это возможным, и просматривая документы, которые я нашел в этом разделе, где говорится о запуске приложений с использованием контейнеров Docker, но в версии Hadoop моего кластера. эта функция является экспериментальной и неполной (Hadoop 3.0.0). Я полагаю, что если вы сможете запускать контейнеры Docker из оболочки, вы сможете запускать их из Oozie.

Итак, мой вопрос: кто-нибудь пытался это сделать? Это трюк использовать докер таким образом?

Я сталкивался с этим вопросом, но на сегодняшний день 2019/09/30 конкретных ответов нет.


ОБНОВЛЕНИЕ: Я попытался сделать это, и это работает (вы можете найти больше информации в моем ответе на этот вопрос). Мне все еще интересно, правильно ли это сделать.

...