ubuntu12.04下安装hadoop-1.0.3 并搭建单机伪分布式运行环境(一)

1:下载hadoop-1.0.3.tar.gz安装包放到制定目录下;

2:将hadoop-1.0.3.tar.gz解压到/home/scs2000/app下(scs2000为当前用户名),其命令如下:

sudo tar xzf /mnt/hgfs/ubuntushare/hadoop-1.0.3.tar.gz

3:重命名文件夹hadoop-1.0.3为hadoop:

mv hadoop-1.0.3 hadoop

4:把hadoop的主属性改为scs2000:

sudo chown -R scs2000 hadoop

5:更新hadoop的环境变量:

gedit hadoop/conf/hadoop-env.sh

更改如下环境变量:

# The java implementation to use.  Required.
# export JAVA_HOME=/usr/lib/j2sdk1.5-sun

更改为本机jdk:

# The java implementation to use.  Required.
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_09

6:配置ssh

sudo apt-get install ssh
sudo apt-get install rsync
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

7:验证ssh配置是否成功:

ssh localhost

注意在出现提示信息时应输入yes,不是直接回车:

The authenticity of host 'localhost (127.0.0.1)' can't be established.
ECDSA key fingerprint is d7:3f:3f:a0:bd:cc:42:09:b8:5d:8a:f1:62:45:28:37.
Are you sure you want to continue connecting (yes/no)? yes

8:搭建单机伪分布式运行环境

伪分布式运行模式是运行在单个机器上,每一个hadoop的守候一个单独的java进程。

配置conf/core-site.xml,添加如下内容:

gedit conf/core-site.xml
<configuration>
    <property>
       <name>fs.default.name</name> 
       <value>hdfs://localhost:9000</value>
    </property>
</configuration>

配置conf/hdfs-site.xml,添加如下内容:

gedit conf/hdfs-site.xml
<configuration>
    <property>
        <name>dfs:replication</name>
        <value>1</value>
    </property>
</configuration>

配置conf/mapred-site.xml,添加如下内容:

gedit conf/mapred-site.xml
<configuration>
    <property>
       <name>mapred.job.tracker</name>
       <value>localhost:9001</value>
    </property>
</configuration>

9:格式化HDFS

进入hadoop目录。运行命令:

sudo bin/hadoop namenode -format

10:启动及验证hadoop监护进程

bin/start-all.sh


验证方法1:jps

验证方法2:

bin/hadoop dfsadmin -report

11:复制输入文件到HDFS

在HDFS下创建input目录,将hadoop/conf下的所有xml文件上传到input下:

bin/hadoop dfs -mkdir input
bin/hadoop dfs -put conf/*.xml input

查看input中上传的文件:

bin/hadoop dfs -ls input



12:运行例子,将结果输出到output。

bin/hadoop jar hadoop-examples-1.0.3.jar grep input output 'dfs[a-z].+'

如果报如下错误是因为执行了多次put之后,就会在分布式文件系统中生成子目录,删除重新put即可。

 出现以上错误后执行如下命令清除多余子目录后在重新put。

部分运行结果:

13:结果文件输出

A:将结果输出文件从分布式文件系统拷贝到本地文件系统查看;

bin/hadoop dfs -get output output
cat output/*

B:在分布式文件系统上输出查看:

bin/hadoop fs -cat output/part-*


 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值