Python подключиться к Hadoop Kerberos с именем пользователя-паролем - PullRequest
0 голосов
/ 16 октября 2018

Мне нужно подключиться к кластеру Hadoop, который имеет аутентификацию Kerberos с использованием Python 2.7.15.Сначала я подключаюсь к Hadoop Edge Node через SSH:

import paramiko
client = paramiko.SSHClient()
client.load_system_host_keys()
client.set_missing_host_key_policy(paramiko.WarningPolicy)
client.connect("myhost", port=22, username="myusername_1", password="mypwd_1")

Во-вторых, я спрашиваю билет Kerberos.Из-за политики безопасности компании я использую разные учетные данные (здесь «myusername_2» и «mypwd_2»).

kinitcommand = "echo mypwd_2 | kinit myusername_2@MYDOMAIN"
stdin, stdout, stderr = client.exec_command(kinitcommand)

В-третьих, я могу запустить команду как «ls»

lscommand = "hadoop fs -ls"
stdin, stdout, stderr = client.exec_command(lscommand)

Что яищу библиотеку Python, которая позволяет соединение, описанное выше, без использования SSH.Я пробовал hdfs, но класс hdfs.ext.kerberos.KerberosClient не позволяет вводить учетные данные пользователя, , как показывает веб-страница hdfs .Заранее спасибо

...