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 ...
随机推荐
- restful接口文档
1.先理清业务bai流程 2.定义前后端开发的接口规范.比如json的格dao式,url的格式 3.定内义接口文容档,这里的接口文档一般就是对应后台的实体reqVo(调用后台接口<控制器> ...
- 通过 Ajax 发送 PUT、DELETE 请求的两种实现方式
一.普通请求方法发送 PUT 请求 1. 如果不用 ajax 发送 PUT,我们可以通过设置一个隐藏域设置 _method 的值,如下: <form action="/emps&quo ...
- Mysql的基操
创建一个数据库 (myschool是数据库名) create database myschool; 删除数据库 drop database myschool 创建一个表:(Student是 表名) ...
- 模板方法模式(Template Method Pattern)——复杂流程步骤的设计
模式概述 在现实生活中,很多事情都包含几个实现步骤,例如请客吃饭,无论吃什么,一般都包含点单.吃东西.买单等几个步骤,通常情况下这几个步骤的次序是:点单 --> 吃东西 --> 买单. 在 ...
- [BUUCTF]PWN——[Black Watch 入群题]PWN
[Black Watch 入群题]PWN--栈劫持 入群题密码在 /password.txt Ubuntu 16 2020年02月27日:此入群题已作废,请看新版入群题. 附件 解题步骤: 例行检查, ...
- M语言中的引用(Power Query 之 M 语言)
名词 查询表 函数 行{}/列[] 单元格 表(Table) 列表(List) 记录(Record) 引用[查询表] =查询表表名 引用[应用的步骤] =步骤名 引用表中的[单元格](深化) =表{行 ...
- CF390A Inna and Alarm Clock 题解
Content 平面内有 \(n\) 个整点 \((x_i,y_i)\).每次可以去掉一行或一列的点,问最少去几次(按行去点或按列去点二者只能选择一种). 数据范围:\(1\leqslant n\le ...
- linux 下查看文件修改时间
linux 下查看文件修改时间 等 http://blog.sina.com.cn/s/blog_6285b04e0100f4xr.html 查看文件时间戳命令:stat awk.txtFile: ` ...
- docker启动WARNING:IPv4 forwarding is disabled. Networking will not work.
docker启动容器报错IPv4 forwarding is disabled. Networking will not work. [root@localhost ~]# docker run -p ...
- springboot目录结构、重要配置文件、重要注解的详解
前面2篇博客已经带着大家搭建了springboot项目,并编写了持久化接口部署到tomcat下访问.这里我们一起补充下springboot的基本信息 一.springboot简单介绍 springbo ...