目的

此文档描写叙述了怎样为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 属性限制对特定用户/组刷新服务层认证配置的訪问能力 。

演示样例

仅仅同意 alicebob 和在 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 - 服务层认证的更多相关文章

  1. Hadoop-2.2.0中文文档—— Common - Native Libraries Guide

    概览 这个新手教程描写叙述了native(本地?原生?)hadoop库,包括了一小部分关于native hadoop共享库的讨论. This guide describes the native ha ...

  2. Hadoop-2.2.0中文文档—— Common - CLI MiniCluster

    目的 使用 CLI MiniCluster, 用户能够简单地仅仅用一个命令就启动或关闭一个单一节点的Hadoop集群,不须要设置不论什么环境变量或管理配置文件. CLI MiniCluster 同一时 ...

  3. Hadoop-2.2.0中文文档—— Common - 超级用户模拟别的用户

    简单介绍 此文档描写叙述了一个超级用户怎样在安全的方式下以还有一用户的名义提交作业或訪问hdfs. Use Case 下一部分描写叙述的的代码演示样例对此用户用例是可用的. 一个username为's ...

  4. Apache Spark 2.2.0 中文文档

    Apache Spark 2.2.0 中文文档 - 快速入门 | ApacheCN Geekhoo 关注 2017.09.20 13:55* 字数 2062 阅读 13评论 0喜欢 1 快速入门 使用 ...

  5. Apache Storm 1.1.0 中文文档 | ApacheCN

    前言 Apache Storm 是一个免费的,开源的,分布式的实时计算系统. 官方文档: http://storm.apache.org 中文文档: http://storm.apachecn.org ...

  6. Django2.0中文文档

    title: Django2.0中文文档 tags: Python,Django,入沐三分 grammar_cjkRuby: true --- Django2.0版本已经发布了,我们先来看一个图片 从 ...

  7. webpack4.0中文文档踩坑记录

    一直没有正儿八经去看过webpack4.0的文档,前段时间工作比较轻松,于是就有了此文...面都这样一个问题:请问在您的开发生涯中,令你最痛苦最无奈的是什么?小生的回答只有一个:“阅读那些令人发指的文 ...

  8. Apache Spark 2.2.0 中文文档 - Spark SQL, DataFrames and Datasets Guide | ApacheCN

    Spark SQL, DataFrames and Datasets Guide Overview SQL Datasets and DataFrames 开始入门 起始点: SparkSession ...

  9. Apache Spark 2.2.0 中文文档 - Spark SQL, DataFrames and Datasets

    Spark SQL, DataFrames and Datasets Guide Overview SQL Datasets and DataFrames 开始入门 起始点: SparkSession ...

随机推荐

  1. Python零散收集:

    Python零散收集 转义字符 描述 \(在行尾时) 续行符 \\ 反斜杠符号 \’ 单引号 \” 双引号 \a 响铃 \b 退格(Backspace) \e 转义 \000 空 \n 换行 \v 纵 ...

  2. ALV 行列 颜色

    1)颜色含义 1:海蓝:2:浅清:3:黄色:4:浅蓝:5:青色:6:红色:7:橙色.(1)首位为主颜色:(2)次位为辅助颜色:(3)末位为0时,表示首位数字表为表格的底色:末位为1时,则表示以1为底色 ...

  3. 第三章 传奇的开始--Delphi(附读书笔记)

    第三章 传奇的开始--Delphi "是惊世之作的Delphi让Borland重新站了起来,没有当初的Delphi,就没有今日的Borland!" "是Turbo Pas ...

  4. 带圆角的EditText

    转载请注明出处:http://blog.csdn.net/krislight/article 1.定义一个Drawable <?xml version="1.0" encod ...

  5. ASP.NET中验证控件的使用

    转自:http://www.cnblogs.com/yangmingming/archive/2010/03/09/1682006.html 前言: 前几日,无奈用JS判断控件的有效性,发现的确是一件 ...

  6. Enter键提交表单

    input type="submit"在360浏览器上不能提交   用了这个 <input type="button" class="btn b ...

  7. ManagerDay-1

    初做管理,没有任何管理经验的我,有点紧张,在来公司之前,脑子里一直在想能不能胜任这份工作. 想着能否做出合格的流程图,像样的需规.我该如何和组内开发人员打好交道.报价预算该如何做,这些都交织在脑内显得 ...

  8. [MarsZ]ThinkPHP项目实战总结

    本文原word格式百度云盘下载地址: http://pan.baidu.com/s/1qYqZFkg 综述 2 需求 2 作者 2 系统一览 2 Unity3d客户端 2 PHP后台 4 准备 6 X ...

  9. Android开发必知--WebView加载html5实现炫酷引导页面

    大多数人都知道,一个APP的引导页面还是挺重要的,不过要想通过原生的Android代码做出一个非常炫酷的引导页相对还是比较复杂的,正巧html5在制作炫酷动画网页方面比较给力,我们不妨先利用html5 ...

  10. Android学习笔记(十一)BroadcastReceiver动态注册、注销示例

    在上一篇博文中简单介绍了一下BroadcastReceiver的相关知识点,本篇举一个在代码中动态的注册.注销BroadcastReceiver的栗子. 1.首先创建一个MyReceiver并继承Br ...