赞
踩
本文配置前提是hadoop伪分布安装已完成。
hadoop高可用傻瓜式安装(傻瓜到大部分细节)
某高校作业完成
我们先介绍下高可用的hadoop一般需要什么?
高可用的hadoop一般需要开启四台linux虚拟机,需要用7个节点做hadoop的HA。
其中3台做zookeeper集群,三台做journalnode集群,2台做失败切换zkfc,2台做namenode,三台做datanode,2台reourcemanage,3台nodemanager
所以这四台虚拟机是拥有多个功能的。
为了方便操作,可以视情况下载xshell软件,可以直接与虚拟机直连进行操作
于是我们这里建立四个linux虚拟机,分别命名为node01,node02,node03,node04(在hadoop伪分布安装中已经解决)
在伪分布安装中,四台虚拟机的初步搭建已经完成。我们首先将node01中的jdk分发给另外三台。
//是 ` 符号,不是 ' 符号。是横向数字键1左边的按键
scp jdk-7u67-linux-x64.rpm node02:`pwd`
scp jdk-7u67-linux-x64.rpm node03:`pwd`
scp jdk-7u67-linux-x64.rpm node04:`pwd`
然后我们在每台虚拟机下输入命令 ll(小写L),查看自己所有虚拟机的路径下是否有jdk文件。成功图片如下:
如果安装了xshell,可以点击软件右下角的三横杠
点击全部会话,然后直接在下边的命令栏输入ll,就能让所有机子执行命令
分别在node02、03、04上执行rpm安装命令
rpm -i jdk-7u67-linux-x64.rpm
在node01上输入指令
cd /etc
在此目录下把profile文件分发到node02、03、04上。
scp profile node04:`pwd`
利用Xshell全部会话栏,或者进入每台机子输入指令,刷新文件
source /etc/profile
利用Xshell全部会话栏,或者进入每台机子输入指令
jps
看02、03、04这三台机子的jdk是否装好。
成功图片如下:
利用Xshell全部会话栏,或者进入每台机子输入指令
date
来查看每台机子的当前时间,如果机子之间时间差过大,会导致集群某些进程跑不起来。
如果时间不同步,那么就利用指令进行时间同步。
首先利用Xshell全部会话栏,或者进入每台机子输入指令
yum -y install ntp
进行时间同步器的安装。然后每台执行同步命令
ntpdate time1.aliyun.com
这串代码是为了和阿里云服务器进行时间同步。
利用Xshell全部会话栏,或者进入每台机子输入指令
cat /etc/sysconfig/network
查看HOSTNAME是否正确。
利用Xshell全部会话栏,或者进入每台机子输入指令
cat /etc/hosts
查看IP映射是否正确,若不正确,可以修改文件。
成功图片:
利用Xshell全部会话栏,或者进入每台机子输入指令
cat /etc/sysconfig/selinux
检查你的SELINUX=disabled是否修改。
利用Xshell全部会话栏,或者进入每台机子输入指令
service iptables status
查看防火墙是否关闭。
成功图片如下:
1.在家目录下执行指令
ll -a
看下有无 .ssh 文件,如果没有就输入指令
ssh localhost
切记!ssh localhost后一定要记得输入指令 exit,因为ssh后进入的node0X不是你输入命令的node0X,是两个东西。
家目录是输入指令 cd 即可,即当你在[node02 ~]时,便是在家目录下。
图示如下:
2.当你执行完毕后,拥有.ssh文件,再输入指令
cd .ssh
//再输入指令
ll
3.其中会有许多文件,我们将node01的公钥发给其他三台机子
scp id_dsa.pub node02:`pwd`/node01.pub
scp id_dsa.pub node03:`pwd`/node01.pub
scp id_dsa.pub node04:`pwd`/node01.pub
原理图如下:
如果node02,node03,node04上没有 .ssh 文件,记得 ssh localhost 同时不要忘记exit
4.在node02的.ssh目录下,我们就能看到node01.pub,我们再将这个公钥追加到authorized_keys
cat node01.pub >> authorized_keys
并且在node01上ssh node02看是否免秘钥了,记住随后要exit
试验成功后就给node05,node06都追加一下node01.pub
1.node01与node02互相免秘钥:现在node01可秘钥登录node02,那现在node02上能免秘钥登录node01,所以在node02上
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
然后ssh localhost试验一下。
再分发到node01上:
scp id_dsa.pub node01:`pwd`/node02.pub
在node01的.ssh目录下
cat node02.pub >> authorized_keys
最后在node02上验证是否可以免秘钥登录node01
我们先去node01修改。
我们首先进入在伪分布安装中所布置的hdfs.xml文件。文件夹指令为
cd /opt/ldy/hadoop-
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。