在伪分布式的基础上安装hadoop高可用
hadoop-3.4.6安装方案
步骤:
1.分发jdk到node03,node04,node05
在Xshell的全部会话栏里,输入ll
,查看jkd是否发送成功
2.给node03,node04,node05分别安装jdk
①在node03,node04,node05上执行rpm安装命令:
rpm -i jkd-7u67-linux-x64.rpm
②在node02上cd /etc,在此目录下把profile文件分发到node03,node04,node05上:
scp profile node03:'pwd'
scp profile node04:'pwd'
scp profile node05:'pwd'
在Xshell的全部会话栏里,输入:source /etc/profile
,然后输入:jps
,查看node03,node04,node05这三台机子的jdk是否安装好:
3.同步所有服务器的时间
①利用 date
命令查看机子的当前时间
时间不能差太大,否则集群启动后某些进程跑不起来。
②若时间不同步
1)yum进行时间同步器的安装
yum -y install ntp
2)执行同步命令
ntpdate time1.aliyun.com
和阿里云服务器时间同步
4.装机之前的配置文件检查
①查看hostname是否正确
cat /etc/sysconfig/network
②查看IP映射是否正确
cat /etc/hosts
③查看selinux里是否为disabled
cat /etc/sysconfig/selinux
④查看防火墙是否关闭
service iptables status
5. namenode与其他三台机子的免密钥设置
①在家目录下 ll -a
看下有无.ssh 文件,如果没有就ssh localhost一下
ssh-keygen -t dsa -P ''-f ~/.ssh/id_dsa
cat ~/.ssh/id dsa.pub >> ~/.ssh/authorized_keys
②cd .ssh,并 ll 查看
③把node02的公钥发给其他三台机子
scp id_dsa.pub node03:'pwd'/node02.pub
scp id_dsa.pub node04:'pwd'/node02.pub
scp id_dsa.pub node05:'pwd'/node02.pub
④在node03,node04,node05追加一下node02.pub
cat node02,pub >> authorized_keys
6.两个namenode之间相互免密钥
在node03上:
ssh-keygen -t dsa -P ''-f ~/.ssh/id_dsa
cat ~/.ssh/id dsa.pub >> ~/.ssh/authorized_keys
然后ssh localhost验证一下
然后将id_dsa分发到node02:
scp id_dsa.pub node02:'pwd'/node03.pub
在node02的 .ssh 文件下:
cat node03.pub >> authorized_keys
在node03上ssh node02 验证一下是否可免密钥登录
7.修改namenode的一些配置信息
1)vi hdfs-site.xml
①去掉snn的配置
②增加以下property
综上之后,hdfs-site.xml的内容为:
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.nameservices</name>
<value>mycluster</value>
</property>
<property>
<name>dfs.ha.namenodes.mycluster</name>
<value>nn1,nn2</value>
</property>
<property>
<name>dfs.namenode.rpc-address.mycluster.nn1</name>
<value>node02:8020</value>
</property>
<property>