使用Hadoop ACL 控制訪问权限
使用Hadoop ACL 控制訪问权限
一、HDFS訪问控制
hdfs-site.xml设置启动acl
<property>
<name>dfs.permissions.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.namenode.acls.enabled</name>
<value>true</value>
</property>
core-site.xml设置用户组默认权限.
<property>
<name>fs.permissions.umask-mode</name>
<value>002</value>
</property>
各需求和解决的方法例如以下:
1.除了数据仓库负责人,普通用户不能创建数据库,也不能在默认库中创建表.
/user/hive/warehouse的默认权限改为755,全部者是hadoop(或者数据仓库负责人),那么没有人能创建数据库,也不能在默认库中创建表.2.数据仓库负责人创建数据库之后,能够分配给项目组,该项目组能够在此数据库建立表.
/user/hive/warehouse/数据库.db的全部者改为项目组.3.数据仓库负责人创建数据库之后,不把创建表的权限分给项目组,而为其创建表,仅仅同意项目组插入分区.
数据仓库负责人继续保持/user/hive/warehouse/数据库.db的权限,项目组不能建立表,数据仓库负责人为项目组创建表之后,把表所在的文件夹分给项目组.4.某些表仅仅能本项目组读写.
/user/hive/warehouse/数据库.db/表名所在的文件夹改为770 .5.某些表仅仅能本项目组的特殊用户读写.
/user/hive/warehouse/数据库.db/表名所在的文件夹的全部者改为此用户,而且权限改为700 .6.项目组的表,须要其他组的特别用户插入数据.
使用下面的命令能够mapngxu对dntest.db的表testp1有写权限 hdfs dfs -setfacl -R -m user:mapengxu:rwx /user/hive/warehouse/cdntest.db/testp17.项目组的表,须要其他组的特别用户有读到数据的权限.
hdfs dfs -setfacl -R -m user:mapengxu:r-x /user/hive/warehouse/cdntest.db/testp18.项目组的表,须要其他组的全部用户有读到数据的权限.
hdfs dfs -setfacl -R -m group:data_sum:r-x /user/hive/warehouse/cdntest.db/testp19.创建默认数据库,此数据库全部用户都有创建
表的权限。但仅仅保存30天.
/user/hive/warehouse/数据库.db的权限改为777。而且设置定时任务扫描该文件夹及hive数据库。假设有创建时间超过30天的表。删除表及所在文件夹。10.该措施和基础SQL的訪问控制结合。
任务调度
按用户组管理队列,在入口机和jenkins权限统一,按所在组分配资源,方便按项目组统计各项目组每天,每周占用多少集群资源. mapred-site.xml配置例如以下:
<property>
<name>mapred.acls.enabled</name>
<value>true</value>
</property>
<property>
<name>mapred.fairscheduler.poolnameproperty</name>
<value>group.name</value>
</property>
fair-scheduler.xml配置例如以下:
<?xml
version="1.0"?>
<allocations>
<pool
name="cdn">
<maxResources>1000
vcores</maxResources>
<maxRunningJobs>10</maxRunningJobs>
<weight>1.0</weight>
<schedulingPolicy>fair</schedulingPolicy>
</pool>
<pool
name="data_sum">
<maxResources>
1000 vcores</maxResources>
<maxRunningJobs>10</maxRunningJobs>
<weight>1.0</weight>
<schedulingPolicy>fair</schedulingPolicy>
</pool>
<userMaxAppsDefault>2</userMaxAppsDefault>
<queuePlacementPolicy>
<rule
name="primaryGroup" create="false" />
<rule
name="secondaryGroupExistingQueue" create="false" />
<rule
name="user" create="false"/>
<rule
name="reject"/>
`
`
使用Hadoop ACL 控制訪问权限的更多相关文章
- Java 訪问权限控制:你真的了解 protected keyword吗?
摘要: 在一个类的内部,其成员(包含成员变量和成员方法)是否能被其它类所訪问,取决于该成员的修饰词:而一个类是否能被其它类所訪问,取决于该类的修饰词.Java的类成员訪问权限修饰词有四类:privat ...
- ProFTPD配置匿名登录与文件夹訪问权限控制
对ProFTPDserver配置匿名登录. 查看配置文件proftpd.conf.默认情况下配置文件里的.匿名登录配置User和Group均为ftp. 查看/etc/passwd确认用 ...
- Android 訪问权限清单
Android权限设置 概述 权限 说明 訪问登记属性 android.permission.ACCESS_CHECKIN_PROPERTIES 读取或写入登记check-in数据库属性表的权限 获取 ...
- apache主机(网站)配置,port监听,文件夹訪问权限及分布式权限
前言 一个网站的两个核心信息为: 主机名称(server名/网站名):ServerName server名 网站位置(网站文件夹路径):DocumentRoot "实际物理路径" ...
- [加入用户]解决useradd 用户后没有加入用户Home文件夹的情况,Linux改变文件或文件夹的訪问权限命令,linux改动用户password,usermod的ysuum安装包。飞
usermod的yum安装包: shadow-utils 将nobody用户加入到nogroup 组: usermod -g nogroup nobody cat /etc/passwd|grep n ...
- Objective-C 类属性和方法的訪问权限
OC中提供了4种訪问权限.@private, @public, @protected这三种和其它的C++, Java是一样的,@package这个訪问权限并非Java里的包訪问权限,OC中没有包的概念 ...
- win7 wifi 无Internet訪问权限或者有限的訪问权限
自己家的无线路由器,手机和笔记本都使用正常,可是一台新笔记本连上之后总是提示"有限的訪问权限",无法连公网. 网上的非常多办法都无论用,什么设置静态IP或者重新启动路由,基本都是瞎 ...
- gcc的bug? c++模板类中友元函数的訪问权限问题
原文地址:http://stackoverflow.com/q/23171337/3309790 在c++中,模板类中能够直接定义一个友元函数.该函数拥有訪问该模板类非public成员的权限. 比方: ...
- 用Shell脚本过滤Hadoop中不能訪问的节点
近期使用的一个集群hp1,由于维护集群的人不给力.节点总是过一段时间就掉一两个.今天发现重新启动hadoop时,HDFS已经进入保护模式了. 决定把slaves节点中的无法訪问的节点所有过滤掉.所以写 ...
随机推荐
- VB学习笔记(一)VB操作字符串
在vb中 dim a# 定义a变量为双精度型变量~ #是类型符 % 整型 & 长整型 !单精度 $ 字符型 VB中strconv 的作用 StrConv("要转换的字符串" ...
- BZOJ2870 最长道路tree(并查集+LCA)
题意 (n<=50000) 题解 #include<iostream> #include<cstring> #include<cstdio> #include ...
- BZOJ 5254 [Fjwc2018]红绿灯 (线段树)
题目大意:一个wly从家走到学校要经过n个红绿灯,绿灯持续时间是$g$,红灯是$r$,所有红绿灯同时变红变绿,交通规则和现实中一样,不能抢红灯,两个红绿灯之间道路的长度是$di$,一共$Q$个询问,求 ...
- csv 模块的基本使用
csv 模块专门用于读取和写入 csv 文件内容 以下主要讲在 python2 中的使用,在python3中有不同的地方,我会单独指出来 一般的excel表格可以保存为csv格式,然后就可以使用 cs ...
- linux 系统相关命令
说明:此篇以 Debian ( ubuntu16.04 ) 命令为例 1. tab键默认是不能自动补全命令 apt install bash-completion // 安装完成之后重启系统 2. 虚 ...
- ERROR in xxxx.js from UglifyJS——配置版本混杂版
常规解决套路可以参考这篇:https://segmentfault.com/a/11... 我采用了上面的做法,依然没法解决.我采用的是vue-cli脚手架自动生成的项目结构: vue-cli版本 2 ...
- Linux头文件的设置
GCC/G++会查找系统默认的include和link的路径,以及自己在编译命令中指定的路径. 1.include头文件路径 除了默认的/usr/include, /usr/local/include ...
- 2015 Multi-University Training Contest 3 hdu 5326 Work
Work Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- python __future__ 的几种特性
今天看tensorflow的代码,看到python里面有这么几句: from __future__ import absolute_import from __future__ import divi ...
- YTUOJ-计算该日在本年中是第几天(用户自己定义类型)
题目描写叙述 定义一个结构体变量(包含年.月.日).编写一个函数days,由主函数将年.月.日传递给函数days,计算出该日在本年中是第几天并将结果传回主函数输出. 输入 年月日 输出 当年第几天 例 ...