温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢
1.文档编写目的
在前面的文章Fayson讲了《1.如何在CentOS6.5安装OpenLDAP并配置客户端》、《2.OpenLDAP集成SSH登录并使用SSSD同步用户》、《3.如何实现OpenLDAP的主主同步》、《4. 如何为Hive配置OpenLDAP认证》以及《5.如何为Impala配置OpenLDAP认证》。本篇文章主要介绍如何为Hue配置OpenLDAP认证。
1.测试环境描述
2.导入hive用户到OpenLDAP
3.Hue集成OpenLDAP
4.Hue集成Hive和Impala
5.Hue集成验证
1.CentOS6.5
2.OpenLDAP版本2.4.40
3.CM和CDH版本为5.13.1
4.OpenLDAP未启用TLS加密认证
1.OpenLDAP已安装且正常使用
2.集群未启用Kerberos
2.测试环境描述
IP地址 | HOSTNAME | 描述 |
---|---|---|
172.31.7.172 | ip-172-31-7-172.fayson.com | OpenLDAP已安装 |
172.31.9.33 | cdh04.fayson.com | OpenLDAP已安装 |
这里我们将172.31.7.172做为OpenLDAP的主节点,172.31.9.33做为OpenLDAP的备节点。
3.导入hive用户到OpenLDAP
这里以hive用户为例来测试,该用户也属于一个特殊用户,涉及到Hive和Impala的超级管理员权限问题。
1.查看OS中hive用户的用户ID和用户组ID
[root@ip-172-31-7-172 openldap-ldif]# id hive
uid=487(hive) gid=486(hive) groups=486(hive)
(可向右拖动)
hive用户的uid对应user_hive.ldif中的mem
2.编辑group_hive.ldif文件,内容如下:
[root@ip-172-31-7-172 openldap-ldif]# vim group_hive.ldif
dn: cn=hive,ou=Group,dc=fayson,dc=com
objectClass: posixGroup
objectClass: top
cn: hive
userPassword: {SSHA}KYgsfyI/uny0dKPNeMRNG54BdwV6KlWA
gidNumber: 486
(可向右拖动)
3.编辑user_hive.ldif文件,内容如下:
[root@ip-172-31-7-172 openldap-ldif]# vim user_hive.ldif
dn: uid=hive,ou=People,dc=fayson,dc=com
uid: hive
cn: hive
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword: {SSHA}KYgsfyI/uny0dKPNeMRNG54BdwV6KlWA
shadowLastChange: 17493
shadowMin: 0
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 487
gidNumber: 486
homeDirectory: /home/hive
(可向右拖动)
4.使用如下命令将hive用户和用户组信息导入OpenLDAP
ldapadd -D "cn=Manager,dc=fayson,dc=com" -W -x -f group_hive.ldif
ldapadd -D "cn=Manager,dc=fayson,dc=com" -W -x -f user_hive.ldif
(可向右拖动)
5.查看是否导入成功
ldapsearch -h cdh04.fayson.com -b "dc=fayson,dc=com" -D "cn=Manager,dc=fayson,dc=com" -W |grep hive
(可向右拖动)
4.Hue集成OpenLDAP
1.使用管理员登录CM,进入Hue配置页面,修改Hue的认证方式为LDAP
2.配置LDAP信息
修改完以上配置后保存,在重启Hue服务前将认证方式修改为desktop.auth.backend.AllowFirstUserDjangoBackend
再次保存配置并重启Hue服务。
3.重启成功后使用Hue的超级管理员登录,我们这里是admin用户为超级管理员
4.登录成功后,进入用户管理界面
点击“Add/SyncLDAP user”
点击“Add/Syncuser”按钮,同步hive用户
将hive用户设置为超级管理员,因为我们启用LDAP认证后admin用户则无法登陆
上图可以看到hive用户已被同步,但hive所属的用户组并为被同步过来,我们还需要通过“Add/SyncLDAP Group”的方式将hive的用户组也同步过来
点击同步将hive的用户组信息同步
修改hive用户的属组为hive
以上完成了hive用户的同步及超级管理员配置。
5.回到CM界面修改Hue的配置
将hue的用户的认证方式修改为LDAP,保存并重启Hue。
6.用户登录测试
这里看到admin用户已无法正常登录,因为在OpenLDAP中并不存在admin这个用户。
hive用户可以正常登录。
5.Hue集成Impala和Hive
注意:如果Hive/Impala已设置了LDAP认证,需要在Hue中增加以下设置,否则Hue无法正常连接Hive或Impala进行查询
1.通过CM在hue_safety_valve.ini中增加如下配置
[desktop]
ldap_username=hive
ldap_password=123456
(可向右拖动)
2.HDFS配置中增加代理设置
<property>
<name>hadoop.proxyuser.hive.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hive.groups</name>
<value>*</value>
</property>
(可向右拖动)
3.在Impala中增加代理用户的所有权限
--authorized_proxy_user_config=hive=*
保存以上修改的配置后,回到CM主页根据提示重启相应服务。
6.Hue集成功能验证
1.使用hive用户登录Hue
2.使用Hive操作SQL
执行count操作
3.使用Impala操作SQL
执行count操作
7.总结
提示:代码块部分可以左右滑动查看噢 为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。
原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操