Hadoop-2.2.0中文文档—— Common - 服务层认证

目的

此文档描述了如何为Hadoop配置和管理 Service Level Authorization 。

预备条件

确保已经安装Hadoop,配置和设置都正确了。更多细节,请看:* 首次使用者的单节点设置 * 大的、分布式集群的集群设置。

概览

Service Level Authorization 是一个必要的初始认证机制,其确保客户端连接到一个有必要的、预配置的、权限和认证服务的特定的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 客户端与 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 - 服务层认证

时间: 2024-10-28 08:13:42

Hadoop-2.2.0中文文档—— Common - 服务层认证的相关文章

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

目的 使用 CLI MiniCluster, 用户可以简单地只用一个命令就启动或关闭一个单一节点的Hadoop集群,不需要设置任何环境变量或管理配置文件. CLI MiniCluster 同时启动一个 YARN/MapReduce 和 HDFS 集群. 这对那些想要快速体验一个真实的Hadoop集群或是测试依赖明显的Hadoop函数的非Java程序 的用户很有用. Hadoop Tarball 你需要从发布页获取tar包.或者,你可以从源码中自己编译. $ mvn clean install -

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

概览 这个入门教程描述了native(本地?原生?)hadoop库,包含了一小部分关于native hadoop共享库的讨论. This guide describes the native hadoop library and includes a small discussion about native shared libraries. 注意: 根据你的环境,词组 "native libraries" 可能会变成 *.so,这样你就需要编译,然后,要是词组 "nati

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

pcDuino3下支持mmc启动,官方的Uboot是采用SPL框架实现的,因为内部的SRAM空间达到32K,我们完全可以在这32K空间内编写一个完整可用小巧的bootloader来完成引导Linux kernel的目的. 我们首先介绍下SPL框架,可以先看下<GNU ARM汇编--(十八)u-boot-采用nand_spl方式的启动方法>和<GNU ARM汇编--(十九)u-boot-nand-spl启动过程分析>,NAND_SPL也算是SPL框架下的一种模式. 当使用Nand f

Hadoop-2.2.0中文文档—— 从Hadoop 1.x 迁移至 Hadoop 2.x

简介 本文档对从 Apache Hadoop 1.x 迁移他们的Apache Hadoop MapReduce 应用到 Apache Hadoop 2.x 的用户提供了一些信息. 在 Apache Hadoop 2.x 中,我们已经把资源管理功能放入 分布式应用管理框架 的Apache Hadoop YARN,而 Apache Hadoop MapReduce (亦称 MRv2) 保持为一个纯分布式计算框架. 总之,之前的 MapReduce 运行时 (亦称 MRv1) 已经被重用并且不会有重大

Apache Storm 1.1.0 中文文档 | ApacheCN

前言  Apache Storm 是一个免费的,开源的,分布式的实时计算系统. 官方文档: http://storm.apache.org 中文文档: http://storm.apachecn.org ApacheCN 最近组织了翻译 Storm 1.1.0 中文文档 的活动,整体 翻译进度 为 96%. 感谢大家参与到该活动中来 感谢无私奉献的 贡献者,才有了这份 Storm 1.1.0 中文文档 感谢一路有你的陪伴,我们才可以做的更好,走的更快,走的更远,我们一直在努力 ... 网页地址:

Hadoop-2.2.0中文文档——MapReduce 下一代 -——集群配置

目的 这份文档描写叙述了怎样安装.配置和管理从几个节点到有数千个节点的Hadoop集群. 玩的话,你可能想先在单机上安装.(看单节点配置). 准备 从Apache镜像上下载一个Hadoop的稳定版本号. 安装 安装一个Hadoop集群,一般包含分发软件到全部集群中的机器上或者是安装RPMs. 一般地,集群中的一台机器被唯一地设计成NameNode,还有一台机器被设置成ResourceManager.这是master(主). 集群中剩下的机器作为DataNode 和 NodeManager.这些是

Hadoop-2.2.0中文文档——Common-Hadoop HTTP web控制台认证

简介 此文档描述了如何配置Hadoop HTTP web控制台,去要求用户认证. 默认地,Hadoop HTTP web控制台(JobTracker, NameNode, TaskTrackers 和 DataNodes)不需要任何认证就允许访问. 与Hadoop RPC相似, Hadoop HTTP web控制台可以被配置为需要使用HTTP SPNEGO协议认证(由FireFox或IE支持). 还有,Hadoop HTTP web控制台同等地支持Hadoop's Pseudo/Simple 认

Hadoop-2.2.0中文文档—— MapReduce 下一代 - Encrypted Shuffle

简介 Encrypted Shuffle capability (加密洗牌功能?)允许用HTTPS 和 可选的客户端验证 (也称作双向的 HTTPS, 或有客户端证书的 HTTPS) 去加密 MapReduce shuffle.它包括: 在HTTP 和 HTTPS 之间绑定 shuffle 的一个 Hadoop 配置 用来指定 keystore 和 truststore 属性的Hadoop配置(位置,类型,密码) 用于 shuffle 服务和reducer任务去取 shuffle 数据. 在集群

Hadoop-2.2.0中文文档—— MapReduce 下一代 -- 公平调度器

目的 此文档描述了 FairScheduler, Hadoop 的一个可插入式的调度器,允许 YARN 应用在一个大集群中公平地共享资源. 简介 公平调度是一种分配资源给应用的方法,以致到最后,平均上所有应用获得相等的资源.  Hadoop NextGen 能够调度多种类型的资源.默认的, Fair Scheduler 仅以内存为基础作公平调度决策.可以用Ghodsi 等开发的 Dominant Resource Fairness 概念配置调度内存和CPU.仅有一个应用运行时,这个应用使用整个集