134217728
c.mapred-site.xml:
mapred.child.java.opts
-Xmx1024m
io.sort.mb
512m
mapred.tasktracker.map.tasks.maximum
4
true
mapred.tasktracker.reduce.tasks.maximum
2
true
mapred.job.tracker
jobtrack:9001
true
mapred.compress.map.output
false
mapred.map.output.compression.codec
com.hadoop.compression.lzo.LzopCodec
mapred.output.compress
false
mapred.output.compression.codec
com.hadoop.compression.lzo.LzopCodec
d.masters文件无需配置
e.slaves:
#配置tasktrack(datanode01、datanode02、datanode03)节点IP或者各节点主机名:
#192.168.8.62
#192.168.8.63
#192.168.8.64
datanode01
datanode02
datanode03
此项配置完成后,先别着急启动hadoop,好多东西还没设置,继续往下走.....
(3).datanode01
a.core-site.xml:
hadoop.tmp.dir
/home/hadoop/hadoop/tmp/
io.file.buffer.size
65536
io.compression.codecs
org.apache.hadoop.io.compress.DefaultCodec,org.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.BZip2Codec,com.hadoop.compression.lzo.LzoCodec,com.hadoop.compression.lzo.LzopCodec
io.compression.codec.lzo.class
com.hadoop.compression.lzo.LzopCodec
fs.default.name
hdfs://namenode:9000
hadoop.proxyuser.hadoop.hosts
*
hadoop.proxyuser.hadoop.groups
*
b.hdfs-site.xml:
dfs.permissions
false
dfs.data.dir
/home/hadoop/hadoop/data/data
true
dfs.replication
3
dfs.block.size
134217728
c.mapred-site.xml:
mapred.child.java.opts
-Xmx1024m
io.sort.mb
512m
mapred.tasktracker.map.tasks.maximum
4
true
mapred.tasktracker.reduce.tasks.maximum
2
true
mapred.job.tracker
jobtrack:9001
true
d.masters和slaves文件无需配置
(5).其余的datanode节点(datanode02、datanode03)的配置和上面的datanode01的配置完全一致。
7.创建hadoop的数据存放目录:
在上面的配置中,
将dfs.name.dir(hdfs-site.xml)目录设置为~/hadoop/data/name
将dfs.data.dir(hdfs-site.xml)目录设置为~/hadoop/data/data
将hadoop.tmp.dir(core-site.xml)目录设置为~/hadoop/tmp
其中,
namenode需要设置dfs.name.dir,
datanode需要设置dfs.data.dir和hadoop.tmp.dir,
secondnamenode、jobtrack需要设置hadoop.tmp.dir,dfs.name.dir,dfs.data.dir。
建议:以上的配置可以不设置,如果不设置hadoop有自己的默路径,为了方便维护建议设置;
为了避免不确定性的配置问题,建议在每个节点都设置hadoop.tmp.dir,dfs.name.dir,dfs.data.dir
基于以上配置,需要在各个节点上创建如下目录:
mkdir ~/hadoop/data
8.设置节点间的无密码登陆:
分别设置:
namenode对secondnamenode、datanode01、datanode02、datanode03的无密码ssh登陆;
secondnamenode对datanode01、datanode02、datanode03的无密码ssh登陆;
jobtrack对datanode01、datanode02、datanode03的无密码ssh登陆。
建议:为了方便以后对hadoop集群的管理,最好设置成每一个节点都可以对其他所有节点的ssh无密码登陆。
如果不清楚如何设置ssh无密码登陆,请参考本人的博客(Linux栏目下)
9.设置节点的ip和主机名的映射关系:
配置 每个节点的/etc/hosts文件(datanode节点可以不需要配置):
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.8.62 datanode01
192.168.8.63 datanode02
192.168.8.64 datanode03
192.168.8.65 secondnamenode
192.168.8.67 namenode
192.168.8.68 jobtrack
10.关闭每个节点的防火墙
11.启动hadoop集群: