将 SecondaryNameNode 配置到 s105 节点上

相关链接

   Hadoop 完全分布式安装

 


 

0. 说明

  SecondaryNameNode 的作用  参考【待补充】

  在 Hadoop 完全分布式的基础之上配置

  将 SecondaryNameNode 配置到 s105 节点上

  集群规划如下

服务器主机名 ip 节点配置
s101 192.168.23.101 NameNode / ResourceManager 
s102 192.168.23.102 DataNode / NodeManager
s103 192.168.23.103 DataNode / NodeManager
s104 192.168.23.104 DataNode / NodeManager
s105 192.168.23.105 SecondaryNameNode

 

 

 

 

 

 

 

 

 


 

1. 配置 root 用户的 SSH 免密登陆

  1.1 在 s101 节点上切换到 root 用户

su root

 

  1.2 生成公私密钥对

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

 

  1.3 配置免密登陆(完成后退出 root 用户)

ssh-copy-id root@s101
ssh-copy-id root@s102
ssh-copy-id root@s103
ssh-copy-id root@s104
ssh-copy-id root@s105

 

 


 

2. 编写 xcall.sh 脚本

  说明

  xcall.sh 脚本编写是为了多个节点同时执行相同的命令

 

  xcall.sh 脚本如下:

#!/bin/bash

# for循环
for((i=101 ; i<=105; i++)) ; do
    # 更改文本颜色
    tput setaf 2
    # 输出以下文本
    echo ==================== s$i $@ ===================
    # 更改文本颜色
    tput setaf 4
    # ssh 远程登陆主机 s$i ,执行输入的参数的命令
    ssh s$i $@
done

 

  为 xcall.sh 赋予可执行权限

chmod a+x xcall.sh

 

  编写完成之后,将其发送到 /usr/local/bin 下。

mv xcall.sh  /usr/local/bin

 

  创建 jps 软链接

  在 /usr/local/bin 中为 jps 创建软连接(每个服务器都要创建)

ln -s /soft/jdk/bin/jps /usr/local/bin/jps

 



3. 编写 xsync.sh 脚本

  说明

  xsync.sh 脚本编写是为了从主节点同步配置文件到子节点

 

  xsync.sh 脚本如下:

#!/bin/bash

# 指出当前用户名
name=`whoami`
# 指定文件所在文件夹名称
dir=`dirname $1`
# 指定文件的文件名
filename=`basename $1`
# 进入到dir中
cd $dir
# 得到当前目录的绝对路径
fullpath=`pwd`

for((i=102 ; i<=105; i++)) ; do
    tput setaf 2
    echo ==================== s$i $@ ===================
    tput setaf 9
    # 远程同步命令  l 保留软连接 r 递归文件夹
    rsync -lr $filename "$name"@s"$i":$fullpath
done

 

  为 xsync.sh 赋予可执行权限

chmod a+x xsync.sh

 

  编写完成之后,将其发送到 /usr/local/bin 下。

mv xsync.sh  /usr/local/bin

 

  使用 root 用户权限在所有机器上安装 rsync

xcall.sh yum install -y rsync

 


 

 

4. 修改 & 分发配置文件

  4.1 修改配置文件 [ hdfs-site.xml ]

  位置在 /soft/hadoop/etc/hadoop/hdfs-site.xml

 

  添加配置

<property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>s105:50090</value>
</property>

 

  4.2 分发配置文件

  删除其他节点的所有 hdfs-site.xml

ssh s102 rm -r /soft/hadoop/etc/hadoop/hdfs-site.xml
ssh s103 rm -r /soft/hadoop/etc/hadoop/hdfs-site.xml
ssh s104 rm -r /soft/hadoop/etc/hadoop/hdfs-site.xml
ssh s105 rm -r /soft/hadoop/etc/hadoop/hdfs-site.xml

  

  使用 xsync.sh 脚本将所有配置文件进行同步

xsync.sh /soft/hadoop/etc/hadoop/hdfs-site.xml

 


 

 

5. 启动 Hadoop & 验证 SecondaryNameNode 配置成功

  启动 Hadoop

start-all.sh

 

  验证 SecondaryNameNode 配置成功

 

xcall.sh jps

 

 

  

 

 


 

posted @ 2018-09-26 16:01  山间一棵松  阅读(187)  评论(0编辑  收藏  举报