如何使用snakebite python客户端访问kerberized集群

时间:2017-05-30 17:09:14

标签: python snakebite

我一直在努力将如何将必要的参数传递给snakebite实用程序,以便能够访问kerberized集群。我已尝试在/ usr / local / etc / hadoop路径中设置必要的conf目录,以及使用kinit初始化和获取票证。

非常感谢在这方面的任何帮助或工作实例。

注意:我已通过使用'hadoop'CLI从同一台计算机访问群集来测试环境设置是否正确。

2 个答案:

答案 0 :(得分:1)

您必须使用适当的keytab初始化即可。将自动使用主体名称获取结果。

答案 1 :(得分:0)

我建议您使用autoconfigure类来实现此目的:

from snakebite.client import AutoConfigClient
client = AutoConfigClient()

它支持HA,并通过HADOOP_HOME环境变量自动配置。

请确保您还拥有有效的密钥表

环境的klist输出如下所示(那里只有一个条目)

Credentials cache: API:1350E541-0CCD-46B9-938E-2C1C8E03A909
    Principal: saurabh@HADOOP_DEV.MY-COMPANY.COM

  Issued                Expires               Principal
May 31 16:45:30 2017  Jun  1 02:45:30 2017  krbtgt/HADOOP_DEV.MY-COMPANY.COM@HADOOP_DEV.MY-COMPANY.COM

这使我能够成功列出HDFS上的目录

hadoop fs -ls /user/saurabh