Имеем конвейер в NiFi вида listHDFS->moveHDFS
, пытаясь запустить конвейер, мы видим журнал ошибок
13:29:21 HSTDEBUG01631000-d439-1c41-9715-e0601d3b971c
ListHDFS[id=01631000-d439-1c41-9715-e0601d3b971c] Returning CLUSTER State: StandardStateMap[version=43, values={emitted.timestamp=1525468790000, listing.timestamp=1525468790000}]
13:29:21 HSTDEBUG01631000-d439-1c41-9715-e0601d3b971c
ListHDFS[id=01631000-d439-1c41-9715-e0601d3b971c] Found new-style state stored, latesting timestamp emitted = 1525468790000, latest listed = 1525468790000
13:29:21 HSTDEBUG01631000-d439-1c41-9715-e0601d3b971c
ListHDFS[id=01631000-d439-1c41-9715-e0601d3b971c] Fetching listing for /hdfs/path/to/dir
13:29:21 HSTERROR01631000-d439-1c41-9715-e0601d3b971c
ListHDFS[id=01631000-d439-1c41-9715-e0601d3b971c] Failed to perform listing of HDFS due to File /hdfs/path/to/dir does not exist: java.io.FileNotFoundException: File /hdfs/path/to/dir does not exist
Изменение пути listHDFS на / tmp, кажется, работает нормально, что заставляет меня думать, что проблема связана с моими разрешениями на каталог, который я пытаюсь перечислить. Однако изменение пользователя NiFi на пользователя, который может получить доступ к этому каталогу (например, hadoop fs -ls /hdfs/path/to/dir
), установив значение bootstrap.properties
run.as=myuser
и перезапуск (см. https://nifi.apache.org/docs/nifi-docs/html/administration-guide.html#bootstrap_properties), по-прежнему создает ту же проблему для каталог. Используемая литеральная строка dir. не работает:
"/ ETL / ucera_internal / datagov_example / сырых употребляют слежения / версия-1 / употребляет"
Кто-нибудь знает, что здесь происходит? Спасибо.
** Примечание. К кластеру hadoop, к которому я обращаюсь, не включен Kerberos (это защищенный MapR
кластер hadoop).
Обновление : Похоже, что реализация mapr
hadoop настолько отличается, что требует специальных шагов для того, чтобы NiFi правильно с ней работал (см. https://community.mapr.com/thread/10484 и http://hariology.com/integrating-mapr-fs-and-apache-nifi/). Возможно, какое-то время не будет возможности поработать над этой проблемой, чтобы проверить, работает ли она по-прежнему (поскольку некоторые требования изменились), поэтому я дам ссылку здесь для тех, у кого эта проблема может возникнуть в это время.