尝试使用dask使用以下命令读取kerberized HDFS群集上的镶木地板文件目录:
import hdfs3
hdfs = hdfs3.HDFileSystem(<NAMENODE_FQDN>, port=8020)
返回错误:
ConnectionError: Connection Failed: SIMPLE authentication is not enabled. Available:[TOKEN, KERBEROS]
在集群的终端上,我使用了kinit,可以成功执行hadoop fs命令。显示的错误来自使用HDFileSystem的connect方法,该方法调用libhdfs3,但对我而言,看起来该调用并未尝试使用我的kerberos凭据。
是否存在配置步骤我做错了或应该更改参数?我已经验证我的名字节点和端口是正确的。
答案 0 :(得分:2)
我能够使用以下语法连接到kerberized集群:
import hdfs3
conf={"hadoop.security.authentication": "kerberos"}
hdfs = hdfs3.HDFileSystem(<NAMENODE_FQDN>, port=8020, pars=conf)