目录
模板虚拟机环境准备
安装模板虚拟机,IP地址***.***.**.***(自己主机的IP地址),主机名Hadoop100,内存4G,硬盘50G
关闭防火墙,关闭防火墙开机自启
systemctl stop firewalld systemctl disable firewalld.service
创建atguigu用户,并修改atguigu用户密码,使他具有root用户权限
在 /opt 目录下创建文件夹,并修改所属主和所属组卸载虚拟机自带的JDK
克隆虚拟机
1. 利用模板机hadoop100,克隆三台虚拟机;hadoop102 hadoop103 hadoop104
2.修改克隆机IP
vim /etc/sysconfig/network-scripts/ifcfg- ens33
3.修改克隆机主机名
vim /etc/hostname hadoop102
4.配置Linux克隆机主机名称映射hosts文件,打开 /etc/hosts 修改对应的主机名
在hadoop102安装JDK
1.用 XShell 传输工具将 JDK 导入到 opt 目录下面的 software 文件夹下面(直接拖拽到XShell里面即可)
2.在 Linux 系统下的 opt 目录中查看软件包是否导入成功
/opt/software/ # 查看后的结果为 jdk-8u212-linux-x64.tar.gz
3.配置JDK环境变量
sudo vim /etc/profile.d/my_env.sh #添加以下内容 #JAVA_HOME export JAVA_HOME=/opt/module/jdk1.8.0_212 export PATH=$PATH:$JAVA_HOME/bin #然后再source一下 /etc/prifile ,让新的环境变量PATH生效 source /etc/prifile #分发JDK xsync /opt/module/jdk1.8.0_212/ #分发环境变量配置文件 sudo /home/atguigu/bin/xsync /etc/profile.d/my_env.sh
4.分别在hadoop103、hadoop104、上执行source
编写集群分发脚本 xsync
1. 在用的家目录/home/atguigu下创建bin文件夹
2.在/home/atguigu/bin 目录下创建xsync文件,以便全局调用
3.修改脚本xsync 具有执行权限
mkdir bin cd /home/atguigu/bin vim xsync chmod 777 xsync
#!/bin/bash
#1. 判断参数个数
if [ $# -lt 1 ]
then
echo Not Enough Arguement!
exit;
fi
#2. 遍历集群所有机器
for host in hadoop102 hadoop103 hadoop104
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
SSH无密登陆配置
集群所有进程查看脚本 xcall.sh
1.在/home/atguigu/bin目录下创建脚本xcall.sh ,编写脚本
2.修改脚本执行权限
3.启动脚本
vim xcall.sh
chmod 777 xcall.sh
xcall.sh jps
# xcall.sh脚本
#! /bin/bash
for i in hadoop102 hadoop103 hadoop104
do
echo --------- $i ----------
ssh $i "$*"
done