spark集成kerberos
1、生成票据
1.1、创建认证用户
登陆到kdc服务器,使用root或者可以使用root权限的普通用户操作:
# kadmin.local -q “addprinc -randkey spark/yjt”
1.2、生成密钥文件
生成spark密钥文件
# kadmin.local -q “xst -norankey -k /etc/spark.keytab spark/yjt”
拷贝sparkkeytab到所有的spark集群节点的conf目录下
1.3、修改权限
# chmod 404 /data1/hadoop/spark/conf/spark.keytab
# chown hduser:hduser /data1/hadoop/spark/conf/spark.keytab
2、集群内部测试
2.1、获取票据
# klint -it /data1/hadoop/spark/conf/spark.keytab spark/yjt
(1)、本地机器测试
# spark-submit --principal spark/yjt --keytab /data1/hadoop/spark/conf/spark.keytab --class org.apache.spark.examples.SparkPi examples/jars/spark-examples_2.11-2.4.0.jar 10
(2) 、提交到yarn, 模式是client
spark-submit --principal spark/yjt --keytab /data1/hadoop/spark/conf/spark.keytab --class org.apache.spark.examples.SparkPi --master yarn examples/jars/spark-examples_2.11-2.4.0.jar 10
查看8088信息:

(3) 、提交到yarn集群,模式是cluster
# spark-submit --principal spark/yjt --keytab /data1/hadoop/spark/conf/spark.keytab --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode cluster examples/jars/spark-examples_2.11-2.4.0.jar 10
查看8088信息:

3、客户端测试
3.1、hduser用户测试
安装spark或者从集群拷贝一份到客户端
客户端测试用户使用hduser
获取票据
# kinit -kt /data1/hadoop/spark/conf/spark.keytab spark/yjt

(1) 、提交到本地集群
# ./bin/spark-submit --principal spark/yjt --keytab /data1/hadoop/spark/conf/spark.keytab --class org.apache.spark.examples.SparkPi --master spark://192.168.0.230:7077 examples/jars/spark-examples_2.11-2.4.0.jar 10
注意:使用这种方式提交需要在集群里面的hosts文件配置客户端的主机域名映射关系。

(2) 、提交到yarn,模式client
# ./bin/spark-submit --principal spark/yjt --keytab /data1/hadoop/spark/conf/spark.keytab --class org.apache.spark.examples.SparkPi --master yarn examples/jars/spark-examples_2.11-2.4.0.jar 10
注:这种方式也需要在集群内部设置客户端主机名映射关系
(3) 、提交到yarn,模式cluster
# ./bin/spark-submit --principal spark/yjt --keytab /data1/hadoop/spark/conf/spark.keytab --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode cluster examples/jars/spark-examples_2.11-2.4.0.jar 10

