硬件:虚拟机
操作系统:Centos 6.5 64位
安装用户:root
IP:192.168.235.130 主机名:vm01
IP:192.168.235.131 主机名:vm02
IP:192.168.235.132 主机名:vm03
其中vm01为master节点,vm02和vm03为slave节点。
安装JDK1.6或者以上版本。安装方法不在此讨论,网上教程一大把。
本次安装的版本为1.8.0_131
安装路径:/usr/java/jdk1.8.0_131
注:本机也需要设置。
$ ssh-keygen -t rsa
$ ssh-copy-id root@vm01
$ exit
$ ssh-copy-id root@vm02
$ exit
$ ssh-copy-id root@vm03
验证ssh,
# ssh vm01
不需要输入密码即可登录。
首先在master节点vm01上安装。
1,下载Hadoop2.6.5
下载地址:http://pan.baidu.com/s/1pKGTqbx 密码:sfh1
2,解压安装
1),复制 hadoop-2.6.5.tar.gz 到/root/hadoop目录下,
然后#tar -xzvf hadoop-2.6.5.tar.gz 解压,解压后目录为:/opt/hadoop/hadoop-2.6.5
2),在/root /hadoop/目录下,建立tmp、hdfs/name、hdfs/data目录,执行如下命令
#mkdir /opt/hadoop/tmp
#mkdir -p /opt/hadoop/hdfs/data
#mkdir /opt/hadoop/hdfs/name
注:如果在hdfs初始化时报错并且无法启动namenode,请删除上述创建的目录,只保留/opt/hadoop/hdfs目录再重试。
3),设置环境变量,#vi /etc/profile
# set hadoop path
export HADOOP_HOME=/opt/hadoop/hadoop-2.6.5
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/lib
注:一定要配置$HADOOP_HOME/lib,否则执行时可能会提示找不到类。
4),使环境变量生效,#source /etc/profile
3,Hadoop配置
进入$HADOOP_HOME/etc/hadoop目录,配置 hadoop-env.sh等。涉及的配置文件如下:
hadoop-2.6.5/etc/hadoop/hadoop-env.sh
hadoop-2.6.5/etc/hadoop/yarn-env.sh
hadoop-2.6.5/etc/hadoop/core-site.xml
hadoop-2.6.5/etc/hadoop/hdfs-site.xml
hadoop-2.6.5/etc/hadoop/mapred-site.xml
hadoop-2.6.5/etc/hadoop/yarn-site.xml
1)配置hadoop-env.sh
# The java implementation to use.
#export JAVA_HOME=${JAVA_HOME}
export JAVA_HOME=/usr/Java/jdk1.8.0_131
2)配置yarn-env.sh
#export JAVA_HOME=/home/y/libexec/jdk1.6.0/
export JAVA_HOME=/usr/Java/jdk1.8.0_131
3)配置core-site.xml
添加如下配置:
<configuration>
<property>
<name>fs.default.namename>
<value>hdfs://vm01:9000value>
<description>HDFS的URI,文件系统://namenode标识:端口号description>
property>
<property>
<name>hadoop.tmp.dirname>
<value>/opt/hadoop/tmpvalue>
<description>namenode上本地的hadoop临时文件夹description>
property>
configuration>
4),配置hdfs-site.xml
添加如下配置
<configuration>
<!—hdfs-site.xml-->
<property>
<name>dfs.name.dirname>
<value>/opt/hadoop/hdfs/namevalue>
<description>namenode上存储hdfs名字空间元数据 description>
property>
<property>
<name>dfs.data.dirname>
<value>/opt/hadoop/hdfs/datavalue>
<description>datanode上数据块的物理存储位置description>
property>
<property>
<name>dfs.replicationname>
<value>1value>
<description>副本个数,配置默认是3,应小于datanode机器数量description>
property>
configuration>
5),配置mapred-site.xml
添加如下配置:
<configuration>
<property>
<name>mapreduce.framework.namename>
<value>yarnvalue>
property>
configuration>
6),配置yarn-site.xml
添加如下配置:
<configuration>
<property>
<name>yarn.nodemanager.aux-servicesname>
<value>mapreduce_shufflevalue>
property>
<property>
<name>yarn.resourcemanager.webapp.addressname>
<value>${yarn.resourcemanager.hostname}:8088value>
property>
configuration>
7),配置slaves文件
$ vim $HADOOP_HOME/etc/hadoop/slaves
在文件中写入salve节点的主机名:
vm02
vm03
到此master节点配置完成,slaves节点与master节点配置一致,只需在vm02和vm03上将上述操作重复一遍即可,推荐直接将配置好的安装目录和环境变量复制一份到其他两个节点。
4,Hadoop启动
1)格式化namenode(只需第一次启动时执行)
$ bin/hdfs namenode –format
2)启动NameNode 和 DataNode 守护进程
$ sbin/start-dfs.sh
启动成功后可在浏览器输入 http://vm01:50070 查看hdfs详情。
3)启动ResourceManager 和 NodeManager 守护进程
$ sbin/start-yarn.sh
5,启动验证
1)执行jps命令,有如下进程,说明Hadoop正常启动
# jps
5509 NodeManager
5833 Jps
4683 NameNode
4796 DataNode
5421 ResourceManager
4943 SecondaryNameNode
2)在浏览器中输入:http://vm01:8088/ 即可看到YARN的ResourceManager的界面。注意:端口通过以下配置设置
yarn-site.xml
<property>
<name>yarn.resourcemanager.webapp.addressname>
<value>${yarn.resourcemanager.hostname}:8088value>
property>
开发调试一般只需要一个节点即可,那么我们需要将master和slaves安装在同一台机器。
安装方式和上述集群安装一致,不同的地方在slaves文件的内容,在这个文件中写入本机的主机名或ip即可。
$ vim $HADOOP_HOME/etc/hadoop/slaves
在文件中写入salve节点的主机名:
vm01