sentry配置

当前cdh版本为5.2.0,且通过cloudera manger来管理集群。

选择sentry配置方式,file or db。

file形式(sentry-provider.ini),存于hdfs上。
选择group mapping方式,有HadoopGroupResourceAuthorizationProvider(正式环境中)、LocalGroupResourceAuthorizationProvider(测试环境中)。
经过测试,Hadoop groups需要使用将hadoop用户和用户组通过LDAP管理[url]configure ldap group mapping[/url],但配置后hdfs启动异常,并且若不配置ldap mapping,sentry provider file没有效果,所有表和库都看不到。
采用简单的 LocalGroupResourceAuthorizationProvider测试成功。
相关步骤参看cm配置方法
db形式,cloudera manager提供了sentry service即sentry store。
安装sentry service并配置相关的数据库(后续的权限信息都存于这些表),配置sentry如上的cm配置方法不需要配置。
sudo su hive
beeline
!connect jdbc:hive2://172.20.0.74:10000/data_system;principal=hive/slave-74@YEAHMOBI.COM
(hive kerberos 账户和密码)(据说hive0.13版本集成ldap失败,新的cdh5.3可行,所以采用kerberos认证)
create role admin_role;
GRANT ALL ON SERVER server1 TO ROLE admin_role;
GRANT ROLE admin_role TO GROUP hive;
create role bi_role;  
GRANT ALL ON DATABASE data_system TO ROLE bi_role;
GRANT ROLE bi_role TO GROUP bi;  

如上创建了两个角色,admin_role管理员权限,并授权给hive,bi_role对db data_system的所有权限,授权给bi用户组。
sudo su bi
beeline -u "jdbc:hive2://172.20.0.74:10000/data_system;principal=hive/slave-74@YEAHMOBI.COM"
(bi kerberos用户及密码 或者优先kinit bi/keytab)
show databases;
| database_name  |
+----------------+--+
| data_system    |
| default        |

beeline shell帮助文档
新建用户
在所有节点中运行
useradd bi -u 1001 (id大于1000)
usermod -a -G bi bi

相关kerberos命令
addprinc -randkey krbtgt/client-75@YEAHMOBI.COM
addprinc -randkey host/client-75@YEAHMOBI.COM
addprinc -randkey HTTP/client-75@YEAHMOBI.COM
addprinc -randkey bi/client-75@YEAHMOBI.COM
addprinc -randkey bi/slave-74@YEAHMOBI.COM
addprinc bi@YEAHMOBI.COM
xst -norandkey -k bi.keytab host/client-75@YEAHMOBI.COM
xst -norandkey -k bi.keytab HTTP/client-75@YEAHMOBI.COM
xst -norandkey -k bi.keytab bi/client-75@YEAHMOBI.COM

创建hdfs目录和授权
sudo su hdfs
hadoop fs -mkdir /user/bi
hadoop fs -chmod -R 755 /user/bi
hadoop fs -chown -R bi:bi /user/bi

mr测试
sudo su bi
kinit -kt bi.keytab bi/client-75@YEAHMOBI.COM
hadoop jar /opt/cloudera/parcels/CDH-5.2.0-1.cdh5.2.0.p0.36/jars/hadoop-examples.jar pi 10 1000

beeline ldap测试:
 !connect jdbc:hive2://172.20.0.74:10000/data_system
输入ldap的bi账户和密码
show databases成功


参考blog:
http://www.cloudera.com/content/cloudera/en/documentation/core/v5-2-x/topics/cm_sg_ldap_grp_mappings.html#xd_583c10bfdbd326ba--6eed2fb8-14349d04bee--7bc3
http://www.cloudera.com/content/cloudera/en/documentation/core/v5-2-x/topics/sg_policy_cm_config.html
http://blog.javachen.com/2014/11/14/config-impala-and-hive-with-sentry/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值