Hadoop 单机基本操作教程

0. 先决条件,已经安装好 Java 环境

1. hadoop 安装

下载地址:http://hadoop.apache.org/releases.html,下载完成之后

$ tar xvf hadoop-2.6.4.tar # 解压
$ mv hadoop-2.6.4 /usr/local # 将解压后文件复制到 /usr/local 里
$ cd /usr/local/hadoop-2.6.4/bin # 进入hadoop命令目录
$ ./hadoop version # 查看hadoop版本
Hadoop 2.6.4
Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r 5082c73637530b0b7e115f9625ed7fac69f937e6
Compiled by jenkins on 2016-02-12T09:45Z
Compiled with protoc 2.5.0
From source with checksum 8dee2286ecdbbbc930a6c87b65cbc010
This command was run using /usr/local/hadoop-2.6.4/share/hadoop/common/hadoop-common-2.6.4.jar

 

2. hadoop 分布式配置

2.1 修改 hadoop 的 core-site.xml 配置文件

$ cd /usr/local/hadoop-2.6.4/etc/hadoop
$ vi core-site.xml # 编辑 core-site.xml 配置文件
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
    <property>
         <name>hadoop.tmp.dir</name>
         <value>file:/usr/local/hadoop/tmp</value>
         <description>Abase for other temporary directories.</description>
    </property>
    <property>
         <name>fs.defaultFS</name>
         <value>hdfs://localhost:9000</value>
    </property>
</configuration>

2.2 修改 hadoop 的 hdfs-site.xml 配置文件

$ cd /usr/local/hadoop-2.6.4/etc/hadoop
$ vi hdfs-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
    <property>
         <name>dfs.replication</name>
         <value>1</value>
    </property>
    <property>
         <name>dfs.namenode.name.dir</name>
         <value>file:/usr/local/hadoop-data/tmp/dfs/name</value>
    </property>
    <property>
         <name>dfs.datanode.data.dir</name>
         <value>file:/usr/local/hadoop-data/tmp/dfs/data</value>
    </property>
</configuration>

2.3 以上配置完成之后,执行 NameNode 的格式化

$ cd /usr/local/hadoop-2.6.4/bin

#执行下面命令之后的返回信息中应该出现
#common.Storage: Storage directory /usr/local/hadoop-2.6.4/site_data/hadoop-data/tmp/dfs/name has been successfully formatted.
#util.ExitUtil: Exiting with status 0
$ ./hdfs namenode -format

2.4 开启 NameNode 和 DataNode 守护进程

$ cd /usr/local/hadoop-2.6.4/sbin

#执行下面命令之后,如果出现
#Are you sure you want to continue connecting(yes/no)?
#输入yes 
$ ./start-dfs.sh

如果启动时提示:WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable,则可以忽略提示,不会影响正常使用。

2.5 完成启动之后,使用 jps 来判断启动是否成功

$ jps
4355 DataNode
4499 SecondaryNameNode
4240 NameNode
11332 Jps

DataNode、NameNode 和 SecondaryNameNode 这三个进程必须存在,缺一不可。

PS. 如果 DataNode 无法正常启动,则可以删除所有 tmp 文件

$ cd /usr/local/hadoop-2.6.4/sbin
$ ./stop-dfs.sh #关闭
$ cd /usr/local/hadoop #具体路径查看 core-site.xml 配置文件
$ rm -rf tmp
$ cd /usr/local/hadoop-data #具体路径查看 hdfs-site.xml 配置文件
$ rm -rf tmp

3. 运行 hadoop 的实例,进行开发测试

$ cd /usr/local/hadoop-2.6.4/bin

#在hdfs上创建一个hadoop实例读取日志文本的目录
$ ./hdfs dfs -mkdir -p /user/hadoop/input

#将本地的日志文件上传至hdfs的/user/hadoop/input/目录中
$ ./hdfs dfs -put /home/guonan/user-behave.log /user/hadoop/input/

#查看hdfs中/user/hadoop/input/目下的文件
$ ./hdfs dfs -ls /user/hadoop/input/

#运行hadoop执行实例的命令
#如果重新执行该命令,则必须先删除/user/hadoop/output/该目录
#使用 ./hdfs dfs -rm -r /user/hadoop/output 删除
$ ./hadoop jar /home/guonan/user-behave-1.0.jar /user/hadoop/input/user-behave.log /user/hadoop/output/

#查看执行结果
$ ./hdfs dfs -cat /user/hadoop/output/*

 

转载于:https://my.oschina.net/u/1587665/blog/968558

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值