hadoop配置文件详解、安装及相关操作

 

一、      Hadoop伪分布配置

1. 在conf/hadoop-env.sh文件中增加:export JAVA_HOME=/home/Java/jdk1.6

           2.  在conf/core-site.xml文件中增加如下内容:

<!--  fs.default.name - 这是一个描述集群中NameNode结点的URI(包括协议、主机名称、端口号),集群里面的每一台机器都需要知道NameNode的地址。DataNode结点会先在NameNode上注册,这样它们的数据才可以被使用。独立的客户端程序通过这个URI跟DataNode交互,以取得文件的块列表。-->

 <property>

<name>fs.default.name</name>

<value>hdfs://localhost:9000</value>

</property>

<!—hadoop.tmp.dir 是hadoop文件系统依赖的基础配置,很多路径都依赖它。如果hdfs-site.xml中不配置namenode和datanode的存放位置,默认就放在这个路径中-->

<property>

<name>hadoop.tmp.dir</name>

<value>/home/hdfs/tmp</value>

</property>

(如果出现ERROR namenode.NameNode: java.io.IOException: Cannot create directory /export/home/dfs/name/curren,则改用user身份可以写入的路径hadoop.tmp.dir的路径---修改core-site.xml

<property>

<name>hadoop.tmp.dir</name>

<value>/tmp/hadoop-${user.name}</value>

</property>

 3.  在conf/hdfs-site.xml中增加如下内容:

<!-- dfs.replication -它决定着系统里面的文件块的数据备份个数。对于一个实际的应用,它 应该被设为3(这个数字并没有上限,但更多的备份可能并没有作用,而且会占用更多的空间)。少于三个的备份,可能会影响到数据的         可靠性(系统故障时,也许会造成数据丢失)-->

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

 (   <!--  dfs.data.dir - 这是DataNode结点被指定要存储数据的本地文件系统路径。DataNode结点上的这个路径没有必要完全相同,因为每台机器的环境很可能是不一样的。但如果每台机器上的这个路径都是统一配置的话,会使工作变得简单一些。默认的情况下,它的值hadoop.tmp.dir, 这个路径只能用于测试的目的,因为,它很可能会丢失掉一些数据。所以,这个值最好还是被覆盖。

dfs.name.dir - 这是NameNode结点存储hadoop文件系统信息的本地系统路径。这个值只对NameNode有效,DataNode并不需要使用到它。上面对于/temp类型的警告,同样也适用于这里。在实际应用中,它最好被覆盖掉。-->

<property>

<name>dfs.name.dir</name>

<value>/home/hdfs/name</value>

</property>

<property>

<name>dfs.data.dir</name>

<value>/home/hdfs/data</value>

</property>

<!—解决:org.apache.hadoop.security.AccessControlException:Permission    denied:user=Administrator,access=WRITE,inode="tmp":root:supergroup:rwxr-xr-x 。

因为Eclipse使用hadoop插件提交作业时,会默认以 DrWho 身份去将作业写入hdfs文件系统中,对应的也就是 HDFS 上的/user/hadoop ,  由于 DrWho 用户对hadoop目录并没有写入权限,所以导致异常的发生。解决方法为:放开 hadoop 目录的权限,命令如下:$ hadoop fs -chmod 777 /user/hadoop -->

<property>

<name>dfs.permissions</name>

<value>false</value>

<description>

If "true", enable permission checking in HDFS. If "false", permission checking is turned off,   but all other behavior is unchanged. Switching from one parameter value to the other does   not change the mode, owner or group of files or directories

</description>

</property>

 )括号内的我没作考虑!

   4.  在conf/mapred-site.xml中增加如下内容:

<!-- mapred.job.tracker -JobTracker的主机(或者IP)和端口。-->

<property>

<name>mapred.job.tracker</name>

<value>localhost:9001</value>

</property>

二、操作命令

           1.  格式化工作空间

进入bin目录,运行 ./hadoop namenode –format

           2.  启动hdfs

进入hadoop目录,在bin/下面有很多启动脚本,可以根据自己的需要来启动。(高一点版本的Hadoop里面还有一个超级用户的文件夹sbin,下面的那些文件可能在这个文件夹内)

* start-all.sh 启动所有的Hadoop守护。包括namenode, datanode, jobtracker, tasktrack

* stop-all.sh 停止所有的Hadoop

* start-mapred.sh 启动Map/Reduce守护。包括Jobtracker和Tasktrack

* stop-mapred.sh 停止Map/Reduce守护

* start-dfs.sh 启动Hadoop DFS守护Namenode和Datanode

* stop-dfs.sh 停止DFS守护

三、Hadoop hdfs 整合

     可按如下步骤删除和更改hdfs不需要的文件:

1.将hadoop-core-1.0.0.jar 移动到lib目录下。

2. 将ibexec目录下的文件移动到bin目录下。

3. 删除除bin、lib、conf、logs之外的所有目录和文件。

4. 如果需要修改日志存储路径,则需要在conf/hadoop-env.sh文件中增加:

export    HADOOP_LOG_DIR=/home/xxxx/xxxx即可。

四、HDFS文件操作

Hadoop使用的是HDFS,能够实现的功能和我们使用的磁盘系统类似。并且支持通配符,如*。

       1.  查看文件列表

查看hdfs中/user/admin/hdfs目录下的文件。

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs -ls /user/admin/hdfs

查看hdfs中/user/admin/hdfs目录下的所有文件(包括子目录下的文件)。

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs -lsr /user/admin/hdfs

       2.  创建文件目录

查看hdfs中/user/admin/hdfs目录下再新建一个叫做newDir的新目录。

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs -mkdir /user/admin/hdfs/newDir

       3.  删除文件

删除hdfs中/user/admin/hdfs目录下一个名叫needDelete的文件

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs -rm /user/admin/hdfs/needDelete

删除hdfs中/user/admin/hdfs目录以及该目录下的所有文件

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs -rmr /user/admin/hdfs

        4. 上传文件

上传一个本机/home/admin/newFile的文件到hdfs中/user/admin/hdfs目录下

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs –put /home/admin/newFile /user/admin/hdfs/

5. 下载文件

下载hdfs中/user/admin/hdfs目录下的newFile文件到本机/home/admin/newFile中

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs –get /user/admin/hdfs/newFile /home/admin/newFile

6. 查看文件内容

查看hdfs中/user/admin/hdfs目录下的newFile文件

a. 进入HADOOP_HOME目录。

b. 执行sh bin/hadoop fs –cat /home/admin/newFile

Hadoop Intro - Configure 01的更多相关文章

  1. Hadoop Intro - Configure

    Hadoop学习(二) Hadoop配置文件参数详解   Hadoop运行模式分为安全模式和非安全模式,在这里,我将讲述非安全模式下,主要配置文件的重要参数功能及作用,本文所使用的Hadoop版本为2 ...

  2. Hadoop技巧(01):插件,终端权限

    阅读目录 序 HDFS权限 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 在ha ...

  3. 炼数成金hadoop视频干货01

    视频地址:http://pan.baidu.com/s/1dDEgKwD 最开始还是讲hadoop的起源,但是和其他垃圾视频不同,不是照本宣科,听了还是受益.作者给人一种感觉就是他是确实把他的经验和体 ...

  4. Hadoop学习笔记01——Hadoop分布式文件系统

    Hadoop有一个称为HDFS的分布式系统,全称为Hadoop Distributed Filesystem. HDFS有块(block)的概念,默认为64MB,HDFS上的文件被划分为块大小的多个分 ...

  5. Hadoop环境搭建01

    根据马士兵老师的Hadoop进行的配置 1.首先列下来需要用到的软件 VirtulBox虚拟机.Centos7系统镜像.xshell.xftp.jdk安装包.hadoop-2.7.0安装包 2.在Vi ...

  6. 啃掉Hadoop系列笔记(01)-Hadoop框架的大数据生态

    一.Hadoop是什么 1)Hadoop是一个由Apache基金会所开发的分布式系统基础架构 2)主要解决,海量数据的存储和海量数据的分析计算问题. 3)广义上来说,HADOOP通常是指一个更广泛的概 ...

  7. hadoop yarn configure

    <property>  <description>The minimum allocation for every container request at the RM,  ...

  8. Mac搭建Hadoop源码阅读环境

    1.本次Hadoop源码阅读环境使用的阅读工具是idea,Hadoop版本是2.7.3.需要安装的工具包括idea.jdk.maven.protobuf等 2.jdk,使用的版本是1.8版,在jdk官 ...

  9. CentOS7 下编译 Hadoop

    准备工作 下载 Hadoop 源码 Source (当前最新 2.9.2) https://hadoop.apache.org/releases.html 打开压缩包会看到 BUILDING.txt ...

