环境:
现在已经配置好了三台linux虚拟服务器,分别是:
192.168.116.10 REDONE(namenode)
192.168.116.11 REDTWO(datanode)
192.168.116.12 REDTHREE(datanode)
首先登陆一台节点,以root权限登录。
1、下载
去hadoop官网上(http://hadoop.apache.org/)下载合适的hadoop版本。我选择的是比较新的2.5.2版本。文件名为hadoop-2.5.2.tar.gz,下载文件上传到/hadoop/下(三个服务器都要上传),切换到该目录下,解压:
tar -zvxf hadoop-2.5.2.tar.gz
2、配置
主服务器(192.168.116.10)进入配置目录:cdhadoop-2.5.2/etc/hadoop
core-site.xml
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
<description>Abase for other temporarydirectories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.116.10:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property>
hdfs-site.xml
<property>
<name>dfs.nameservices</name>
<value>hadoop-cluster1</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>192.168.116.10:50090</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/hadoop/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobtracker.http.address</name>
<value>192.168.116.10:50030</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>192.168.116.10:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>192.168.116.10:19888</value>
</property>
yarn-site.xml
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>192.168.116.10:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>192.168.116.10:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>192.168.116.10:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>192.168.116.10:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>192.168.116.10:8088</value>
</property>
hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.8.0_111
注:两个从服务器也要按上面修改各个配置文件,可直接用scp命令将主服务器${HADOOP_HOME}/etc/hadoop/目录覆盖从服务器相应目录
scp -r hadoop/ root@192.168.116.11:/hadoop/hadoop-2.5.2/etc/
scp -r hadoop/ root@192.168.116.12:/hadoop/hadoop-2.5.2/etc/
3、格式化文件系统
bin/hdfs namenode –format
bin/hdfs datanode –format
修改etc/hosts文件,添加映射
192.168.116.11 datanode1
192.168.116.12 datanode2
4、启动和停止服务
启动
- sbin/start-dfs.sh
- sbin/start-yarn.sh
停止
- sbin/stop-dfs.sh
- sbin/stop-yarn.sh
5、查看启动的进程
- jps
6、单独重启丢失的DataNode节点
如果某个DataNode节点Dead(由于死机或人为原因等),可以在不重启整个Hadoop服务的情况下进行单独重启。方法如下:
在NameNode的hadoop-2.5.2/sbin目录下,执行命令启动HDFS DataNode
- ./hadoop-daemons.sh start datanode
接着执行命令启动NodeManager
- ./yarn-daemons.sh start nodemanager
也可以单独启动NameNode节点,命令如下:
- ./hadoop-daemon.sh start namenode
- ./yarn-daemon.sh start resourcemanager
上述四个命令都可以指定--config参数,后面跟hadoop的集群配置文件所在目录(即$HADOOP_HOME/etc/hadoop),大家可通过参数-h查看命令帮助信息
注意:上面命令不会影响已经启动的hdfs或yarn服务,只会把丢失节点的服务启动起来。
三、通过浏览器访问
http://192.168.116.10:50070/
http://192.168.116.10:8088/