Hadoop-2.2.0中文文档—— Common - 服务层认证
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Hadoop-2.2.0中文文档—— Common - 服务层认证,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2954字,纯文字阅读大概需要5分钟。
内容图文
![Hadoop-2.2.0中文文档—— Common - 服务层认证](/upload/InfoBanner/zyjiaocheng/1252/50adef5b1a6f4bc68ef9bca7fec852ab.jpg)
目的
此文档描述了如何为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
属性
限制对特定用户/组刷新服务层认证配置的访问能力
。
示例
只允许
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>
原文:http://blog.csdn.net/laozhaokun/article/details/26366273
内容总结
以上是互联网集市为您收集整理的Hadoop-2.2.0中文文档—— Common - 服务层认证全部内容,希望文章能够帮你解决Hadoop-2.2.0中文文档—— Common - 服务层认证所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。