Spark对接ranger

耀灵2年前技术文章1863

1、包如图所示

https://dtstack-download.oss-cn-hangzhou.aliyuncs.com/insight/insight-4em/release/hadoop/spark/2.4.8_ranger2.2/Spark_2.4.8-dt_centos7_x86_64.tar

1.png

2、修改配置文件

[root@cdh01 conf]# vim ranger-spark-security.xml 
<configuration>

    <property>
        <name>ranger.plugin.spark.policy.rest.url</name>
        <value>http://172.16.106.151:6080</value>
    </property>

    <property>
        <name>ranger.plugin.spark.service.name</name>
        <value>hive_pro</value>   //这里定义名称要跟ranger页面对接服务名称要对应
    </property>

    <property>
        <name>ranger.plugin.spark.policy.cache.dir</name>
        <value>/etc/ranger/spark/policycache</value>
    </property>

    <property>
        <name>ranger.plugin.spark.policy.pollIntervalMs</name>
        <value>5000</value>
    </property>

    <property>
        <name>ranger.plugin.spark.policy.source.impl</name>
        <value>org.apache.ranger.admin.client.RangerAdminRESTClient</value>
    </property>

</configuration>


ranger-spark-audit.xml

[root@cdh01 conf]# vim ranger-spark-audit.xml 
<configuration>

    <property>
        <name>xasecure.audit.is.enabled</name>
        <value>true</value>
    </property>

    <property>
        <name>xasecure.audit.destination.db</name>
        <value>false</value>
    </property>

    <property>
        <name>xasecure.audit.destination.db.jdbc.driver</name>
        <value>com.mysql.jdbc.Driver</value>
    </property>

    <property>
        <name>xasecure.audit.destination.db.jdbc.url</name>
        <value>jdbc:mysql://172.16.106.151:3306/ranger</value>
    </property>

    <property>
        <name>xasecure.audit.destination.db.password</name>
        <value>123456</value>
    </property>

    <property>
        <name>xasecure.audit.destination.db.user</name>
        <value>ranger</value>
    </property>

</configuration>


spark-defaults.conf

[root@cdh01 conf]# vim spark-defaults.conf
spark.eventLog.enabled           false
spark.scheduler.mode             FAIR
spark.scheduler.allocation.file  /opt/dtstack/spark/spark_pkg/conf/fairscheduler.xml
#spark.shuffle.service.enabled true
export SPARK_LOCAL_DIRS=/data/spark_tmp/data



# 事件日志
spark.eventLog.enabled=true
spark.eventLog.compress=true

# 保存在hdfs上
spark.eventLog.dir=hdfs://nameservice1/tmp/spark-yarn-logs
spark.history.fs.logDirectory=hdfs://nameservice1/tmp/spark-yarn-logs
#spark.yarn.historyServer.address={{.historyserver_ip}}:18080

# 保存在本地
# spark.eventLog.dir=file://usr/local/hadoop-2.7.3/logs/
# spark.history.fs.logDirectory=file://usr/local/hadoop-2.7.3/logs/

#开启日志定时清除
spark.history.fs.cleaner.enabled=true
#日志有效时间
spark.history.fs.cleaner.maxAge={{.history_cleaner_maxAge}}
#日志检查时间
spark.history.fs.cleaner.interval={{.history_cleaner_interval}}
# 在配置文件底部添加下面的配置:
# # hive metastore的版本设置为 2.1.1
spark.sql.hive.metastore.version=2.1.1
#
# # 引用 hive2.1.1 相关的jar包
spark.sql.hive.metastore.jars=/opt/cloudera/parcels/CDH/lib/hive/lib/*
##开启ranger权限校验
spark.sql.extensions=org.apache.spark.ranger.security.api.RangerSparkSQLExtension


3、spark sql插件验证

spark和hive共用权限,配置上面是hive的jdbc,故前提是先要部署hiveserver2.

2.png


3.png


4.png









相关文章

grafana常见问题处理

grafana常见问题处理

发现了一个不错的grafana模版,下载安装后很多问题,需要处理后才能使用。第一个问题就是显示插件不存在。插件未找到问题处理安装插件并重启既然未找到插件,那我们肯定要安装下插件,使用grafana-c...

pg_restore

逻辑备份恢复PG提供了pg_restore的命令可以为通过pg_dump转储的数据进行逻辑恢复。对于SQL脚本可通过psql进行恢复语法pg_restore [connection_option] [...

k8s集群内的DNS原理与配置

背景:最近公司有个需求,要在POD应用容器里面能够访问到一些外部域名,这些域名都在一台自建的DNS服务器上做了解析绑定。如果直接在Pod容器里的/etc/hosts文件中设置域名解析,或修改/etc/...

Linux 文件查找

1、locate 命令locate 命令搜索不经常改变的文件如配置文件等,非实时查找(数据库查找),查询系统上预建的文件索引数据库(/var/lib/mlocate/mlocate.db)。locat...

Redis 持久化机制 AOF

Redis 持久化机制 AOF

前言Redis 有两种持久化机制,分别是 RDB 与 AOF 本篇文章将介绍 AOF 的执行过程与应用。1. AOF 简介AOF (Append only file) 持久化是以独立日志的方式记录每次...

MySQL 官方高可用方案:Innodb ReplicaSet

MySQL 官方高可用方案:Innodb ReplicaSet

说明MySQL Innodb ReplicaSet 是 MySQL 团队在 2020 年推出的一款产品,用来帮助用户快速部署和管理主从复制,在数据库层仍然使用的是主从复制技术。ReplicaSet 主...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。