hadoop集群配置之hadoop安装部署

hadoop分为单击模式,伪分布式和分布式,本文安装的是分布式。java

须要先对linux系统作一些优化,编辑/etc/security/limits.conf node

*		soft	nofile		10240
*		hard	nofile		10240
*		soft	noproc		10240
*		hard	noproc		10240

nofile是设置限制打开的文件数,noproc是限制用户打开的进程数,*表明的是全部用户linux

而后执行分布式

ulimit -n 10240
ulimit -c 10240

下载hadoop2.6.0.tar.gzoop

而后登录hadoop帐户解压至主文件夹下测试

tar xvzf hadoop-2.6.0

而后将hadoop-2.6.0移动到主文件夹下,找到etc/hadoop下的hadoop-env.sh文件,打开将里面的jdk配置成你本身实际的jdk路径。优化

而后编辑core-site.xmlthis

<configuration>
	<property>
		<name>fs.default.name</name>
		<value>hdfs://192.168.1.55:9000</value>
	</property>
<-- 设置同时处理文件上限个数 -->
    <property>
		<name>dfs.datanode.max.xcievers</name>
		<value>4096</value>
	</property>
    <property>
		<name>dfs.data.dir</name>
		<value>/hdfsdata-2.6</value>
	</property>
</configuration>

hdfs-site.xmlcode

<configuration>
	<property>
		<name>dfs.replication</name>
		<value>3</value>
	</property>
	<property>
		<name>dfs.data.dir</name>
		<value>/home/hadoop/data</value>
	</property>
</configuration>

mapred-site.xmlorm

<configuration>
	<property>
		<name>mapred.job.tracker</name>
		<value>hdfs://192.168.1.55:9001</value>
	</property>
</configuration>

masters

h1

slaves

h2
h3

注意:一、hadoop2.6没有mapred-site.xml,须要本身考一个,

          二、hadoop2.6没有masters,须要本身拷一个

          三、关闭防火墙或者添加9000、900一、50010端口为信任

而后将配置好的hadoop拷贝到各个节点上

scp -r hadoop2.6.0 h2:/home/hadoop

拷贝完成后,格式化namenode

bin/hadoop namenode -format

最后启动hadoop

sbin/start-all.sh

访问http://localhost:50070

        http://localhost:8080

若成功访问则说明namenode部署成功,

还有一种办法就是找到jdk的安装目录输入一下命令

bin/jps

看看namenode还有secondarynamenode以及resourcemanager是否成功启动,slave节点则是datanode

奇怪的是我这里并无job或者track,看了下start-all.sh里并无启动,不过一直没有什么问题,不知道是否是2.6版本没有这些,有知道的顺便说下吧

===============================================

                                                这里是补上的

================================================

用jps只是看到服务是否启动,下面用一个简单的测试来演示是否成功。再声明一下,我用的是hadoop-2.6.0

首先切换到主目录,而且建立出一个input文件夹,文件夹下面有两个文本文件

cd ~
makdir input
echo "hello word">text1.txt
echo "hello hadoop>test2.text

而后切换到hadoop目录

cd ~
cd hadoop-2.6.0

先测试hdfs,将刚刚建立的文件上传到集群里

bin/hadoop dfs ../input /in

看一下是否成功

bin/hadoop dfs -ls /in/*

应该会输出一个文件列表

而后测试mapreduce,用hadoop自带的wordcount,hadoop2.6和其余不同,要以以下的命令运行wordcount

bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar wordcount /in /out

“/”表明的是hdfs的根目录,不是之前的“./”

运行命令后再看一下根目录下的文件

bin/hadoop dfs -ls /

发现里面不只有in目录,还多了out和temp目录,打开out目录

bin/hadoop dfs -cat /out/*

下面有两个文件,一个是_SUCCESS一个是part-r-00000,打开文件,我这里两个都打开了,不过效果是差很少的

bin/hadoop dfs -cat /out/*

下面是运行结果

[hadoop@h1 hadoop-2.6.0]$ bin/hadoop dfs -cat /out/*
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

hadoop    1
hello    2
word    1
相关文章
相关标签/搜索