python webhdfs kerberos不工作

时间:2017-12-16 01:41:15

标签: python webhdfs

我需要帮助,我正在使用webhdfs(也使用这个python代码来调用hadoop命令https://gist.github.com/drelu/1529478)。对于我的系统,它使用KDC进行了kerberized。我能够做卷曲,但我不知道如何在上面的python代码中使用这个curl命令。感谢您的帮助。我的curl命令如下:

curl --cacert /opt/cloudera/security/CAcerts/rootc.cer --negotiate -u https://localhost:140000/webhdfs/v1/?op=liststatus

由于

1 个答案:

答案 0 :(得分:0)

您可以通过以下两种方式进行操作

  
      
  1. 使用pywebhdfs python客户端https://github.com/pywebhdfs/pywebhdfs/issues/16#issuecomment-243776503
  2.   
  3. 没有pywebhdfs直接调用webhdfs REST调用
      示例代码:https://plenium.wordpress.com/2018/07/26/run-a-python-program-to-access-hadoop-with-kerberos-enabled/
  4.   

在两种方法上,都需要使用requests_kerberos模块https://github.com/requests/requests-kerberos#requests-kerberosgssapi-authentication-library

创建身份验证标头
  
      可以使用
  1. hdfscli python模块   https://hdfscli.readthedocs.io/en/latest/
  2.   

在所有情况下,kinit需要手动完成(您可以使用一些python shell执行程序模块,例如子进程,命令..也可以使它们自动化)