通过Cloudera在hadoop生态圈中安装Sentry服务。
写在张文章时,差点辣死我了。把sentry数据库密码搞掉了,导致hive,impala,hue都挂了。此事要引以为戒,以后要小心操作了。
- 安装Sentry服务
a) 在cloudera上添加Sentry服务
b) 选中Sentry服务并继续
c) 使用集群主机Master节点作为Sentry Sever服务器(Gateway选中集群内的所有服务器)
d) 根据需要进行的数据库选项配置。
选择“自定义数据库”需预先在服务器上部署好数据库
选择“嵌入式数据库”则为sentry自己创建数据库
sentry数据库放置一些自身运行的数据
e) 点选下一步之后让sentry完成服务安装
2.配置Sentry服务
Hadoop有两张安全策略,(1)sentry组件服务,(2)基于政策文件的sentry
两种服务中只能使用其中一种,使用sentry组件服务需要把基于政策文件的sentry功能禁用。
a) 配置不使用Sentry 政策文件
跑到Hive,Impala中的配置界面把基于政策文件的sentry功能关闭掉。
b) 配置打开使用Sentry服务
1)确保服务器上的hive用户和组有操作hive数据仓库的路径的权限(可通过服务器上赋予权限配置,也可打开hdfs和sentry同步功能)
2)关掉Hivesever2上的启用模拟功能
该功能是使Hivesever2和其它服务(如MapReduce和HDFS)进行会话时,模拟使用JDBC连接向Thrift-sever通信。
3)让Hive用户提交MapReduce作业
4) 让Hive用户提交YARN作业
个人理解:MapReduce没有做用户权限控制,所以只能去调节最小用户提交作业数量。YARN有做用户控制,直接给Hive配置上权限就可以了。
c) 配置Hive,Impala,Solr,Hue中打开Sentry服务功能
1) 跑到Hive,Impala,Solr,Hue中打开Sentry功能
2) 注意:确保hive service2上配置了允许时限制修改的功能。
注意:可在Hue上进行Sentry的权限配置,但必须确保Hue上配置的用户和组的对应关系和服务器上的用户和组的对应关系一致。
d) 添加对应的服务的用户组到Sentry服务的系统组中
3.设置Shell权限
a) 需要通过Root权限登陆
b) linux用户权限配置命令:
1) 查看用户当前的组:id test
2) 添加用户:useradd –d /usr/test -m test
3) 添加组:groupadd test
4) 赋权用户组usermod -G hive test
4.hue中配置权限
a) 在Hue进行用户和组的对应关系设置
1) 进行用户管理菜单界面
2) 菜单界面功能
a) user:用于新增和修改用户(此处可配置用户和组的关系)
b) Groups:用于新增和修改组(此处可配置用户和组的关系,组和Permissions的关系)
c) Permissions是Hue的菜单权限(可配置对应Hue菜单功能和组的对应关系)
此处需注意user及Groups必须在服务器上也具有对应关系。
b) 在Hue进行角色和组权限的关系设置
1) 进行Sentry配置菜单
2) 菜单界面功能:
- Borwse可浏览设置目前用户的角色权限
a) 可模仿user浏览数据库权限,以检查权限设置准确性
b) 可在Privileges中直接配置角色,组和权限的关系。
2. Roles可用于配置角色和组的对应关系
a) 可直接配置角色和权限的关系
b) 可直接配置角色和组的关系
通过Cloudera在hadoop生态圈中安装Sentry服务。的更多相关文章
- docker中安装ssh服务
系统:Debian Docker 目标:在docker(debian系统)中安装ssh服务,实现远程登陆和控制docker 步骤: 初始状态:通过docker pull debian得到的一个debi ...
- linux环境中安装ftp服务
需求说明: 今天项目中有一个新的需求,需要在linux环境中搭建一个ftp服务,在此记录下. 操作过程: 1.通过yum的方式安装ftp服务对应的软件包 [root@testvm01 ~]# yum ...
- Ubuntu18.04中安装vsftpd服务/ ftp上传文件提示无权限 553 Could not create file.
1,安装 $ sudo apt-get install vsftpd 2.配置 备份并创建新的配置文件. $ sudo mv /etc/vsftpd.conf /etc/vsftpd.conf_ori ...
- ubuntu16.4中安装samba服务
一.下载samba软件包,不用安装其他的了,因为它会自动帮我们下载所需要的其他依赖包 sudo apt-get install samba 二.修改/etc/samba目录下的配置文件,smb.con ...
- ubuntu中安装rabbitmq服务并成功启动
在我们使用rabbitmq时,首先要对其进行安装,而后才能对其进行使用 安装 Erlang 由于 RabbitMQ 是采用 Erlang 编写的,所以需要安装 Erlang 语言库.就像 java 需 ...
- Centos6.5环境中安装vsftp服务
1.检查vsftp是否安装 命令:rpm -qa|grep vsftpd 若已经安装,则显示相关的版本信息,否则什么也没有. 也可以输入find -name "vsftpd" -p ...
- 大数据和Hadoop生态圈
大数据和Hadoop生态圈 一.前言: 非常感谢Hadoop专业解决方案群:313702010,兄弟们的大力支持,在此说一声辛苦了,经过两周的努力,已经有啦初步的成果,目前第1章 大数据和Hadoop ...
- Hadoop专业解决方案-第1章 大数据和Hadoop生态圈
一.前言: 非常感谢Hadoop专业解决方案群:313702010,兄弟们的大力支持,在此说一声辛苦了,经过两周的努力,已经有啦初步的成果,目前第1章 大数据和Hadoop生态圈小组已经翻译完成,在此 ...
- Hadoop生态圈介绍及入门(转)
本帖最后由 howtodown 于 2015-4-2 23:15 编辑 问题导读 1.Hadoop生态圈介绍了哪些组件,分别都是什么? 2.大数据与Hadoop是什么关系? 本章主要内容: 理解大数据 ...
随机推荐
- C++11新特性学习
http://www.cprogramming.com/c++11/c++11-lambda-closures.html
- tomcat重启脚本
#!/bin/bashPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/binexport JAVA_HOME=/opt/jd ...
- H5之contenteditable
场景: <div id='content' contenteditable='true' > hello </div> <button id='caret'>设置光 ...
- 实验一 cmd命令的编写
一.目的和要求 1. 实验目的 (1)掌握命令解释程序的原理: (2)*掌握简单的DOS调用方法: (3)掌握C语言编程初步. 2.实验要求 编写类似于DOS,UNIX的命令行解释程序 (1)自行定义 ...
- 学习笔记 android fragment
最近研究了一下fragment的使用方法,总结概要如下: 1.fragment实际上就是把activity拆开后的封装块,一个fragment就是一个封装好的一部分.这样以来可以方便复用. 2.fra ...
- 用JS修改checkbox的选中状态
代码如下: <SCRIPT LANGUAGE="JavaScript"> <!-- function change() { var c=document.myfo ...
- Android studio 项目的layout的文件打开,preview 视图无法显示,提示“no sdk found...”可能原因?
1.安装android studio后启动,引导新的下载的sdk文件夹,不要默认在c:\users\你的用户名\appdata...下的sdk文件夹. 2.如果已经默认的,重新在settings/pr ...
- ssh 注解写法
弄了半天 (好久哦) 首先 applicationContext-db.xml <?xml version="1.0" encoding="UTF-8" ...
- curl方法post一个数组
$r = $this->curl_post($url, $data);$list = json_decode($r,true); function curl_post($url = '', ...
- Python笔记-built-in函数,文件操作,lambda函数
Built-In: i = abs(123) print(i) j = abs(-123) print(j)#123#123 #all,需要传一个可迭代的东西,里面所有的值是真,返回真 r1 = al ...