Ranger-Sqoop2插件安装,基于Ranger版本1.0.0,支持Sqoop2版本1.99.7。

1.获取安装包

scp root@10.43.159.11:/home/compile/ranger/target/ranger-1.0.0-SNAPSHOT-sqoop-plugin.tar.gz .

2.解压

tar -zxvf ranger-1.0.0-SNAPSHOT-sqoop-plugin.tar.gz

3.进入ranger-1.0.0-SNAPSHOT-sqoop-plugin,修改安装配置文件install.properties

主要修改如下配置项:

#拉取Ranger策略的地址和服务名称
POLICY_MGR_URL=http://10.43.159.11:6080
REPOSITORY_NAME=sqoopdev
#Kylin组件安装的目录
COMPONENT_INSTALL_DIR_NAME=/home/sqoop/sqoop-1.99.7-bin-hadoop200 #审计日志保存地址
XAAUDIT.SOLR.ENABLE=true
XAAUDIT.SOLR.URL=http://10.43.159.9:8983/solr/ranger_audits #Sqoop组件安装的用户和用户组
CUSTOM_USER=sqoop
CUSTOM_GROUP=hadoop

4.使用root用户执行插件安装脚本

./enable-sqoop-plugin.sh

5.重启sqoop2组件

sqoop2-sever stop

sqoop2-sever start

6.验证策略生效

重启后可以在sqoop的服务器上面看到如下文件:

/etc/ranger/sqoopdev/policycache/sqoop_sqoopdev.json

在Ranger Web页面的Audit下面的Plugins查看插件状态。

Ranger页面创建sqoop服务:

Service Name=sqoopdev

Username=sqoop

Sqoop URL=http://10.43.159.11:12000

用户名最好填写安装用户的名字,此用户默认对sqoop的所有资源有访问权限。

点击TestConnection成功后,保存即可。

sqoopdev需要和上面插件安装的REPOSITORY_NAME名称一致,

Sqoop集成ranger插件,查看conf/sqoop.properties,应该有如下配置:

org.apache.sqoop.security.authorization.validator=org.apache.ranger.authorization.sqoop.authorizer.RangerSqoopAuthorizer

Sqoop插件集成开启Ranger,还将conf目录加入到sqoop启动的classpath中:

在bin/sqoop.sh脚本中的

function sqoop_server_classpath_set里面

新增如下配置:

CLASSPATH="$CLASSPATH":"/home/sqoop/sqoop2/sqoop-1.99.7-bin-hadoop200/conf"

7.开启Kerberos之后的插件问题

7.1

Sqoop2开启Kerberos安全模式后,Ranger Sqoop2插件拉取策略会失败:

2018-09-05 09:34:58,942 [http-bio-6080-exec-6] ERROR org.apache.ranger.rest.ServiceREST (ServiceREST.java:2784) - getSecureServicePoliciesIfUpdated(sqoopdev, 4) failed as User doesn't have permission to download Policy

2018-09-05 09:34:58,947 [http-bio-6080-exec-6] INFO org.apache.ranger.common.RESTErrorUtil (RESTErrorUtil.java:345) - Request failed. loginId=sqoop, logMessage=User doesn't have permission to download policy

解决方法:

在Ranger Admin的Web页面修改sqoopdev服务,

在Add New Configurations添加如下配置项:

policy.download.auth.users=sqoop

sqoop用户为策略拉取用户,一般是Sqoop2组件用了启动Kerberos的用户。

7.2

在已经使用了Ranger权限控制之后,再来开启Kerberos,

需要重新创建sqoopdev服务,否则使用原来的服务TestConnction失败,

这是由于开启Kerberos之后,RangerAdmin使用rangerlookup/hostname@ZDH.COM去访问服务,

在新建服务的时候会把rangerlookup加入到默认创建出来的策略中,作为超级用户使用。

8.参考文档:

https://cwiki.apache.org/confluence/display/RANGER/Sqoop2+Plugin

