1、环境准备:
Vmvare12、Ubuntu 14.0.4桌面版、hadoop 2.7.3
2、安装SSH
装完第一台虚拟机master之后,首先安装openssh-server
尝试登陆 ssh localhost
进行免密登陆授权
3、安装JDK
安装openjdk7
vim ~/.bashrc
进行环境变量的配置(配置完成可以进行检验)
4、安装hadoop
- 解压hadoop-2.7.3tar.gz到/usr/local目录下 随后更改目录名称以及目录权限
5、将master克隆出slave1\slave2
6、配置Master\Slave1\Slave2
查看三台主机的ip
这里采用NAT的形式上网,虚拟机的网段需要与window主机下的VM8网卡的地址一致
修改三台主机的/etc/hostname /etc/hosts文件 注销后重新登录 (以master为例)
配置三台机器的免密登陆,用scp命令将master机器上的authorized_keys传送到slave1、slave2 然后slave1\slave2再各自将其写入到自己的~/.ssh/目录下的authorized_keys
验证master是否能够成功免密登陆slave1 slave2
在三台机器上分别配置path环境变量,将hadoop加入到path变量中 如图所示 随后验证hadoop命令是否全局可用
7、配置master下hadoop相关配置文件
- 修改/usr/local/hadoop/etc/hadoop/ slaves
修改/usr/local/hadoop/etc/hadoop/ core-site.xml
修改/usr/local/hadoop/etc/hadoop/ hdfs-site.xml
修改/usr/local/hadoop/etc/hadoop/ mapred-site.xml
修改/usr/local/hadoop/etc/hadoop/yarn-site.xml
8、配置slave1、slave2下的hadoop
将master下的/usr/local/hadoop目录打包成 hadoop.master.tar.gz 然后传输给slave1,slave2
将slave1、slave2的/usr/local/hadoop目录替换成刚刚从master处得到的
9、hadoop集群的启动
首次启动进行namenode格式化
hdfs namenode -format
分别执行/usr/local/hadoop/etc/hadoop 目录下的start-dfs.sh、start-yarn.sh、mr-jobhistory-daemon.sh historyserver
在master处运行jps,可看到ResourceManager、NameNode、SecondaryNameNode、JobHistoryServer等节点
在slave1、slave2处运行jps,只有DataNode,NodeManager两个节点
在master处运行
hdfs dfsadmin -report
查看活跃的datanode 这里为2
在网页端 master:50070查看活跃的节点live nodes
10、运行分布式实例
在hdfs下创建用户目录,创建input文件夹,并将/usr/local/hadoop/etc/hadoop目录下的文件都放入input目录中 随后运行share目录下的实例
查看运行过程和结果
11、关闭集群
- 关闭集群只需要在master分别运行 stop-yarn.sh、stop-dfs.sh、mr-jobhistory-daemon.sh即可
至此hadoop虚拟机集群的搭建已经全部完成