专栏首页Hadoop实操0562-05-5.15.0-如何为Hive集成FreeIPA的用户认证

0562-05-5.15.0-如何为Hive集成FreeIPA的用户认证

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

Fayson的github: https://github.com/fayson/cdhproject

提示:代码块部分可以左右滑动查看噢

1

文档编写目的

前面Fayson文章讲《0558-01-如何在Redhat7上安装FreeIPA》、《0561-04-如何将CDH集成的KDC迁移至FreeIPA的Kerberos认证》和《0559-02-如何在Redhat7上安装FreeIPA的客户端》,FreeIPA集成了用户管理及Kerberos认证,本篇文章Fayson主要介绍如何在CDH集群中为Hive集成FreeIPA的用户认证。

  • 内容概述

1.测试环境描述

2.集成FreeIPA

3.集成验证

  • 测试环境

1.RedHat7.3

2.FreeIPA4.6.4

3.和CDH版本为5.15.0

2

环境准备

  • FreeIPA信息

IP地址

HOSTNAME

描述

17x.2x.x.x

cdh04.fayson.net

FreeIPA已安装

  • Hive服务信息

IP地址

HOSTNAME

描述

17x.2x.x.x

cdh02.fayson.net

HiveServer2

当前集群部署了一个FreeIPA服务及一个HiveServer2服务。

3

Hive配置FreeIPA认证

1.登录CM的Web控制台,进入Hive服务,关闭Hive的模拟功能

2.在集群中使用LDAP的命令查找到FreeIPA中用户所属的BaseDN,命令如下:

[root@cdh04 ~]# ldapsearch -h cdh04.fayson.net -b "dc=fayson,dc=net" -D "cn=directory manager" -W |grep cdhadmin

在查找出来的信息中,找到member:uid=cdhadmin行

cn=users,cn=accounts,dc=fayson,dc=net即为LDAP BaseDN。

3.修改LDAP相关配置,通过这里可以进行全局配置,配置后所有的HiveServer2服务均使用该配置

完成上述配置后,根据CM提示重启Hive服务即可。

4

Hive集成OpenLDAP验证

1.登录Hue为FreeIPA上的cdhadmin用户授权

2.在命令行使用cdhadmin用户通过beeline的方式访问Hive

[root@cdh02 ~]# more /etc/passwd |grep cdhadmin
[root@cdh02 ~]# id cdhadmin
[root@cdh02 ~]# klist

[root@cdh02 ~]# beeline 

beeline> !connect jdbc:hive2://cdh02.fayson.net:10000

Enter username for jdbc:hive2://cdh02.fayson.net:10000: cdhadmin

Enter password for jdbc:hive2://cdh02.fayson.net:10000: ********

0: jdbc:hive2://cdh02.fayson.net:10000> show databases;

3.执行一个SQL的Count操作

作业执行成功,Yarn上显示成功

5

总结

1.在为Hive服务配置FreeIPA的用户认证时,可以通过全局的方式配置HiveServer2服务即文章中讲述的方式,同时可以为单个HiveServer2服务配置,具体可以参考Fayson前面的文章《4.如何为Hive配置OpenLDAP认证

2.需要为集群所有节点都配置好FreeIPA客户端,否则在Hive上执行MapReduce作业时会失败。

提示:代码块部分可以左右滑动查看噢

为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

本文分享自微信公众号 - Hadoop实操(gh_c4c535955d0f)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-03-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 单一职责原则

    座右铭 :There should never be more than one reason for a class to change. 应当有且仅有一个原...

    LieBrother
  • git 入门教程之忽略文件 原

    "并不是所有的牛奶都叫特仑苏",在版本控制系统中也有相似的表达,那就是"并不是所有的文件都需要提交".

    雪之梦技术驿站
  • git 入门教程之远程仓库 原

    如果说本地仓库已经足够个人进行版本控制了,那么远程仓库则使多人合作开发成为可能. 如果你只是打算自己使用git,你的工作内容不需要发布给其他人看,那就用不到远程...

    雪之梦技术驿站
  • git 入门教程之备忘录[译] 转

    提交应该是相关更改的包装,例如,修复两个不同的 bug 应该产生两个单独的提交. 小的提交让其他开发者更容易理解此次更改,并且万一出错方便回滚. 在暂存区这类工...

    雪之梦技术驿站
  • 代码管理工具——SVN 原

    版本控制的作用:记录若干文件内容变化,以便将来查阅特定版本修订情况。 版本管理工具发展简史,cvs-->svn-->Git(参考:http://luckypo...

    阿dai学长
  • git 入门教程之 git 私服搭建教程 原

    前几节我们的远程仓库使用的是 github 网站,托管项目大多是公开的,如果不想让任何人都能看到就需要收费,而且 github 网站毕竟在国外,访问速度太慢,基...

    雪之梦技术驿站
  • git 入门教程之github 教程 原

    github 是一个基于 git 的代码托管平台,是平时工作学习的好帮手,学会如何用好 github 网站能够帮助我们更好分享代码或者与其他开发人员合作.

    雪之梦技术驿站
  • github代码外泄监控——Hawkeye 原

    监控github代码库,及时发现员工托管公司代码到GitHub行为并预警,降低代码泄露风险。

    阿dai学长
  • git 入门教程之本地和远程仓库的本质 原

    远程仓库不一定非得是 github 那种专门的"中央服务器",甚至局域网的另外一台电脑也可以充当"中央服务器"的角色,因为它存在的最初目的只是方便大家交换彼此的...

    雪之梦技术驿站
  • Maven and Nexus2 原

    这个问题从Maven的第二个用处说起,依赖管理,通过在Pom中指定坐标的形式将jar引入到项目中。那这个过程,要经历怎样一个流程呢?从哪里寻找jar?下载的ja...

    阿dai学长

扫码关注云+社区

领取腾讯云代金券