Sqoop2开启Kerberos安全模式
Sqoop2开启Kerberos安全模式,
基于版本sqoop-1.99.7,
在已经安装好的sqoop2环境上配置kerberos。
1.安装规划
10.43.159.9 zdh-9
sqoop2krb/zdh1234
10.43.159.11 zdh-11
kerberos server
2.创建keytab
在zdh-11上,登陆root用户在/root/keytabs目录下,
创建sqoop2krb和HTTP的principal,并导出到sqoop.keytab:
kadmin.local
addprinc -randkey HTTP/zdh-9@ZDH.COM
addprinc -randkey sqoop/zdh-9@ZDH.COM
xst -k HTTPzdh9.keytab HTTP/zdh-9@ZDH.COM
xst -k sqoopzdh9.keytab sqoop/zdh-9@ZDH.COM
exit
3.分发keytab
将sqoop.keytab复制到sqoop2krb相应目录下:
scp HTTPzdh9.keytab sqoop2krb@zdh-9:/home/sqoop2krb/sqoop-1.99.7-bin-hadoop200/keytabs
scp sqoopzdh9.keytab sqoop2krb@zdh-9:/home/sqoop2krb/sqoop-1.99.7-bin-hadoop200/keytabs
修改为用户只读权限:
chmod 400 HTTPzdh9.keytab
chmod 400 sqoopzdh9.keytab
需要kinit初始化principal,否则sqoop2无法启动:
kinit -kt HTTPzdh9.keytab HTTP/zdh-9@ZDH.COM
kinit -kt sqoopzdh9.keytab sqoop/zdh-9@ZDH.COM
4.修改配置文件
登陆sqoop2krb,修改conf/sqoop.properties文件:
org.apache.sqoop.security.authentication.type=KERBEROS
org.apache.sqoop.security.authentication.handler=org.apache.sqoop.security.authentication.KerberosAuthenticationHandler
org.apache.sqoop.security.authentication.kerberos.principal=sqoop/_HOST@ZDH.COM
org.apache.sqoop.security.authentication.kerberos.keytab=/home/sqoop2krb/sqoop-1.99.7-bin-hadoop200/keytabs/sqoopzdh9.keytab
org.apache.sqoop.security.authentication.kerberos.http.principal=HTTP/_HOST@ZDH.COM
org.apache.sqoop.security.authentication.kerberos.http.keytab=/home/sqoop2krb/sqoop-1.99.7-bin-hadoop200/keytabs/HTTPzdh9.keytab
org.apache.sqoop.security.authentication.enable.doAs=true
注意:sqoop/_HOST@ZDH.COM中的_HOST不用修改,运行时会自动改为sqoop/zdh-9@ZDH.COM之类的。
5.配置环境变量
export SQOOP2_HOST=$(hostname -f)
SQOOP2_HOST(zdh-9)的值会被用来替换上面_HOST
6.启动sqoop2
sqoop2-server start
停止sqoop2:
sqoop2-server stop
启动成功并且开启kerberos可以在sqoop.log看到如下日志:
2018-03-09 10:35:12,376 INFO [org.apache.sqoop.security.authentication.KerberosAuthenticationHandler.secureLogin(KerberosAuthenticationHandler.] Using Kerberos authentication, principal [sqoop/_HOST@ZDH.COM] keytab [/home/sqoop2krb/sqoop-1.99.7-bin-hadoop200/keytabs/sqoopzdh9.keytab]
2018-03-09 10:35:16,744 INFO [org.apache.hadoop.security.authentication.server.KerberosAuthenticationHandler.init(KerberosAuthenticationHandler.] Login using keytab /home/sqoop2krb/sqoop-1.99.7-bin-hadoop200/keytabs/HTTPzdh9.keytab, for principal HTTP/zdh-9@ZDH.COM
7.客户端验证
先初始化凭据:
kinit -kt sqoopzdh9.keytab sqoop/zdh-9@ZDH.COM
客户端登陆:
sqoop2-shell
展示所有的connector:
show connector
sqoop2客户端执行命令时,会使用sqoop作为用户去sqoop2服务查询,
如果kinit -kt HTTPzdh9.keytab HTTP/zdh-9@ZDH.COM,
则会用HTTP用户作为请求的用户,即会使用最近一次的kinit的用户作为
登陆用户去服务端查询结果。
查询结果正确,且可以在sqoop.log看到如下日志:
2018-03-09 10:46:08,377 INFO [org.apache.sqoop.audit.FileAuditLogger.logAuditEvent(FileAuditLogger.] user=sqoop ip=10.43.159.9 op=get obj=connectors objId=all
8.Rest服务验证
其他服务通过HTTP请求访问rest接口,
比如RangerAdmin使用rangerlookup用户进行testConnection测试,
测试连接成功可以在sqoop.log看到如下日志:
2018-03-09 10:49:13,085 INFO [org.apache.sqoop.audit.FileAuditLogger.logAuditEvent(FileAuditLogger.] user=rangerlookup ip=10.43.159.9 op=get obj=connectors objId=all
Sqoop2开启Kerberos安全模式的更多相关文章
- Hadoop开启Kerberos安全模式
Hadoop开启Kerberos安全模式, 基于已经安装好的Hadoop的2.7.1环境, 在此基础上开启Kerberos安全模式. 1.安装规划 已经安装好Hadoop的环境 10.43.159.7 ...
- Ranger-AdminServer安装(开启Kerberos)
Ranger-AdminServer安装, 同时开启Kerberos安全模式, 基于ranger版本0.7.0. 安装规划 10.43.159.240 zdh-240 10.43.159.245 zd ...
- 【原创】大叔经验分享(41)hdfs开启kerberos之后报错Encryption type AES256 CTS mode with HMAC SHA1-96 is not supported/enabled
hdfs开启kerberos之后,namenode报错,连不上journalnode 2019-03-15 18:54:46,504 WARN org.apache.hadoop.security.U ...
- Storm集群安装Version1.0.1开启Kerberos
Storm集群安装,基于版本1.0.1, 同时开启Kerberos安全认证, 使用apache-storm-1.0.1.tar.gz安装包. 1.安装规划 角色规划 IP/机器名 安装软件 运行进程 ...
- Zookeeper集群安装(开启kerberos)
安装规划 zookeeper集群模式,安装到如下三台机器 10.43.159.237 zdh-237 10.43.159.238 zdh-238 10.43.159.239 zdh-239 Kerbe ...
- Zookeeper单机安装(开启kerberos)
安装规划 zookeeper安装到zdh41上面,单机模式 10.43.159.41 zdh41 ZDH.COM 安装用户 zookeeper/zdh1234 useradd -g hadoop -s ...
- Kylin开启Kerberos安全认证
Kylin开启Kerberos安全认证, 由于Kylin是依赖Hbase启动的, Kylin启动脚本kylin.sh中就是调用的Hbase的启动脚本, 所以当Hbase开启了Keberos之后就等于K ...
- 挖坑:handoop2.6 开启kerberos(全流程学习记录)
目录: 1.涉及插件简介 2.安装步骤 3.日志错误查看 1.kerberos是什么东西 度娘指导: Kerberos 是一种网络认证协议,其设计目标是通过密钥系统为 客户机 / 服务器 应用程序提供 ...
- cloudera集群开启kerberos认证后,删除zk中的/hbase目录
问题 在cdh集群中开启了kerberos认证,hbase集群出现一点问题,需要通过zookeeper-client访问zookeeper,删除/hbase节点时候报错:Authentication ...
随机推荐
- sonic 安装记录
https://github.com/valeriansaliou/sonic $ rustc --versionrustc 1.50.0-dev ubantu环境 rocksdb 安装依赖 apt ...
- MyBatis中sql实现时间查询的方法
<if test="startTime != null and startTime !=''"> AND lTime >= #{startTime} </i ...
- 在应用程序中的所有其他bean被销毁之前执行一步工作
1.实现ServletContextListener.ApplicationContextAware两个接口,在销毁方法里借助ApplicationContextAware注入的application ...
- CentOS 初体验三: Yum 安装、卸载软件
一:Yum 简介 Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于RPM包管理,能够从指 ...
- 制作一个有趣的涂鸦物联网小项目(涂鸦模组SDK开发 CBU BK7231N WiFi+蓝牙模组 HSV彩色控制)
实现的功能: l APP控制月球灯 l 本地月球灯控制 l APP控制"大白"颜色,实现各种颜色变身 l 门状态传感器状态APP显示 l 网络状态指示灯,连接服务器长亮, ...
- 车载以太网第二弹|测试之实锤-1000BASE-T1 IOP测试实践
背景 车载以太网通信技术在汽车行业的应用速度远超预期,去年本土OEM已经上市了应用100BASE -T1的车型.今年,应用1000BASE -T1的车型预计也将会量产上市.针对测试而言,带来另外一个难 ...
- typeScript基本概念
我一直认为学习是知识的累加,而前端技术也是进步的.所以学习的重点就是,'它有什么不同,它好在哪里'.这要求我们必须结合之前的经验和知识去学习一门新技术,而不是无情的复制粘贴机器. 首先,ts的官方定义 ...
- CF106A Card Game 题解
Content 一种纸牌游戏有许多张卡牌,每张卡牌有一个套装(S,H,D和 C)和一个等级(按升序排列6,7,8,9,T, J,Q,K,A). 规定以下情况卡牌 A 才能赢卡牌 B: A 有王牌套装, ...
- 针对HttpClient 重写 HttpRequestRetryHandler针对特定异常 增加重试
调用方法: public static String doGet(String url) { try { RequestConfig defaultRequestConfig = RequestCon ...
- Jaeger知识点补充
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...