Ranger-Sqoop2插件安装的更多相关文章

  1. Ranger-Kafka插件安装

    Ranger-Kafka插件安装, 使用Ranger0.7.0版本,集成Kafka插件到Kafka集群, Kafka Plugin需要安装到所有的Kafka的集群节点上面. 1.登陆Kafka的安装用 ...

  2. Ranger-Kylin插件安装

    Ranger-Kylin插件安装, 从Ranger1.1.0版本开始支持Ranger Kylin插件, 从Kylin2.3.0版本开始支持Ranger Kylin插件的权限控制. 1.获取安装包 sc ...

  3. [Android Studio]SQLScout插件安装破解

    以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5972138.html [Android Studio]SQLS ...

  4. elasticsearch5.0及head插件安装

        这个瞎jb整了半天.准备把es2.4升级到5.0,结果老报错 环境:centos6.5+es2.4是ok的换成es5就出毛病.也不能说啥 ,我用的是最新的 源码解压启动时候报错,具体错误for ...

  5. subtext3插件安装

    1.启用Package Control,利用它进行插件安装: 启用方法:菜单栏-view-show console 在弹出的输入框内,输入以下代码,按回车,稍后会出现package control安装 ...

  6. webapp应用---cordova.js 3.7.0插件安装总结

    今天是2014年的最后一天,年终总结什么的就不写了.记录一下今天的工作内容.如果不知道phoneGap,那么就不需要往下看了,phoneGap现在已经叫cordova了,叫什么不重要,重要的是它对we ...

  7. 分布式搜索引擎ElasticSearch+Kibana (Marvel插件安装详解)

    在安装插件的过程中,尤其是安装Marvel插件遇到了很多问题,要下载license.Marvel-agent,又要下载安装Kibana 版本需求 Java 7 or later Elasticsear ...

  8. Sublime text3 常用插件 安装

    1 安装插件前的准备工作 首先确保你的Sublime Text3编辑器为官方版(非破解版),建议下载官网的便携版本(好处多多). 然后安装插件管理工具(Package Control) 1.1 打开S ...

  9. HttpFox插件安装和打开教程

    HttpFox插件安装教程 1.打开火狐浏览器,选择右上角的打开菜单 2.选择附加组件,在获取附件组件栏中搜索HttpFox插件 3.找到HttpFox插件选择安装 4.安装完成后选择左边的扩展栏确认 ...

随机推荐

  1. 为Python的web框架编写前端模版的教程

    虽然我们跑通了一个最简单的MVC,但是页面效果肯定不会让人满意. 对于复杂的HTML前端页面来说,我们需要一套基础的CSS框架来完成页面布局和基本样式.另外,jQuery作为操作DOM的JavaScr ...

  2. 【Python】【Module】re

    python中re模块提供了正则表达式相关操作 字符: . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配 ...

  3. 通过jquery实现form表单提交后不跳转页面,保留当前页面

    jquery代码: <script type="text/javascript" src="../js/jquery-1.8.3.min.js">& ...

  4. SQL 基础知识终极指南

    什么是数据库? 数据库是以电子方式从系统中存储和检索的大量数据集合. 存储在数据库中的结构化数据被处理.操纵.控制和更新以执行各种操作. 行业中使用的一些流行数据库是 Oracle.MySQL.Pos ...

  5. ABP VNext框架基础知识介绍(1)--框架基础类继承关系

    在我较早的时候,就开始研究和介绍ABP框架,ABP框架相对一些其他的框架,它整合了很多.net core的新技术和相关应用场景,虽然最早开始ABP框架是基于.net framework,后来也全部转向 ...

  6. Redis的一致性哈希算法

    一.节点取余 根据redis的键或者ID,再根据节点数量进行取余. key:value如下 name:1 zhangsna:18:北京 对name:1 进行hash操作,得出来得值是242342345 ...

  7. Jenkins pipeline声明式语法

    目录 一.最简结构 二.简单例子 一.最简结构 pipeline {     agent any     stages {         stage('pull') {             st ...

  8. 在React中使用 react-router-dom 编程式路由导航的正确姿势【含V5.x、V6.x】

    ## react-router-dom 编程式路由导航 (v5) ###### 1.push跳转+携带params参数 ```jsx props.history.push(`/b/child1/${i ...

  9. navicat模型分享方法

    一. 查看模型保存路径选中模型如:<app-订单模型>,点击右键,对象信息,可以看到文件位置:C:\Users\Administrator\Documents\Navicat\Premiu ...

  10. Linux使用docker安装Nginx

    拉取镜像 docker pull nginx 启动镜像 docker run -d -p 8000:8000 -p 443:443 --name nginx -v /data/nginx/www:/u ...