Я использовал Oozie 4.2.0 (hdp2.6) и сейчас пробую Oozie 4.3.1 (hdp 3.0).
Одним из основных отличий является то, что в прошлом одно действие java могло считывать свой jar из локальной файловой системы, но, похоже, это больше невозможно. Действие Java является основным:
<java xmlns="uri:oozie:workflow:0.5">
<job-tracker>http://something.local:8050</job-tracker>
<name-node>hdfs://HdfsNameService</name-node>
<main-class>io.JsonPoster</main-class>
<file>file:///opt/jsonposter/jsonposter.jar</file>
</java>
Ошибка, которую я получаю, совершенно ясна:
org.apache.oozie.action.ActionExecutorException: UnsupportedOperationException: Accessing local file system is not allowed
Я знаю, что могу поставить jar на hdfs, я сейчас пытаюсь этого избежать (потому что раньше он работал, и все наше развертывание выполнялось через rpm). Я готов взять на себя ответственность за синхронизацию всех банок со всеми датодами.
Я уже установил oozie.service.HadoopAccessorService.supported.filesystems
на *
, без эффекта.
Есть ли способ сказать Узи, что да, я рад, что он прочитал местную ФС?