3.2、其他用户测试
(1)、创建用户yujt
# useradd -s /bin/bash -m -d /home/yujt -G hduser yujt
# echo “Your Password” | passwd --stdin yujt
(2)、修改spark.keytab权限
# chmod 404 /data1/hadoop/spark/conf/spark.keytab
注: 以上操作root或者sudo,需要root权限
# su - yujt
(3)、修改yujt这个用户的环境变量
修改用户的~/.bashrc文件,添加如下信息:(当然最好是直接修改/etc/profile,这样在创建用户的时候就不需要为每个用户添加环境变量信息)
export JAVA_HOME=/data1/hadoop/jdk
export PATH=${JAVA_HOME}/bin:$PATH
export HADOOP_HOME=/data1/hadoop/hadoop
export PATH=${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$PATH
(4) 、测试本地standlone模式
# ./bin/spark-submit --principal spark/yjt --keytab /data1/hadoop/spark/conf/spark.keytab --class org.apache.spark.examples.SparkPi --master spark://192.168.0.230:7077 examples/jars/spark-examples_2.11-2.4.0.jar 10

如上述,执行成功。
(5) 、测试yarn, 部署模式client
# $ ./bin/spark-submit --principal spark/yjt --keytab /data1/hadoop/spark/conf/spark.keytab --class org.apache.spark.examples.SparkPi --master yarn examples/jars/spark-examples_2.11-2.4.0.jar 10
执行结果如下:

Web界面如下:

(6) 、测试yarn, 部署模式cluster

注:上述在执行任务的时候,我们使用了--principal 和--keytab参数,其实,如果使用kinit -kt /data1/hadoop/spark/conf/spark.keytab spark/yjt获取了票据以后,可以省略这两个参数。
spark集成kerberos的更多相关文章
- Spark:利用Eclipse构建Spark集成开发环境
前一篇文章“Apache Spark学习:将Spark部署到Hadoop 2.2.0上”介绍了如何使用Maven编译生成可直接运行在Hadoop 2.2.0上的Spark jar包,而本文则在此基础上 ...
- spark集成hive遭遇mysql check失败的问题
问题: spark集成hive,启动spark-shell或者spark-sql的时候,报错: INFO MetaStoreDirectSql: MySQL check failed, assumin ...
- Ambari集成Kerberos报错汇总
Ambari集成Kerberos报错汇总 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看报错的配置信息步骤 1>.点击Test Kerberos Client,查看相 ...
- HDP安全之集成kerberos/LDAP、ranger(knox自带LDAP)
----------------------目录导航见左上角------------------------------- 环境 HDP 3.0.1.0 (已有) JDK 1.8.0_91 (已有 ...
- Spark集成
一.Spark 架构与优化器 1.Spark架构 (重点) 2.Spark优化器 二.Spark+SQL的API (重点) 1.DataSet简介 2.DataFrame简介 3.RDD与DF/DS的 ...
- 机器学习 - pycharm, pyspark, spark集成篇
AS WE ALL KNOW,学机器学习的一般都是从python+sklearn开始学,适用于数据量不大的场景(这里就别计较“不大”具体指标是啥了,哈哈) 数据量大了,就需要用到其他技术了,如:spa ...
- 挖坑:hive集成kerberos
集成hive+kerberos前,hadoop已经支持kerberos,所以基础安装略去: https://www.cnblogs.com/garfieldcgf/p/10077331.html 直接 ...
- 机器学习 - 开发环境安装pycharm + pyspark + spark集成篇
AS WE ALL KNOW,学机器学习的一般都是从python+sklearn开始学,适用于数据量不大的场景(这里就别计较“不大”具体指标是啥了,哈哈) 数据量大了,就需要用到其他技术了,如:spa ...
- hive集成kerberos
1.票据的生成 kdc服务器操作,生成用于hive身份验证的principal 1.1.创建principal # kadmin.local -q “addprinc -randkey hive/yj ...
随机推荐
- python预习day1
计算机基础 cpu 大脑 内存 临时记忆 硬盘 永久记忆 输入设备 眼睛 耳朵 输出设备 嘴巴 操作系统 控制计算机硬件工作流程的 应用程序 安装在操作系统之上的软件 python简介 python是 ...
- Mysql把一个表的数据写入另一个表中
一.表结构一样 insert into 表1 select * from 表2 二. 表结构不一样或者取部分列 insert into 表1 (列名1,列名2,列名3) select 列1,列2,列3 ...
- Matlab责任链模式
责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链.这种模式给予请求的类型,对请求的发送者和接收者进行解耦,本人根据https://www.ru ...
- 记录axios在IOS上不能发送的问题
最近 遇到 了axios在IOS上无法发送的问题,测试 了两个 苹果 机,IOS10上不能发送,IOS12可以,百度了下,找到了解决方法.记录下吧 首先引入qs,这个安装axios也已经有了吧:然后在 ...
- Web数据库架构
Web服务器的基本操作如图下图所示: 这个系统由两个对象组成:一个Web浏览器和一个Web服务器.它们之间需要通信连接.Web浏览器向服务器发出请求.服务器返回一个响应.这种架构非常适合服务器发布静态 ...
- meibu ddns update command
http://main.meibu.com/ip/login.asp?name=[USERNAME]&pwd=[PASSWORD]
- 微信小程序转义解析渲染html
今天开发小程序时,想调用商品详情字段,发现大部分是用编辑器编辑的html原生标签,无法在小程序直接使用. 后面自己使用正则和字符串替换,效果也不佳. 最后在网上找到了wx-mina-html-view ...
- Deployment
Deployment RC是kubernetes中的一个核心概念,Deployment 是新一代的RC,除了拥有RC的功能外,还具备一下特性: 支持事件和状态查看:可以查看Deployment升级的状 ...
- Pthon魔术方法(Magic Methods)-bool
Pthon魔术方法(Magic Methods)-bool 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.bool方法 __bool__: 内建函数bool(),或者对象放在逻 ...
- 哈希长度拓展攻击之De1CTF - SSRF Me
题目考查:python代码审计.hash长度拓展攻击 0x01 题目源码: #! /usr/bin/env python #encoding=utf-8 from flask import Flask ...