大数据之Hadoop平台(五)Hadoop多用户管理

Hadoop的安全/权限管理 为什么要注重权限管理Hadoop集群装好了,其自身几乎没有对安全/用户权限的配置。用户可以轻易地伪造自己的身份来破坏Hadoop集群,例如,从client伪装成一个hdfs用户删除HDFS中的全部数据,或者伪装成mapred用户提交一个恶意的job。对于商业用户而言,数据安全是最重要的。所以,对于Hadoop集群而言,必须进行一定的安全配置,保证数据和集群的安全。 阅读详情

前言

最近有一些需求,就是需要在hadoop集群中实现多用户管理,因此在网上搜了很多的资料。其中有一种方法感觉还是比较可行,链接:http://cn.soulmachine.me/blog/20140206/大概方式是:先新建一个用户test1,然后把hadoop的安装目录复制一份copy到这个用户test1的目录下,再赋一下权限,然后这个用户就可以向集群提交程序了。后来经过一些列的尝试,发现确实可以实现多用户管理,而且test1用户在hdfs中只能对自己的目录进行操作,但是毕竟资历太浅,只能隐隐约约感觉这种方法可以用,不明其原因。作为一名有轻度强迫症期望能先明白原理而后用的人来说,确实不太可取这种方法。
我也很好奇公司里面都是怎样使用hadoop多用户管理的,肯定会有比较好的解决方法,无奈自己不清楚,因此就用现有的linux和hadoop的一些知识尝试先实践一套方案,整个过程全部是自己摸摸索索,各种尝试出来的,有可能思路上也不是特别好。如有更好的方法,请指教。

一、背景

现有hadoop集群,安装目录在/home/hadoop/hadoop-2.5.1,hadoop的超级用户名就是hadoop,用户组也是hadoop
需要能够加入新的用户如:test1,test2,test3........
而且以后新加入用户的操作能比较简单。
这些test用户能够提交hadoop作业,而且能在hdfs中被指定的位置进行文件操作,他们能够看到本地hadoop安装目录的文件,但是只能看和执行,没有写和删除操作,不能启动和关闭集群,只能运行程序。

二、创建用户

创建新的用户,并且加入hadoop用户组中。
useradd -g hadoop test1
或者把一个已有用户加入hadoop用户组中。
usermod -a -G groups test1

三、本地目录赋权限

这一步的思路是,把具体的权限都赋给hadoop用户组,让用户组里的用户都能够执行下面的各种操作,因此以后新加入用户的时候只要把用户加入hadoop用户组就具备的相应的权限。
实现这一点,需要使用ACL权限管理机制,在此之前需要执行:(后来静下心来思考,情况简单的时候不用ACL就行,直接使用chmod赋权限就可以了)
mount -o remount,acl  /
此时执行mount就会看到: / 目录后面多了个acl,这样就可以使用acl来管理权限了。


把hadoop的安装目录(例如:/home/hadoop)权限设置为超级用户可读写执行,其他用户只能读和执行,即输入如下指令:
setfacl -R -m g:hadoop:rx hadoop 
如果只是这样的话,在test用户提交作业的时候会提示本地的tmp文件没有写入权限,因此现在需要给设定的tmp文件赋予用户组hadoop写的权限
执行:
setfacl -R -m g:hadoop:rwx /home/hadoop/hadoop-2.5.1/tmp

四、hdfs权限管理

执行上面步骤后,就会发现,test1用户已经有了执行hadoop程序的权限,但是不能关集群,不能删除文件。
这时候就要考虑hdfs中的安全问题了,既然是test用户,我不希望test用户有太多的权限,特别是不能对某些特殊的文件进行操作(比如说/nlsde),所以执行如下操作:
hdfs dfs -R -chmod 755 /
但是由于客户端在执行程序的时候会向tmp中写入数据,所有需要给hdfs中的/tmp赋予整个用户组的读写执行操作,因此需要执行:
hdfs dfs -R -chmod 777 /tmp
然后对于保密的文件夹,比如说/nlsde,我再执行:
hdfs dfs -R -chmod 700 /nlsde
这样的话,除了超级用户,就没有人能够访问这些文件了。