随机推荐

  1. 关于Spring注解配置的步骤

    今天分享一下 关于Spring注解配置的流程 1 导包:如下图所示 2 书写User和Car类  代码如下 package cn.lijun.bean; public class Car { priv ...

  2. mono-3.0.2安装指南

     install-mono.sh.zip   mono-3.0.2安装指南.pdf   mod_mono.diff.zip mono-3.0.2安装指南 一见 2012/12/27 目录 1. 前言 ...

  3. 对XML文档进行修改

    怎样对XML文档时行修改.Insus.NET在此举个简单的例子.XML文档,就以这篇博文:http://www.cnblogs.com/insus/p/3274220.html 如果我们想对其中一个节 ...

  4. PS2018学习笔记(03-18节)

    3-认识主界面 # 主界面包括: 菜单栏.选项栏.工具栏.面板.图像编辑窗口(中间)和状态栏(底部): # 界面设置: 方法1:Ctrl+k:打开界面设置; 方法2:编辑-首选项-界面 # shift ...

  5. RedHat6安装git

    通过yum安装git : 一. 先配置yum: 把redhat系统镜像加载到电脑光驱中(无光驱可用u盘),然后把该镜像配置到环境变量中 文件名不限 在此新建的RHEL_6文件中添加如下内容 其中bas ...

  6. L - Large Division (大数, 同余)

    Given two integers, a and b, you should check whether a is divisible by b or not. We know that an in ...

  7. 安卓手机牛逼软件Termux中安装Archlinux,安装Jdk

    说出来你可能不信,手机上居然装了两个linux系统,和真实的linux有些许些差别. 首先安装了Termux以后你发现,好多linux常用功能都有,什么Pyhton,gcc,g++,ruby,Php, ...

  8. Sessions in BSU

    Sessions in BSU 有n项考试.每项考试给定两个时间,你可以任意选择一个时间.每个时间点只能考一场考试,请问在最优情况下最早考完的时间.n<=1e6. 把题目抽象成图论模型:在每项考 ...

  9. Angular2入门-架构总览

    ▓▓▓▓▓▓ 大致介绍 在3月23日,Angular4正式发布(没有3).似乎现在学Angular2又晚了,又晚一步-_-||.Angular2在Angular1的基础上有了较大的改变.之前向一个同学 ...

  10. Chrome 67 以后版本无法离线安装crx插件

    原文链接:https://blog.csdn.net/wanwuguicang/article/details/80716178 升级了Chrome后无法离线安装扩展 如图: 谷歌自Chrome 67 ...