`

Hadoop】集群之外的机器如何连接到集群并与HDFS交互,提交作业给Hadoop集群

阅读更多

集群以外的机器如何访问Hadoop集群,并像集群中提交作业和传送数据
(1)首先,在机器上安装nutch或者hadoop
(2)配置两个文件
hadoop-site.xml:
<configuration>

<property>
 <name>fs.default.name</name>
 <value>hdfs://gc04vm12:9000</value>
 <description> </description>
</property>

<property>
     <name>mapred.job.tracker</name>
 <value>gc04vm12:9001</value>
 <description> </description>
</property>

</configuration>

(3)这样便能执行命令,查看集群状态,向集群提交作业


(4)hdfs中的用户
使用root登陆而hadoop中没有创建root用户时,使用如下命令时,查看到的就不是nutch用户主目录 /user/root了
[root@gc03vm12 nutch-1.0]# bin/hadoop dfs -ls   执行此命令时,即是列出/user/root(root用户主目录)目录下的文件或目录
ls: Cannot access .: No such file or directory.  没有此目录

[root@gc03vm12 nutch-1.0]# bin/hadoop dfs -ls /
Found 3 items
drwxr-xr-x   - nutch supergroup          0 2010-05-21 00:42 /tmp
drwxr-xr-x   - nutch supergroup          0 2010-05-21 00:53 /user
drwxr-xr-x   - nutch supergroup          0 2010-05-21 00:55 /usr    这个是什么?

[root@gc03vm12 nutch-1.0]# bin/hadoop dfs -mkdir x  主目录(/user/root)中创建x目录,提示以下信息
mkdir: org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="user":nutch:supergroup:rwxr-xr-x
这是因为root用户对/user/目录没有写权限(drwxr-xr-x   - nutch supergroup          0 2010-05-21 00:53 /user)


hdfs中的nutch用户是启动hadoop集群的这个用户,当客户机中也存在nutch用户时,登陆后访问hdfs时,进入的是home目录(/user/nutch)。
hdfs中文件和目录的权限类似linux,可以修改其权限,改变其所属组

nutch用户格式化namenode,启动hadoop集群(会用到nutch用户的公钥信息,ssh配置)后,执行命令,
[nutch@gc03vm12 nutch-1.0]# bin/hadoop dfs -ls   执行此命令时,即是列出/user/nutch(nutch用户主目录)目录下的文件或目录
ls: Cannot access .: No such file or directory.
因为没有/user/nutch目录,所以不能访问,而此时若创建一个文件,如使用以下命令
[nutch@gc03vm12 nutch-1.0]# bin/hadoop dfs -mkdir x  则可以顺利执行,此时它将创建/user/nutch/x目录。
而使用root用户不行,是因为 root用户对/user/目录没有写权限。

那么如何创建一个root用户呢,可以这样做
超级用户nutch在hdfs中创建目录/user/root,即 bin/hadoop dfs -mkdir /user/root
更改/user/root目录所属用户和组, bin/hadoop dfs -chown -R root:root /user/root (若此处没有指定组,则默认root属于supergroup组, bin/hadoop dfs -chown -R root /user/root)
这样就相当于在hdfs中创建了用户root,组root;

用户权限和Linux类似,nutch是超级用户。

例如nutch在root的home目录下创建目录s,则s的权限如下,属于nutch,组是root
drwxr-xr-x   - nutch root          0 2010-05-21 04:41 /user/root/s
root用户此时就不能写s目录了
[root@gc04vm14 nutch-1.0]# bin/hadoop dfs -mkdir s/x
mkdir: org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="s":nutch:root:rwxr-xr-x


root用户属于root组,并且执行作业,会提示错误,如下
[root@gc03vm12 nutch-1.0]# bin/nutch crawl  /user/nutch/urls -dir data2 -depth 5 -topN 8
提示如下错误
org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="tmp":nutch:supergroup:rwxr-xr-x

这是因为root用户对/tmp目录(hdfs目录)没有写权限,因为作业执行时,会在/tmp目录下生成相应的job文件,
/tmp的权限如下:
drwxr-xr-x   - nutch supergroup          0 2010-05-21 00:42 /tmp

因此非超级用户提交作业时,用户问题是一个很麻烦的问题

注:

hadoop有些命令只能在namenode上执行

 

本文来自CSDN博客:http://blog.csdn.net/zklth/archive/2010/05/24/5618942.aspx

分享到:
评论

相关推荐

    Hadoop完全分布式配置.txt

    因为不需要与其他节点交互,单机模式就不使用HDFS,也不加载任何Hadoop的守护进程。该模式主要用于开发调试MapReduce程序的应用逻辑。 b. 伪分布模式 Hadoop守护进程运行在本地机器上,模拟一个小规模的的集群。...

    徐老师大数据 Hadoop架构完全分析课程 Hadoop入门学习视频教程

    -016.Hadoop配置完全分布模式之克隆客户机与交互模式切换与hosts文件修改与ssh远程无密登录.mp4 -017.Hadoop配置完全分布模式之IP设置与远程拷贝与格式化启动.mp4 -018.Hadoop在Win7下免Cygwin环境安装伪分布式与第...

    athena:通过本地命令行方便与Hadoop集群进行交互

    Athena是一种方便的命令行工具,使您可以与本地终端进行交互并从本地终端查询Hadoop集群,而无需远程SSH会话。 Athena通过提供全面的查询功能和方便的日常任务自动化功能,通过本地命令行的便捷性,使每个数据科学...

    Spark大型集群上的快速和通用数据处理架构

    Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询...

    Hadoop实战(第2版)

    1.2.4 运行MapReduce 作业 1.3 本章小结第2 部分 数据逻辑.2 将数据导入导出Hadoop.2.1 导入导出的关键要素2.2 将数据导入Hadoop .2.2.1 将日志文件导入Hadoop技术点1 使用Flume 将系统日志文件...

    Apache Hadoop---Spark.docx

    Spark是一种与Hadoop相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使Spark在某些工作负载方面表现得更加优越,换句话说,Spark启用了内存分布数据集,除了能够提供交互式查询外,它...

    spark-3.5.1-bin-hadoop3.tgz

    Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询...

    spark-3.4.3-bin-hadoop3.tgz

    Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询...

    大数据技术之Hadoop介绍.pdf

    Hadoop框架设计旨在从单⼀服务器扩展到上千台机器,每⼀台机器能够提供本地计算和存储。 4.1 Hadoop架构 Hadoop框架包括以下四个模块: Hadoop通⽤:这些模块是其他Hadoop模块所需要的Java类库和⼯具。这些类库提供...

    hive-exec-2.1.1.jar

    这个组件负责解析 SQL 查询,生成执行计划,并协调与 Hadoop 集群的交互以执行这些计划。它还包括了用于数据处理的逻辑和与 Hadoop 组件(如 MapReduce、Tez 或 Spark)的集成。 具体来说,hive-exec 可能包括以下...

    大数据开源框架集锦.pdf

    所有数据权限 Sentry Hadoop集群元数据和数据存储提供集中、细粒度的访问控制项⽬ 14 数据可视化 Kibana ⽤于和 Elasticsearch ⼀起使⽤的开源的分析与可视化平台 15 数据挖掘 Mahout 基于hadoop的机器学习和数据...

    hadoop-mongodb:如何使用 SQL 查询 MongoDB

    使用 SQL 查询带有 HIVE 的 MongoDB 该... 在这个例子中,有两种模式: Shell 模式:您可以在交互式 shell 中编写查询 服务器模式:您可以启动服务器部分(Hadoop、Hive),客户端应用程序将使用 JDBC 驱动程序连接到此

    spark 2.0 详解

    Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询...

    Spark大数据处理:技术、应用与性能优化

    Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询...

    Spark快速数据处理 PDF电子书下载 带书签目录 完整版

    为了和Hadoop分布式文件系统(HDFS)交互,需要在编译源码前设定相应的集群中所使用的Hadoop版本。对于0.7版本的Spark,已经编译好的压缩包依赖的是1.0.4版本的Hadoop。如果想更深入地学习Spark,推荐自编译基本源码,...

    Spark官方中文文档

    Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询...

    Spark亚太研究院-Spark实战高手之路

    Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询...

    spark Core RDD持久化详解

    Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询...

    1.1.1 Spark基础入门

    Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询...

    大数据基础知识入门.pdf

    GFS—-&gt;HDFS Google MapReduce—-&gt;Hadoop MapReduce BigTable—-&gt;HBase Hadoop技术介绍 Hadoop的架构 Cloudera Manger Ambari 和 Cloudera Manger都是基于Web的工具,支持 Apache Hadoop集群的供应、管理 和 监 控 ...

Global site tag (gtag.js) - Google Analytics