温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
Fayson的github: https://github.com/fayson/cdhproject
提示:代码块部分可以左右滑动查看噢
1.文档编写目的
Fayson在前面的文章《01-如何在Window Server 2012 R2搭建Acitve Directory域服务》、《02-Active Directory安装证书服务并配置》、《03-Active Directory的使用与验证》、《04-如何在RedHat7上配置OpenLDAP客户端及集成SSSD服务和集成SSH登录》、《05-如何为Hive集成AD认证》和《06-如何为Impala集成AD认证》。本篇文章Fayson主要介绍Hue集成AD认证。
1.Hue配置AD认证
2.Hue中配置Hive和Impala
3.总结
1.CM和CDH版本为5.15.0
2.集群已启用Kerberos
3.Window Server2012 R2
2.环境准备
这一步主要是在AD中创建两个用户huesuper和hiveadmin两个用户,huesuper为Hue的超级管理员,hiveadmin用户为Hive的超级管理员。
3.Hue配置AD认证
1.登录CM的Web控制台,进入Hue服务配置界面搜索“LDAP”,修改配置如下:
参数 | 值 | 说明 |
---|---|---|
身份验证后端 | desktop.auth.backend.LdapBackend | 选择身份验证方式 |
LDAP URL | ldap://adserver.fayson.com | 访问AD的URL |
使用搜索绑定身份验证 | true | |
登录时创建LDAP用户 | true | |
LDAP搜索基础 | dc=fayson,dc=com | AD的基础域 |
LDAP绑定用户可分辨名称 | cn=cloudera-scm,cn=Users,dc=fayson,dc=com | AD的管理员用户 |
LDAP绑定密码 | 123!QAZ | 管理员密码 |
2.配置保存成功后,使用Hue提供的LDAP测试功能测试配置是否正常
测试成功显示如下:
3.将“身份验证后端”修改为默认的配置
“desktop.auth.backend.AllowFirstUserDjangoBackend”
4.保存配置并重启Hue服务,使用hue默认的管理员admin/admin登录,进入用户管理界面
点击“Add/Sync LDAP user”,将AD中创建的huesuper用户同步至Hue
同步成功后在用户列表显示huesuper用户
将huesuper用户修改为超级管理员
上面的配置方式主要是为了使用hue的超级管理员同步AD中的一个用户并将该用户设置为超级用户,这样我们将Hue的身份验证后端修改为LDAP方式,也有相应的超级用户登录hue进行用户同步。
5.进入Hue服务的配置界面将“身份验证后端”修改为LDAP认证方式
6.保存配置并重启Hue服务,接下来使用huesuper用户登录Hue进行用户同步
hiveadmin用户同步成功
进入Group管理界面,点击“Add/Sync LDAP group”同步AD中的hive组
将hiveadmin用户添加到hive组中
如上操作就完成了hiveadmin和huesuper用户的同步。
4.Hue中集成Hive和Impala
注意:如果Hive/Impala已设置了LDAP认证,需要在Hue中增加以下设置,否则Hue无法正常连接Hive或Impala进行查询,
1.通过CM在hue_safety_valve.ini中增加如下配置
[desktop]
ldap_username=hiveadmin
ldap_password=123!QAZ
(可左右滑动)
2.HDFS的core-site.xml配置中增加hiveadmin代理设置
<property>
<name>hadoop.proxyuser.hiveadmin.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hiveadmin.groups</name>
<value>*</value>
</property>
(可左右滑动)
3.在Impala中增加代理用户的所有权限
--authorized_proxy_user_config=hiveadmin=*
保存以上修改的配置后,回到CM主页根据提示重启相应服务。
5.Hue集成AD测试
在前面已经有测试过同步AD的用户和组操作,这里Fayson主要测试Hive和Impala集成。
1.使用testa用户登录Hue,在Hive执行引擎下执行SQL操作
执行Count操作
2.使用Impala执行引擎进行SQL操作
执行Count操作
6.总结
1.Hue默认第一个登录的用户为管理员账号,在集成AD时需要配置LDAP信息后再将Hue登录的认证方式修改为AllowFirstUserDjangoBackend,需要使用管理员用户先登录Hue将AD用户同步后,再修改为LDAP认证。
2.如果Hive或者Impala已集成AD,则需要在Hue、HDFS、Impala中增加额外的配置。
3.Hue管理LDAP用户组的逻辑是独立管理用户和组,在同步用户的时候是不会将用户的组信息同步。
4.在Hue集成OpenLDAP的时候有勾选“登录时创建OpenLDAP用户”,所以我们不需要先登录Hue管理员到用户界面去同步LDAP的用户。
提示:代码块部分可以左右滑动查看噢
为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。