一、前提准备
虚拟机
虚拟机使用vmwere12/15/16,有克隆和快照功能,其他版本没使用过。
CentOS-6
连接工具
Xshell、secureCRT、WinSCP、PuTTY、MobaXterm、FinalShell
任一即可。这里使用Xshell
jdk8安装包
hadoop安装包
二、安装虚拟机、xshell 和 配置CentOS
(1) 安装VMware 和 Linux
有点多,百度网盘获取文档。
// 网址:链接:https://pan.baidu.com/s/1goqHNmBrMGTqTozyXWFakA
// 提取码:w4rd
(2) 安装Xshell
略,选择学生版
三、基础机搭建
复制mac地址
// vim /etc/udev/rules.d/70-persistent-net.rules
三改一加
// vim /etc/sysconfig/network-scripts/ifcfg-eth0
/**
改一: ONBOOT=no--->ONBOOT=yes
改二: BOOTPROTO=dhcp--->BOOTPROTO=static
改三: HWADDR=删除原来的--->HWADDR=复制的mac地址
加一:IPADDR=设置自己的ip
*/
// 完成后,保存退出,使用ip addr查看ip改成功没有
// 如失败, 重启网络服务, service network restart,有失败字样,需要重启虚拟机,先不管,下一步
改主机名
// vim /etc/sysconfig/network
// HOSTNAME=新主机名
// 主机名要重启虚拟机才生效,先不管
加映射
// vim /etc/hosts
// 删除原有的内容
// 加入
/**
192.168.6.120 hadoop
192.168.6.121 hadoop1
192.168.6.122 hadoop2
192.168.6.123 hadoop3
*/
关闭防火墙
// 关闭防火墙
// service iptables stop
// 关闭防火墙自动启动
// chkconfig iptables off
重启
// reboot
物理机与虚拟机通信ping通:三个一致
第一个地方:虚拟机iP的前三个网段(192.168.6)
第二个地方:虚拟机得网络编辑器v8子网ip前三位(编辑->虚拟网络编辑器)192.168.6
第三个地方:虚拟机在物理机上的v8网卡(在设置里搜网络连接,windows快捷键win + i)
ping
// 在物理机的终端ping,ping母机的ip地址。
// ping ip地址
四、配置jdk 、hadoop的系统环境变量
(1) 配置jdk
使用连接工具连接,如xshell。
卸载自带的jdk
// 查看原jdk
// rpm -qa | grep java
// 卸载方式一
// rpm -e ?
// 察看是否卸载干净
// rpm -qa | grep java
// 卸载方式二
// yum -y remove ?
// 察看是否卸载干净
// rpm -qa | grep java
// 卸载方式三
// rpm -e --nodeps ?
// 察看是否卸载干净
// rpm -qa | grep java
进入opt目录创建创建两个文件
// cd /opt
// mkdir softwarePackage
// mkdir zipPackage
// ll
解压
// tar zxvf ? -C ?
// 去掉v,不去运行,会有解压震撼场面。
// tar zxf /opt/softwarePackage/jdk-8u144-linux-x64.tar.gz -C /opt/zipPackage/
配置系统环境变量
// 切换 cd /opt/zipPackage/jdk1.8.0_144/
// 拿路径,并复制
// vim /etc/profile
// 在末尾加入以下内容
/** #JAVA_HOME export JAVA_HOME=/opt/zipPackage/jdk1.8.0_144 export PATH=$PATH:$JAVA_HOME/bin
*/
刷新并测试
// source /etc/profile
// java -version
(2) 配置hadoop
解压
配置系统环境变量
// 切换 cd /opt/zipPackage/hadoop-2.7.2/
// 拿路径,并复制
// vim /etc/profile
// 在末尾加入
/**
#HADOOP_HOME export HADOOP_HOME=? export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:HADOOP_HOME/sbin
*/
刷新测试
// source /etc/profile
// hadoop version
到这里也完成了母机的配置,现在就是克隆三台,把母机的声卡、打印机等没用的都去掉,再克隆三台。
五、配置集群环境变量
条件: 从母机克隆三台
(1).克隆机更改 ip
// [root@Hadoop 桌面]# vim /etc/udev/rules.d/70-persistent-net.rules
// [root@Hadoop 桌面]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
(2). 检查是否更改成功
// ip addr / ifconfig
// 重启网络 service network restart
(3). 更改主机名
// [root@Hadoop 桌面]# vim /etc/sysconfig/network
// 需要重启才可以生效 重启 reboot
(4).改映射
// 可以不改,改的话去掉第一个
// [root@Hadoop 桌面]# vim /etc/hosts
192.168.6.121 hadoop1
192.168.6.122 hadoop2
192.168.6.123 hadoop3
(5).关闭防火墙
// 这步也可不用
// 关闭
// service iptables stop
// 关闭开机自动启动
// chkconfig iptables off
(6).连接xshell
克隆的三台都重复完成了以上五步后,分别用Xshell连接.
(7).配置集群
须知:到这一步尽量打一个快照,以免出错重复步骤。一下配置都在hadoop1里完成,然后传给其他两台即可。
1.
// cd /opt/zipPackage/hadoop-2.7.2/etc/hadoop/
// vim core-site.xml
/**
<!--1、NameNode地址:ip/主机名+端口-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:9000</value>
</property>
<!--2、Hadoop运行数据目录:地址-->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/zipPackage/hadoop-2.7.2/data/tmp</value>
</property>
*/
// vim hadoop-env.sh
// 在末尾加上
/**
#JAVA_HOME
export JAVA_HOME=/opt/zipPackage/jdk1.8.0_144
*/
2.
// vim hdfs-site.xml
/**
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop2:50090</value>
</property>
*/
// vim yarn-env.sh
// 在末尾加上
/**
#JAVA_HOME
export JAVA_HOME=/opt/zipPackage/jdk1.8.0_144
*/
3.
// vim yarn-site.xml
/**
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop3</value>
</property>
*/
// vim mapred-env.sh
// 在末尾加上
/**
#JAVA_HOME
export JAVA_HOME=/opt/zipPackage/jdk1.8.0_144
*/
4.
// 改名
// cp mapred-site.xml.template mapred-site.xml
// vim mapred-site.xml
/**
<!--1.指定mr运行自YARN上-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
*/
(8).传输
// 分别传给hadoop2和hadoop3
// rsync -av /opt/zipPackage/hadoop-2.7.2/ect/hadoop/ root@hadoop2:/opt/zipPackage/hadoop-2.7.2/ect/hadoop/
// rsync -av /opt/zipPackage/hadoop-2.7.2/ect/hadoop/ root@hadoop3:/opt/zipPackage/hadoop-2.7.2/ect/hadoop/
六、测试
单启
// 首先格式化,出现at说明配置出错了。格式化只需要再hadoop1上,且格式化一次以后就不用了。
// 集群启动第一要格式化__转到hadoop目录下
// cd /opt/zipPackage/hadoop-2.7.2/etc/hadoop/
// hdfs namenode -format
/**
在Hadoop1上使用:hadoop-daemon.sh start namenode 并使用jps查看是否有namenode
在Hadoop1/2/3上都使用:hadoop-daemon.sh start datanode 并在每台上使用jps,有datanode就行。
*/
群起
// 任意目录
// cd ~/.ssh/
// ssh-keygen -t rsa 后连续三个回车
// ll
// 是否有 id_rsa
// 传1/2/3
// ssh-copy-id hadoop1/2/3
// 测试,实现无密码切换
// ssh hadoop2/3
// 以上要在每台都做一遍。
// 群起配置
// cd /opt/zipPackage/hadoop-2.7.2/ect/hadoop/
// vim slaves
// 删除原所有 +
/**
hadoop1
hadoop2
hadoop3
*/
// 传输给hadoop2/3
// rsync -av /opt/zipPackage/hadoop-2.7.2/ect/hadoop/ root@hadoop2:/opt/zipPackage/hadoop-2.7.2/ect/hadoop/
// rsync -av /opt/zipPackage/hadoop-2.7.2/ect/hadoop/ root@hadoop3:/opt/zipPackage/hadoop-2.7.2/ect/hadoop/
(1)hdfs启动
// cd /opt/zipPackage/hadoop-2.7.2
hdfs启动效果
(2)yarn启动
在第三台启动
yarn启动效果
感谢大家的观看,喜欢的就多个赞,关注一下,谢谢!