hadoop高可用集群(HA模式)
一、安装前
1. 集群规划
hostname | ip | NN | JN | DN | ZKFC | ZK | RM | NM |
---|---|---|---|---|---|---|---|---|
hadoopHA01 | 192.168.10.201 | yes | yes | yes | ||||
hadoopHA02 | 192.168.10.202 | yes | yes | yes | yes | yes | yes | |
hadoopHA03 | 192.168.10.203 | yes | yes | yes | yes | yes | ||
hadoopHA04 | 192.168.10.204 | yes | yes | yes | yes |
2. 安装前配置
1)创建第一台虚拟机(hadoopHA01):
虚拟机系统镜像:CentOS-7.5-x86_64-DVD-1804.iso
系统版本:centos7.5(GNU/Linux)
内存:5G
处理器:4U
硬盘:20G
[root@hadoopHA01 hadoop]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
…………
[root@hadoopHA01 hadoop]# uname -a
Linux hadoopHA01 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@hadoopHA01 hadoop]# cat /proc/cpuinfo | grep processor | wc -l
4
[root@hadoopHA01 hadoop]# free -m
total used free shared buff/cache available
Mem: 3773 147 1548 11 2076 3283
Swap: 255 0 255
[root@hadoopHA01 hadoop]# lsblk | grep disk
sda 8:0 0 20G 0 disk
2)基本配置
- 网络
[root@hadoopHA01 hadoop]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
…………
IPADDR=192.168.10.201
NETMASK=255.255.255.0
GATEWAY=192.168.10.2
DNS1=192.168.10.2
- 修改主机名
[root@hadoopHA01 hadoop]# cat /etc/hostname
hadoopHA01
- hosts文件,添加集群所有节点的ip/主机名映射
[root@hadoopHA01 hadoop]# cat /etc/hosts
…………
192.168.10.201 hadoopHA01
192.168.10.202 hadoopHA02
192.168.10.203 hadoopHA03
192.168.10.204 hadoopHA04
- 创建分发脚本
[root@hadoopHA01 opt]# cat /root/bin/xsync
#!/bin/bash
#1. 判断参数个数
if [ $# -lt 1 ]
then
echo Not Enough Arguement!
exit;
fi
#2. 遍历集群所有机器
for host in hadoopHA02 hadoopHA03 hadoopHA04
do
echo ==================== $host ====================
#3. 遍历所有目录,挨个发送
for file in $@
do
#4. 判断文件是否存在
if [ -e $file ]
then
#5. 获取父目录
pdir=$(cd -P $(dirname $file); pwd)
#6. 获取当前文件的名称
fname=$(basename $file)
ssh $host "mkdir -p $pdir"
rsync -av $pdir/$fname $host:$pdir
else
echo $file does not exists!
fi
done
done
3. 安装jdk与hadoop
- 传包
将jdk与hadoop安装包上传到新建的/opt/packages目录下
[root@hadoopHA01 hadoop]# mkdir /opt/packages/
[root@hadoopHA01 hadoop]# ll /opt/packages/
总用量 520600
-rw-r--r-- 1 root root 338075860 4月 30 16:57 hadoop-3.1.3.tar.gz
-rw-r--r-- 1 root root 195013152 4月 30 16:57 jdk-8u212-linux-x64.tar.gz
- 解压即安装
分别解压到新建的/opt/software目录下
[root@hadoopHA01 packages]# mkdir /opt/software/
[root@hadoopHA01 packages]# tar xvf jdk-8u212-linux-x64.tar.gz -C /opt/software/
[root@hadoopHA01 packages]# tar xvf hadoop-3.1.3.tar.gz -C /opt/software/
- 创建软连接
[root@hadoopHA01 software]# ln -s hadoop-3.1.3/ hadoop
[root@hadoopHA01 software]# ll
总用量 0
lrwxrwxrwx 1 root root 13 4月 30 17:46 hadoop -> hadoop-3.1.3/
drwxr-xr-x 9 atguigu atguigu 149 9月 12 2019 hadoop-3.1.3
drwxr-xr-x 7 10 143 245 4月 2 2019 jdk1.8.0_212
- 配置环境变量
新建/etc/profile.d/my_env.sh文件写入以下内容
[root@hadoopHA01 packages]# cat /etc/profile.d/my_env.sh
#JAVA_HOME
export