ConnectionError(MaxRetryError("HTTPConnectionPool Максимальное количество повторных попыток превышено с использованием pywebhdfs

Привет, я использую pywebhdfs python lib. Я подключаю EMR, позвонив и пытаясь создать файл на HDFS. Я получаю исключение ниже указанного уровня, которое кажется неуместным в отношении того, что я выполняю, поскольку здесь я не нарушаю никаких ограничений соединения это из-за того, как работает webhdfs

from pywebhdfs.webhdfs import PyWebHdfsClient
hdfs = PyWebHdfsClient(host='myhost',port='50070', user_name='hadoop')
my_data = '01010101010101010101010101010101'
my_file = 'user/hadoop/data/myfile.txt'
hdfs.create_file(my_file, my_data)

request.exceptions.ConnectionError: HTTPConnectionPool(host='masterDNS', port=50070): максимальное количество повторных попыток превышено с помощью url: /webhdfs/v1/user/hadoop/data/myfile.txt?op=CREATE&user.name=hadoop (вызвано NewConnectionError(': не удалось установить новое соединение: [Errno 115] Операция сейчас выполняется',))

2 ответа

У меня тоже была эта проблема. Я обнаружил, что почему-то позвонил:

send (self, request, stream = False, timeout = None, verify = True, cert = None, прокси = Нет):

передается тайм-аут 0, и это вызывает отправку, чтобы бросить

MaxRetryError

В итоге, я обнаружил, что если вы просто установите timeout = 1, он работает нормально:

hdfs = PyWebHdfsClient (host = 'yourhost', port = '50070', user_name = 'hdfs', timeout = 1)

Надеюсь, что это работает и для вас.

Пожалуйста, проверьте статус вашего подключения. Выполните команду ниже, чтобы узнать, работает ли порт webhdfs с вашего хоста:

netstat -an | grep 50070 | grep LIST

Пожалуйста, обратите внимание:

  • Если SSL включен, порт будет 50470.
  • hdfs namenode -format не должен запускаться из узла, потому что он форматирует ваш namenode, и вы теряете все.

Форматирование namenode несколько раз решало для меня эту проблему.

hdfs namenode -format

Возможно, служба webhdfs не работает на указанном вами хосте. Вы можете проверить свой кластер, чтобы увидеть, на каком хосте запущена служба webhdfs.

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