然后,我需要有一个文件夹/test,所有的test1,test2,等用户都能访问它,并且以后每个用户的工作环境也在这个目录里面:
hdfs dfs -R -chmod 777 /test
至此,基本环境已经成了,但是每个用户都应该有自己的私有空间,test1需要自己的内容不让别人看到,因此,我们需要给test1一个私有的文件夹。
hdfs dfs -mkdir /test/test1
hdfs dfs -chown test1 /test/test1

但是,这样还是不够的,其他用户照样可以访问这个文件夹,现在需要近一步设置,不让test2这些用户来访问这个文件夹。私有才是王道!
hdfs dfs -chmod 700 /test/test1
此时再看文件信息,其他用户已经不能再访问了。


五、添加新用户

现在添加新的用户测试,为了方面可以写成脚本比较方便:
sudo useradd -g hadoop test2
sudo passwd test2
hdfs dfs -mkdir /test/test2
hdfs dfs -chown test2 /test/test2
hdfs dfs -chmod 700 /test/test2
做些测试,使用test2,看看能不能访问test1的文件夹


Ok,至此hadoop的多用户管理已经基本能够满足我的一些需求了,但是这里面应该还有很多细节没有考虑到,需要在实际中才能发现问题。
我现在迫切地想知道的是,实际中的运维是怎样管理hadoop多用户管理的,是否也是我这种方式,或者是有其他更先进的方法?
通过这次尝试我就发现,自己在某些问题上还是会有一些偏执的,就像在解决多用户方面上,为了达到某个目标,在使用各种权限的操作,这种思路很难理清,能把这一套流程的思路正路下来需要花不少时间。
这篇博客给了我很大的启发:http://tiankefeng0520.iteye.com/blog/2029146
再次看hadoop的官网,发现了类似的方法,看来基本思路是对的:http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/HdfsPermissionsGuide.html

Hadoop大数据平台安装 实验一:Hadoop大数据平台安装 16281002 杜永坤 1、实验目的 在大数据时代,存在很多开源的分布式数据采集、计算、存储技术,本实验将熟悉并搭建几种常用的大数据采集、处理分析技术环境。 《大数据技术》实验一需要在笔记本上搭建 Hadoop 集群,实验报告根据教程对笔记本上创建虚拟机搭建 Hadoop 集群的步骤进行了说明。包含所有需要安装的软件与服务的版本,安装路径,安装方法等。主要流程... 阅读详情

相关推荐

Hadoop大数据平台构建与应用

Hadoop大数据平台构建与应用 第一章 大数据与Hadoop平台技术 文章目录Hadoop大数据平台构建与应用前言1、熟悉 Hadoop平台技术的生态环境 2、熟悉 熟悉大数据关键技术 3、了解 大数据主要技术 4、了解 大数据的特点、应用领域一、大数据时代二、大数据关键技术总结 前言 提示:这里可以添加本文要记录的大概内容: 1、熟悉 Hadoop平台技术的生态环境 2、熟悉 熟悉大数据关键技术 3、了解 大数据主要技术 4、了解 大数据的特点、应用领域 提示:以下是本篇文章正文内容,下面案例可供参

m0_53621696的博客 6138

创建Hadoop普通用户

在进行Hadoop管理时一般是使用普通用户身份,而不是用root,所以这是徐需要我们去创建一个普通用户身份的账号,然后给分配这个操作hadoop的权限 创建账号的指令 设置密码 这里设置root123 或者你也可以自行设置 分配权限 使用chmod 目标用户:目标群组 文件夹名字 进行拥有者和分组修改 这样以后就可以使用jinxing这个账号进行操作hadoop了 ...

1552

基于 Hadoop 的大数据平台搭建实战全解析

通过本文详细的阐述,我们深入探索了基于 Hadoop 的大数据平台搭建过程。从精心准备环境,包括硬件的合理选型、软件的精准配置、网络的优化设置以及用户权限的细致管理;到严谨安装与配置 Hadoop,涵盖下载安装包、解压、环境变量设定以及核心文件的精确配置,并确保从节点的正确配置;再到成功启动集群并进行全面测试,以及对常见问题提供有效的解决策略,我们逐步构建起一个功能完备的 Hadoop 大数据平台。搭建 Hadoop 大数据平台是开启大数据之旅的关键一步,但这仅仅是个开始。

