写在张文章时,差点辣死我了。把sentry数据库密码搞掉了,导致hive,impala,hue都挂了。此事要引以为戒,以后要小心操作了。

  1. 安装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) 菜单界面功能:

          1. Borwse可浏览设置目前用户的角色权限

                    a)                可模仿user浏览数据库权限,以检查权限设置准确性

                    b)               可在Privileges中直接配置角色,组和权限的关系。

            

                2. Roles可用于配置角色和组的对应关系

                    a)                可直接配置角色和权限的关系

                    b)               可直接配置角色和组的关系

            

最新文章

  1. angularjs中文社区
  2. Linq join on 多条件
  3. MVC利用Routing实现多域名绑定一个站点、二级域名以及二级域名注册Area
  4. React Native 简介:用 JavaScript 搭建 iOS 应用(2)
  5. 无法建立到http://localhost:6080/arcgis/manager/的连接
  6. eNSP
  7. 李洪强iOS开发Swift篇—02_变量和常量
  8. VS2005 MFC 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)
  9. 线段树(单标记+离散化+扫描线+双标记)+zkw线段树+权值线段树+主席树及一些例题
  10. 爬虫之BS&Xpath
  11. C++ 实验3 类和对象
  12. HttpServerProvider实现http服务接口(一)
  13. Linux shell脚本 批量创建多个用户
  14. 关于SQL表字段值缺失的处理办法
  15. C#基础知识回顾---你不知道的Lazy<T>
  16. acd Convex(求面积)
  17. poj3680
  18. django中实现微信消息推送
  19. 20181029NOIP模拟赛T3
  20. C++中模块(Dll)对外暴露接口的方式

热门文章

  1. JS实现 点击button(copy) 复制对应的网址——类似于复制推广链接
  2. bzoj3876: [Ahoi2014]支线剧情
  3. Java集合类学习笔记(Queue集合)
  4. stm8s103 PWM
  5. Backbone的一点使用心得
  6. 三角形-css
  7. Android中数据的传递以及对象序列化
  8. 面试复习(C++)之直接插入排序
  9. CSipSimple通话记录分组
  10. powershell读写磁盘变量(对象序列化)