大数据技术之Hadoop-3.3.4高可用安装部署操作文档

一、集群部署规划

环境Linux+centos8

注意:NameNode和SecondaryNameNode不要安装在同一台服务器

注意:ResourceManager也很消耗内存,不要和NameNode、SecondaryNameNode配置

因为环境不允许,所以有点重叠的部署组件

主机名 namenode datanode JobHistoryServer Resourcemanager NodeManager ZK JournalNode ZKFC
master
salve1
salve2
salve3
salve4

二、zookeeper安装部署以及脚本使用说明

2.0 将zookeeper安装包到/opt/software

[appview@master ~]$ cd /opt/software/
[appview@master software]$
[appview@master software]$ tar -zxvf apache-zookeeper-3.7.1-bin.tar.gz -C /opt/moudle/

2.1配置服务器编号

[appview@master software]$ cd /opt/moudle/zookeeper-3.7.1/
#### 创建zData目录
[appview@master software]$ mkdir zData
[appview@master zData]$ vim myid
###### 添加 1 如下
[appview@master zData]$ cat myid
1
[appview@master zData]$
​

2.2配置zoo.cfg文件

[appview@master conf]$ pwd
/opt/moudle/zookeeper-3.7.1/conf
[appview@master conf]$ ll
总用量 12
-rw-r--r-- 1 appview appview  535 5月   7 2022 configuration.xsl
-rw-r--r-- 1 appview appview 3435 5月   7 2022 log4j.properties
-rw-rw-r-- 1 appview appview 1246 3月  29 08:45 zoo_sample.cfg
[appview@master conf]$
[appview@master conf]$ mv zoo_sample.cfg zoo.cfg
[appview@master conf]$ vim zoo.cfg
########## 修改数据路径
dataDir=/opt/moudle/zookeeper-3.7.1/zData          
​
########## 添加以下内容
#######################cluster##########################
server.1=master:2888:3888
server.2=salve1:2888:3888
server.3=salve2:2888:3888

2.3分发安装包

[appview@master conf]$ xsync-1-3  /opt/moudle/zookeeper-3.7.1

修改slave1、salve2路径/opt/moudle/zookeeper-3.7.1/zData/myid,分别改为对应的2、3

2.4添加环境变量

[appview@master software]$ vim ~/.bashrc

添加以下内容

#ZK_HOME export ZK_HOME=/opt/moudle/zookeeper-3.7.1 export PATH=$PATH:$ZK_HOME/bin

2.5 一键启动zookeeper脚本

[appview@master bin]$ vim  zk.sh
脚本内容如下:
#!/bin/bash
case $1 in
"start"){
      for i in  master salve1 salve2
          do
          echo --------zookeeper-3.7.1 $i -----------------
                ssh $i "/opt/moudle/zookeeper-3.7.1/bin/zkServer.sh start"
          done
};;
"stop"){
      for i in master salve1 salve2
          do
          echo --------zookeeper-3.7.1 $i -----------------
                ssh $i "/opt/moudle/zookeeper-3.7.1/bin/zkServer.sh stop"
          done
};;
"status"){
      for i in master salve1 salve2
          do
          echo --------zookeeper-3.7.1 $i -----------------
                ssh $i "/opt/moudle/zookeeper-3.7.1/bin/zkServer.sh status"
          done
};;
esac
启动zookeeper服务
#####启动
[appview@master bin]$ zk.sh start   
#####停止
[appview@master bin]$ zk.sh stop
#####状态
[appview@master bin]$ zk.sh status

2.6 脚本说明以及使用

rsync是一个强大的文件同步工具,可以在远程或本地之间同步文件和目录,并且在同步时可以实现增量传输,只传输变更的部分,从而节约带宽和时间
### 基本格式
rsync [选项] 源目录/文件
-a  归档模式(保留目录机构及权限)
-v  显示详细输出信息
-r 递归复制整个目录
-u 仅在源文件比目标文件新或者不存在时进行复制
-z 传输时压缩文件
-e 指定远程shell程序
--delete 删除目标目录中不存在于源文件中的文件
--exclude = PATTERN:排除匹配指定模式的文件或目录
在家目录下创建bin目标,在里面放脚本可以在任意地方调用
分发脚本xsync如下
[appview@master ~]$ cd bin/
[appview@master bin]$ vim xsync
#### 内容如下,根据自己需要分发的几个节点进行修改
​
#!/bin/bash
# 判断参数个数
if [ $# -lt 1 ]
then
   echo Not Enough Arguement!
   exit;
fi
# 遍历集群所有机器
for host in master salve1 salve2 salve3 salve4
do
  echo ================ $host ==========================
​
  # 遍历所有目录,挨个发送
  for file in $@
  do
  # 判断文件是否存在
  if [ -e $file ]
  then
  # 获取父目录
  pdir=$(cd -P $(dirname $file); pwd)
  # 获取当前文件的名称
  fname=$(basename $file)
  ssh $host "mkdir -p $pdir"
  rsync -av $pdir/$fname  $host:$pdir
  else
    echo $file does not exists!!!
  fi
  done
done
xcall脚本如下
#!/bin/bash
​
for host in master salve1 salve2 salve3 salve4
do
    echo ----------- $host 
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值