Hadoop-2.2.0中文文档—— Common - 服务层认证
目的
此文档描写叙述了怎样为Hadoop配置和管理 Service Level Authorization 。
预备条件
确保已经安装Hadoop,配置和设置都正确了。
很多其它细节,请看:* 首次使用者的单节点设置 * 大的、分布式集群的集群设置。
概览
Service Level Authorization 是一个必要的初始认证机制。其确保client连接到一个有必要的、预配置的、权限和认证服务的特定的Hadoop服务。比如,一个 MapReduce 集群能够使用这个机制同意一个配置了的用户/组列表提交作业。
$HADOOP_CONF_DIR/hadoop-policy.xml配置文件被用来定义多种Hadoop服务的訪问控制列表。
Service Level Authorization 比别的訪问控制检查如文件权限检查、作业队列上的訪问控制等做地更早。
配置
这部分描写叙述了怎样配置服务层认证,通过配置文件 $HADOOP_CONF_DIR/hadoop-policy.xml。
同意服务层认证
默认地,服务层认证对Hadoop是不能用的。
要启用它。在配置文件$HADOOP_CONF_DIR/core-site.xml中合理地设置属性
hadoop.security.authorization 为 true。
Hadoop 服务和配置属性
这部分描写叙述了多种Hadoop服务和他们的配置部分:
属性 | 服务 |
---|---|
security.client.protocol.acl | ACL for ClientProtocol, 用户代码通过分布式文件系统来使用 |
security.client.datanode.protocol.acl | ACL for ClientDatanodeProtocol, the client-to-datanode protocol for block recovery. |
security.datanode.protocol.acl | ACL for DatanodeProtocol, 用于datanodes 与 namenode 通信 |
security.inter.datanode.protocol.acl | ACL for InterDatanodeProtocol, inter-datanode 协议。用于更新生成的时间戳 |
security.namenode.protocol.acl | ACL for NamenodeProtocol, 用于secondary namenode 与 namenode 通信的协议 |
security.inter.tracker.protocol.acl | ACL for InterTrackerProtocol, 用于 tasktrackers 与 jobtracker 通信的协议 |
security.job.submission.protocol.acl | ACL for JobSubmissionProtocol, 用于 job client与 jobtracker 通信,以提交作业,查询作业状态 |
security.task.umbilical.protocol.acl | ACL for TaskUmbilicalProtocol,用于map 和 reduce 任务与父级 tasktracker通信 |
security.refresh.policy.protocol.acl | ACL for RefreshAuthorizationPolicyProtocol, 用于 dfsadmin 和 mradmin 命令以实时刷新安全策略 |
security.ha.service.protocol.acl | ACL for HAService protocol ,用于 HAAdmin 管理namenode的活着的和等待的状态 |
訪问控制列表
$HADOOP_CONF_DIR/hadoop-policy.xml
为每个Hadoop服务定义一个訪问控制列表。
每个訪问控制列表有一个简单的格式:
列表中的用户和组名字都以逗号分隔。两列以空格分隔。
演示样例: user1,user2
.
group1,group2
假设仅仅有一列组被提供,相等地一个逗号分隔的用户列跟在空格后面或并不意味着仅仅有给定的用户,则在一行的开头加入一个空格。(?)
一个特殊的 *
说明全部的用户都有权限訪问服务。
刷新 Service Level Authorization 配置
NameNode 和JobTracker的服务层认证配置能够在不重新启动不论什么一个Hadoop管理守护进程的情况下被改动。集群管理者能够在管理节点上和命令NameNode
和 JobTracker通过-refreshServiceAcl切换到dfsadmin和mradmin命令又一次加载他们的相关配置来改变$HADOOP_CONF_DIR/hadoop-policy.xml
。
刷新 NameNode上的服务层认证配置:
- $ bin/hadoop dfsadmin -refreshServiceAcl
刷新 JobTracker上的服务层认证配置:
- $ bin/hadoop mradmin -refreshServiceAcl
当然,也能够在 $HADOOP_CONF_DIR/hadoop-policy.xml
中用 security.refresh.policy.protocol.acl
属性限制对特定用户/组刷新服务层认证配置的訪问能力 。
演示样例
仅仅同意 alice
, bob
和在 mapreduce
组中的用户提交作业到
MapReduce 集群:
- <property>
- <name>security.job.submission.protocol.acl</name>
- <value>alice,bob mapreduce</value>
- </property>
仅仅同意 DataNodes 执行,当属于datanodes组的用户与NameNode通信:
- <property>
- <name>security.datanode.protocol.acl</name>
- <value>datanodes</value>
- </property>
同意不论什么用户作为 DFSClient与 HDFS 集群通话 :
- <property>
- <name>security.client.protocol.acl</name>
- <value>*</value>
- </property>
Hadoop-2.2.0中文文档—— Common - 服务层认证的更多相关文章
- Hadoop-2.2.0中文文档—— Common - Native Libraries Guide
概览 这个新手教程描写叙述了native(本地?原生?)hadoop库,包括了一小部分关于native hadoop共享库的讨论. This guide describes the native ha ...
- Hadoop-2.2.0中文文档—— Common - CLI MiniCluster
目的 使用 CLI MiniCluster, 用户能够简单地仅仅用一个命令就启动或关闭一个单一节点的Hadoop集群,不须要设置不论什么环境变量或管理配置文件. CLI MiniCluster 同一时 ...
- Hadoop-2.2.0中文文档—— Common - 超级用户模拟别的用户
简单介绍 此文档描写叙述了一个超级用户怎样在安全的方式下以还有一用户的名义提交作业或訪问hdfs. Use Case 下一部分描写叙述的的代码演示样例对此用户用例是可用的. 一个username为's ...
- Apache Spark 2.2.0 中文文档
Apache Spark 2.2.0 中文文档 - 快速入门 | ApacheCN Geekhoo 关注 2017.09.20 13:55* 字数 2062 阅读 13评论 0喜欢 1 快速入门 使用 ...
- Apache Storm 1.1.0 中文文档 | ApacheCN
前言 Apache Storm 是一个免费的,开源的,分布式的实时计算系统. 官方文档: http://storm.apache.org 中文文档: http://storm.apachecn.org ...
- Django2.0中文文档
title: Django2.0中文文档 tags: Python,Django,入沐三分 grammar_cjkRuby: true --- Django2.0版本已经发布了,我们先来看一个图片 从 ...
- webpack4.0中文文档踩坑记录
一直没有正儿八经去看过webpack4.0的文档,前段时间工作比较轻松,于是就有了此文...面都这样一个问题:请问在您的开发生涯中,令你最痛苦最无奈的是什么?小生的回答只有一个:“阅读那些令人发指的文 ...
- Apache Spark 2.2.0 中文文档 - Spark SQL, DataFrames and Datasets Guide | ApacheCN
Spark SQL, DataFrames and Datasets Guide Overview SQL Datasets and DataFrames 开始入门 起始点: SparkSession ...
- Apache Spark 2.2.0 中文文档 - Spark SQL, DataFrames and Datasets
Spark SQL, DataFrames and Datasets Guide Overview SQL Datasets and DataFrames 开始入门 起始点: SparkSession ...
随机推荐
- python中的字典(dict),列表(list),元组(tuple)
一,List:列表 python内置的一种数据类型是列表:list.list是一种有序的数据集合,可以随意的添加和删除其中的数据.比如列出班里所有的同学的名字,列出所有工厂员工的工号等都是可以用到列表 ...
- 标准MD5加密算法
标准MD5加密算法: public class Md5 { public static String getMd5(String s) { char hexDigits[] = { '0', '1', ...
- 李洪强iOS开发-网络新闻获取数据思路回顾
李洪强iOS开发-网络新闻获取数据思路回顾 01 创建一个继承自AFHTTPSessionManager的工具类:LHQNetworkTool 用来发送网络请求获取数据 1.1 定义类方法返回单例对 ...
- OA学习笔记-006-SPRING2.5与hibernate3.5整合
一.为什么要整合 1,管理SessionFactory实例(只需要一个) 2,声明式事务管理 spirng的作用 IOC 管理对象.. AOP 事务管理.. 二.整合步骤 1.整合sessionFac ...
- redis key和value数据类型
exists key del key1 key2 Redis 的vauleredis 提供五种数据类型:string,hash,list,set 及sorted set. string 是最基本的类型 ...
- linux和windows双系统导致的时间日
我的博客:www.while0.com系统中有两种时间区分,一为UTC,另一为LT(地方时)两者的区别为时区不同,UTC就是0时区的时间,而我们当地是用的北京时间要慢8小时.linux采用的UTC时间 ...
- C# WinForm捕获未处理的异常
using System; using System.Collections.Generic; using System.Windows.Forms; using System.IO; namespa ...
- 【转】三十三、Android给ListView设置分割线Divider样式
原文网址:http://www.cnblogs.com/linjiqin/archive/2011/11/12/2246349.html 给ListView设置分割线,只需设置如下两个属性: andr ...
- 16位cpu下主引导扇区及用户程序的编写
一些约定 主引导扇区代码(0面0道1扇区)加载至0x07c00处 用户程序头部代码需包含以下信息:程序总长度.程序入口.重定位表等信息 用户程序 当虚拟机启动时,在屏幕上显示以下两句话: This i ...
- ARM学习笔记13——LED驱动程序设计
首先我们要根据开发板原理图得到控制LED灯的引脚是哪个,我们现在以LED1为例,我们已经知道LED1由S5PV210的GPC1_3控制,因此我们按如下步骤进行: 第一步是配制S5PV210的GPC1_ ...