PySpark+HDFS+Kerberos

软件:Spark - 3.1.1

环境:在windows中基于pycharm进行开发,使用远程Linux的python环境作为pycharm的解释器。

目标:通过pyspark读取开了Kerberos的HDFS集群上的文件。

配置:

  1. 在远程服务器上下载Spark

  1. 将hdfs-site.xml、yarn-site.xml、core-site.xml拷贝到linux服务器的spark/conf目录

  1. 准备好hdfs.keytab,可以通过klist -ket hdfs.keytab查看principal

  1. 编写代码

from pyspark import SparkContext, SparkConf
import os

os.environ['SPARK_HOME'] = '/home/xxx/kdh/spark'
os.environ['PYSPARK_PYTHON'] = '/software/anacondsa3/envs/pyspark_env/bin/python'
os.environ['PYSPARK_DRIVER_PYTHON'] = '/software/anaconda3/envs/pyspark_env/bin/python'

if __name__ == '__main__':
    # 1. 创建sparkcontext对象
    conf = SparkConf().setMaster('local[*]').setAppName('WordCount_hdfs')
    conf.set('spark.kerberos.principal', "xxxxx")
    conf.set('spark.kerberos.keytab', '/xxxx/hdfs.keytab')

    sc = SparkContext(conf=conf)

    # 2. 读取数据
    rdd_init = sc.textFile('hdfs://dm47:8020/tmp/zzdb/words.txt')
    print(rdd_init.collect())
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kangwq2017

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值