hadoop-2.6.0集群的配置安装:
机器环境是64位的centos-6.5、jdk-1.8、64位的hadoop-2.6.0
5个机器,机器的主机名分别为slave01、slave02、master、slave04、slave05,其中master为namenode机器,其他为datanode机器
配置hadoop集群,各个机器最好用相同的用户名,并且各个机器上的hadoop的的结构目录也要相同
第一步:配置各个机器centos的静态IP地址
在root权限下命令:vi /etc/sysconfig/network-scripts/ifcfg-eth0设置ifcfg-eth0的内容
BOOTPROTO=static
IPADDR=192.168.6.***
DNS1=159.226.115.1
DNS2=159.226.115.11
GATEWAY=192.168.6.254
设置完成后对网络进行重新启动即可:servicenetwork restart
至上 网络配置成功
第二步:配置各个机器的etc/hosts中IP和hostName要一一对应,因为用IP比较麻烦
至上,/etc/hosts配置成功
第三步:在自创建的用户下配置master和slave01、slave02、slave04、salve05之间ssh无密码登陆
在各个机器上用命令:chkconfigiptables off 是永久关闭防火墙
分别在5台机器上执行命令:ssh-keygen -t rsa
三次Enter键后在默认路径下生成一个.ssh文件,在此文件下有id_rsa和id_rsa.pub两个文件
进入~/.ssh目录下执行:“cat id_rsa.pub >> authorized_keys”命令
完成上面的两个命令后,把master机器上~/ssh/authorized_keys中的内容分别拷贝到slave01、slave02、slave04、slave05机器中~/.ssh/authorized_keys中,如:
在5台机器上执行命令:chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
ssh-add ~/.ssh/id_rsa
在master机器上进行无密码登陆执行
至上,ssh无密码登陆配置成功
第四步:安装jdk
首先,检查各个机器上jdk旧版本
用命令 rpm - | grep jdk,会显示旧版本的各个jkd名字
用命令 rpm -e --nodeps 旧jdk名称
把jdk解压到相应的目录下: tar -zxvf jdk名字 -C /~
在root下编辑 /etc/profile内容,添加jdk环境变量
保存,执行命令:source /etc/profile
用java -version检查java是否安装成功
至上 jdk安装成功
第五步:hadoop配置
在master机器上解压hadoop-2.6.0命令: tar -zxvf ~/hadoop-2.6.0 -C /~
进入解压后的hadoop的etc/hadoop目录中
把~/etc/hadoop中的hadoop-env.sh、mapred-env.sh、yarn-env.sh加入JAVA_HOME
配置hdfs-site.xml<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:50090</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/zhuhaichuan/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/zhuhaichuan/hdfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
</configuration>
配置core-site.xml文件
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/zhuhaichuan/temp</value>
<description>Abasefor other temporary directories.</description>
</property>
</configuration>
配置mapred-site.xml文件,配置文件中没有mapred-site.xml,用命令mv把mapred-site.xml.template的名字改成mapred-site.xml即可
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>
配置yarn-site.xml文件
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>8192</value>
</property>
</configuration>
把配置好的hadoop-2.6.0文件传递到slave01、slave02、slave04、slave05机器上(要放在和master对应的机器上)
scp -r ~/hadoop-2.6.0 hostName:/~ 把master上的hadoop-2.6.0传递到各个机器上
在master机器上的hadoop目录下执行:“bin/hdfs namendoe -format”命令
执行 “sbin/start-all.sh”命令启动即可。
至上完成!