2017-02-15 19 views
1

Я хотел перенести файлы из незащищенного кластера HDFS в кластеризованный кластер. Я использую distcp для передачи файлов. Я использовал следующую команду.Перенос файлов из необеспеченных hdfs в защищенный hdfs кластер

hadoop distcp -D ipc.client.fallback-to-simple-auth-allowed=true hdfs://<ip>:8020/<sourcedir> hdfs://<ip>:8020/<destinationdir> 

Я получил следующую ошибку после того, как выполнил указанную выше команду в кластеризованном кластере.

java.io.EOFException: End of File Exception between local host is: "<xxx>"; destination host is: "<yyy>; : java.io.EOFException; For more details see: http://wiki.apache.org/hadoop/EOFException 
+1

Вы можете попробовать используя 'webhdfs: /' вместо 'hdfs: /'? –

+1

для обоих кластеров uris '? –

+1

Пробовал с webhdfs. Но получение ниже исключения '17/02/15 11:42:17 ERROR tools.DistCp: Недопустимые аргументы: java.io.IOException: Неожиданный ответ HTTP: code = 404! = 200, op = GETDELEGATIONTOKEN, message = Not Found ' –

ответ

2

это ошибка, потому что:

кластер блокируется на RPC связи, в таких случаях, webhdfs протокол может быть использован, так что выше distcp можно переписать в виде

hadoop distcp -D ipc.client.fallback-to-simple-auth-allowed=true hdfs://xxx:8020/src_path webhdfs://yyy:50070/target_path 

это очень хорошо blog post for distcp

 Смежные вопросы

  • Нет связанных вопросов^_^