温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢
1.文档编写目的
在CDH集群启用Sentry服务后,需要关闭Hive的启用模拟功能,hive.server2.enable.impersonation设为false,这会导致任何用户在Hive中提交的所有SQL生成的MR任务的用户名称都是hive,而非真实用户。本篇文章主要介绍如何查看集成Sentry后Hive作业的真实用户。
- 内容概述
1.执行Hive作业
2.查看Hive作业用户方式
3.总结
- 测试环境
1.RedHat7.2
2.CM和CDH集群为5.11.2
3.集群已启用Sentry和Kerberos
2.执行Hive作业
1.使用fayson用户Kinit操作
2.使用beeline登录HiveServer2
3.执行一个Hive的MR作业
4.Yarn的应用程序列表显示
5.Yarn的8088界面显示
3.查看Hive作业真实用户
1.通过Cloudera Manager界面查看在Hive作业运行完成后,查看Yarn应用程序列表,可以看到显示的用户信息
可以看到作业在运行完成后,显示的用户为fayson用户,为我们执行作业的用户。
2.通过Yarn的8088界面查看,进行作业执行列表点击作业查看详情
进入Job运行界面
点击“History”,进入作业历史详情界面
点击“Configuration”链接,进入作业配置相应页面,过滤“hive.sentry.subject.name”查看作业的真实用户
3.通过Cloudera Manager提供的API界面查看Hive作业的真实用户
代码语言:txt复制curl -u admin:admin "http://ip-172-31-22-86.ap-southeast-1.compute.internal:7180/api/v16/clusters/cluster/services/yarn/yarnApplications"
(可左右滑动)
4.总结
- 集群集成Sentry服务后Hive作业的真实用户不能通过Yarn的8088界面直接查看到,无论作业执行完成与否。
- 在Hive作业运行完成后可以通过Cloudera Manager界面的“Yarn应用程序”列表看到执行作业的真实用户。
- 可以通过CM提供的API接口来获取运行完成的Hive作业的详细信息查看真实用户,也需等待作业执行完成。
- 通过YARN的HistoryServer查看每个作业的Configuration,hive.sentry.subject.name可以查看真实的用户,但依旧需要等待作业执行完毕。
提示:代码块部分可以左右滑动查看噢 为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。
原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操