lcy159357LCY的博客 1776

Hadoop权限管理

摘自:http://dongxicheng.org/mapreduce/hadoop-permission-management/ 1. 介绍 本文介绍的Hadoop权限管理包括以下几个模块: (1) 用户分组管理。用于按组为单位组织管理,某个用户只能向固定分组中提交作业,只能使用固定分组中配置的资源;同时可以限制每个用户提交的作业数,使用的资源量等 (2) 作业管理。包括作业提交

不精通则死 2127

Hadoop大数据平台开发与案例分析

关于举办“Hadoop大数据平台开发与案例分析 ”高级工程师 一、课程介绍 1.需求理解 Hadoop 设计之初的目标就定位于高可靠性、高可拓展性、高容错性和高效性,正是这些设计上与生俱来的优点,才使得Hadoop 一出现就受到众多大公司的青睐,同时也引起了研究界的普遍关注。 对电信运营商而言,用户上网日志包含了大量用户个性化需求、喜好信息,对其进行分析和挖掘...

spark798的博客 5782

大数据平台,Hadoop集群架构,概述及原理

大数据平台,Hadoop集群架构,概述及原理,通俗易懂,全程无废话。

无求道贾的博客 6219

大数据之Hadoop平台:Hadoop多用户管理

大数据之Hadoop平台:Hadoop多用户管理         前言       最近有一些需求,就是需要在hadoop集群中实现多用户管理,因此在网上搜了很多的资料。其中有一种方法感觉还是比较可行,链 接:http://cn.soulmachine.me/blog/20140206/大概方式是:先新建一个用户test1,然后把hadoop的安装 目录复

cswang 1603

基于Hadoop的高校教学管理平台设计与实现

摘要: 随着信息化的推进,高校已经建设了很多信息化系统,积累了大量的数据。如何从海量数据中,挖掘有用、有价值的信息,支撑智慧校园的建设,成为需要迫切解决的问题。文中就高校大数据平台的关键技术和架构进行阐述,结合高校实际情况,设计高校大数据平台架构,通过搭建Hadoop集群环境,以业务系统和平台之间的数据交互验证平台设计的可行性和优势。通过研究,文中以高校建设大数据平台提出一种设计方案,为高校信息化建设提供一种新思路。 关键词:大数据;Hadoop;分布式计算;高校信息化; ...

qq_50923422的博客 3757

关于Hadoop多用户管理支持客户端远程操作的理论总结

1、问题 Hadoop客户端如何配置可远程操作Hadoop;Hadoop多用户情况下,是如何管理权限并分配存储空间和计算能力,保证集群的稳定。 2、Hadoop平台 要理解客户端如何通过指定用户远程操作hadoop集群,这里先理解下hadoop平台的部署架构。Hadoop是大数据分布式处理的软件框架,集成MapReduce分布式编程模型和HDFS分布式文件存储系统。MapReduce将执作业

医疗影像检索 6176

大数据(Bigdata)常用技术栈

提起大数据,不得不提由IBM提出的关于大数据的5V特点:Volume(大量)、Velocity(高速)、Variety(多样)、Value(低价值密度)、Veracity(真实性),而对于大数据领域的从业人员的日常工作也与这5V密切相关。大数据技术在过去的几十年中取得非常迅速的发展,尤以Hadoop和Spark最为突出,已构建起庞大的技术生态体系圈 首先通过一张图来了解一下目前大数据领域常用的一些技术,当然大数据发展至今所涉及技术远不止这些。 BigData Stack: 下面分不同层介绍各个技术,当然各个

weixin_45417821的博客 6339

大数据开发之CDH使用搭建大数据平台

介绍CDH,并介绍使用其搭建大数据平台的详细步骤

y_wang_的博客 6599

探索大数据平台:goldlone的bigdata_platform

