namenoderpcaddress не указан

Я пытаюсь эту команду на моем кластере hadoop (Cloudera 5.4.1)

curl -i http://webhdfs:50075/webhdfs/v1/user/admin/test/test.txt?user.name=admin&op=OPEN&namenoderpcaddress=namenode:8022; echo

Здесь я подтвердил, что webhdfs, имена компьютеров namenode верны, а порты 50075 и 8022 верны.

Но я получаю ошибку

Cache-Control: no-cache
Expires: Tue, 24 Nov 2015 15:49:42 GMT
Date: Tue, 24 Nov 2015 15:49:42 GMT
Pragma: no-cache
Expires: Tue, 24 Nov 2015 15:49:42 GMT
Date: Tue, 24 Nov 2015 15:49:42 GMT
Pragma: no-cache
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(6.1.26.cloudera.4)

{"RemoteException":{"exception":"IllegalArgumentException","javaClassName":
"java.lang.IllegalArgumentException","message":"namenoderpcaddress is not specified."}}

1 ответ

Решение

Я был в состоянии решить проблему. при доступе к webhdfs URL должен указывать на имя узла. Таким образом, вместо того, чтобы сказать датодану:50075, вы должны сказать наменаме:50070

поэтому я изменил свой URL на

curl -i http://namenode:50070/webhdfs/v1/user/admin/test/test.txt?op=GETFILESTATUS; echo

как я нашел "50070"? в вашем менеджере cloudera найдите "NameNode Web UI Port"

Другие вопросы по тегам