Hadoop 2X伪分布式环境搭建

从0开始搭建一套伪分布式环境,然后跑一个程序验证一下环境是否搭建成功。

1.hostname

首先第一步查看自己的linux的houstname。

如果没有的请设置一下vi /etc/hosts


注意修改完host文件只后需要重启,然后也要改一下hostname 

hostname aliyeye

2.下载解压hadoop

我这里下载的是hadoop2.5最好是下载2.X左右的,然后上传到自己的linux文件夹里面

tar -zxf hadoop-2.5.0.tar.gz -C /opt/mudules/

没有下载JDK和配置环境变量的自己先去配置下

3.建议:删除rm -rf doc/   里面是英文文档,没有作用。然后ls查看一下文件目录


4.修改配置文件

这里要把配置文件一个一个的修改过来。配置文件都在etc/hadoop里面。

hadoop-env.sh、mapred、yarn指定Java的安装路径。打开文件我们发现里面有

这一行代码,这里给他指定路径,或者变量都可以。

slaves,指定从节点位置,包括datanode和nodemanager
这里直接输入自己的hostname名称就好 比如我的是aliyeye

core-site.xml,指定namenode所在机器位置及交互端口号,另外也是指定使用的是HDFS文件系统

<property>
        <name>fs.defaultFS</name>
        <value>hdfs://aliyeye:8020</value>
</property>
注意了这里的aliyeye是我们刚才配置的hostname,后面也会用到, 不是必须用hostname的,用ip也是可以的,但是最好使用hostname,因为hadoop底层代码中,有一些数据的访问获取什么的都是需要通过hostname的
所以最好还是hostname。
hdfs-site.xml 指定副本数个数
<property>
        <name>dfs.replication</name>
        <value>1</value>
</property>

core-site.xml,更改Hadoop默认的临时目录位置,用于存放块文件和元数据文件
<property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/modules/hadoop-2.5.0/data/tmp</value>
</property>
mapred-site.xml
<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
</property>
yarn-site.xml
<property>
        <name>yarn.nodemanager.aux-services
        </name>
        <value>mapreduce_shuffle</value>
</property>
<property>
	<name>yarn.resourcemanager.hostname</name>
	<value>hadoop-senior01.ibeifeng.com</value>
</property>

格式化一下
bin/hdfs namenode -format
然后启动
sbin/start-all.sh
或者可以一个一个的启动
sbin/hadoop-daemon.sh start namenode
sbin/hadoop-daemon.sh start namenode
sbin/yarn-daemon.sh start resourcemanager
 sbin/yarn-daemon.sh start nodemanager


启动完成之后我们可以通过jps查看一下进程


然后在通过外网访问一下

输入自己的地址加上端口号:50020 可以看到下面这个界面


这个是HDFS的管理界面,再输入端口好8088可以看到yarn的管理界面。


wordcount

最后跑一个hadoop的经典入门级案例wordcount

先创建一个文件vi opt/datas/wc.input


这里我们需要统计一下每个单词出现的次数

创建完成之后我需要把这个文件上传到hdfs服务器里面让他能够进行处理,这里先打开管理界面然后找到browse


这里面都是我们hdfs的文件路径;我们可以创建一个路径表明这是我们放的原始数据

bin/hdfs dfs -mkdir -p /user/input

这个时候刷新我们的管理界面会发现创建了一个user文件夹,点进去里面还有一个input文件,接下来就把我们的文件上传到input里面。


bin/hdfs dfs -put /opt/datas/wc.input /user/input

再刷新一下我们的界面找到input.txt这个文件就正确了。


mapReduce有个特点是输出路径不能事先存在,所以我们不需要事先创建输出路径。

bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar  

wordcount  

/user/input/  

/user/output

第一段表示执行mapreduce架包,第二段表示执行的是wordcount命令,第三段和第四段分别是输入和输出路径。

我们会发现他跑的比较慢在小数据处理小确实不需要用到。

这里我们进入到管理界面发现output生成了两个文件


第一个文件0KB,就表示成功而已,关键在于第二个文件,我们可以点击下载到我们windows电脑里面。

当然你可以执行linux查看命令bin/hdfs dfs -text /user/output/part-r-00000







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值