探索大数据平台:goldlone的bigdata_platform 去发现同类优质开源项目:https://gitcode.com/ 项目简介 是一个开源的大数据处理和分析框架,旨在简化大数据项目的开发、部署和运维过程。该项目提供了全面的数据集成、存储、计算、查询与分析功能,适用于各种规模的企业和开发者,帮助他们更好地管理和利用海量数据。 技术分析 1. 基于Hadoop的分布式架构 bigdat...

gitblog_00073的博客 1262

【Linux 从基础到进阶】Hadoop 大数据平台搭建与优化

分布式文件系统,用于存储大数据集。资源管理器,负责集群资源的分配。分布式数据处理模型,负责将数据划分为多个任务进行并行处理。提供了 Hadoop 各个模块的通用工具和功能。Hadoop 可以在单节点模式(Standalone Mode)下运行,用于开发与调试;也可以在伪分布式模式(Pseudo-distributed Mode)和完全分布式模式(Fully-distributed Mode)下运行,后者是生产环境的主要部署模式。

weixin_39372311的博客 1579

Hadoop与大数据平台搭建指南

Hadoop Distributed File System (HDFS) 是Hadoop的核心组件之一,旨在可靠地存储大规模数据集。HDFS采用了主/从(Master/Slave)架构模型,由一个NameNode(主节点)和多个DataNodes(从节点)组成。NameNode负责管理文件系统命名空间和客户端对文件的访问;DataNodes则存储实际数据。HDFS设计了冗余存储机制来保证数据的高可靠性,它将文件分割成一系列的块(block),默认情况下,每个块的大小是128MB。

weixin_33363025的博客 1212

大数据,Hadoop,HDFS的简单介绍

全称为HadoopUserExperience,是一个开源的ApacheHadoopUI系统,它为用户提供了一个在浏览器端与Hadoop集群进行交互的Web控制台.它提供了一个功能强大的SQL编辑器,用户可以编写、执行和调试SQL查询,支持自动完成、语法高亮和查询结果可视化。Hadoop不仅仅是一个单一的软件,它是一个生态系统,意味着它包含了一系列的相关工具和框架,这些工具和框架可以相互配合使用,以支持不同类型的数据处理任务。数据采集,数据存储,数据清洗,数据分析,数据可视化。

weixin_40121264的博客 1386

Hadoop+Spark构建大数据日志分析平台的完整指南

随着互联网的快速发展,各类系统产生的日志数据量呈爆炸式增长。这些日志数据蕴含着丰富的信息,如用户行为、系统运行状态等。对这些日志数据进行有效的分析,可以帮助企业做出更明智的决策,提升系统性能和用户体验。本指南的目的是帮助读者利用Hadoop和Spark构建一个高效、可扩展的大数据日志分析平台,涵盖从数据采集、存储、处理到分析的全过程。

AI天才研究院 1393

SZT-bigdata完整部署教程:从零搭建大数据集群

SZT-bigdata是深圳地铁大数据客流分析系统,本文将为您提供从零开始搭建SZT-bigdata大数据集群的完整部署教程,帮助您快速掌握部署要点和关键步骤。 ## 一、环境准备与集群规划 在开始部署SZT-bigdata大数据集群之前,需要做好环境准备和集群规划工作。确保服务器满足硬件和软件要求,合理规划集群节点数量和角色分配。 ### 1.1 硬件与软件要求 硬件方面,建议每台服务器

gitblog_00229的博客 1242

让 AI 变聪明的 20 条指令:如何让大模型回答得更精准、更专业、更实事求是

让 AI 变聪明,本质上不是写几句神奇咒语,而是把你的任务表达得更清楚,把事实标准设得更严格,把输出格式规定得更明确,把不确定性管理得更认真,把历史对话利用得更充分。大模型的强项是语言生成、信息组织、模式归纳和方案扩展;弱项是事实核验、实时更新、责任判断和对模糊意图的准确猜测。好的指令,就是在用人的判断弥补模型的弱点,让模型把强项发挥在正确的地方。

Sumarua的博客 1486
上一篇: 大数据之Hadoop平台(四)Centos6.5(64bit)Hadoop2.5.1、Zookeeper3.4.6、Hbase0.98.6.1安装使用过程中错误及解决方法
下一篇: Linux系统之工具篇(二)集群管理软件clustershell
毕加索爱编程
博客等级 码龄12年 17粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值