d.masters文件无需配置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
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:
b.hdfs-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 *
dfs.permissions false dfs.data.dir /home/hadoop/hadoop/data/data true dfs.replication 3 dfs.block.size 134217728
c.mapred-site.xml:
d.masters和slaves文件无需配置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
(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 jobtrack10.关闭每个节点的防火墙
11.启动hadoop集群: