前言
此方法适用于有一定Linux基础,又不想花较多时间去搭建的同学。对于小白,我建议按照传统朴素的方法进行搭建,因为在搭建的过程中,不仅能够学会常用的Linux命令,更能够磨炼你的意志。
一、前期准备
- 准备好三台centos虚拟机
- 确定三台虚拟机的ip地址
- 下载好所需组件的安装包,
hadoop-3.3.3.tar.gz
,jdk-8u341-linux-x64.tar.gz
二、脚本项目简介
整个自动化部署脚本项目预览
frames文件夹
存放的是所需组件的安装包;syetem文件夹
存放的是系统配置脚本,它的功能:配置jdk、关闭防火墙、配置ssh免密登录、配置网络服务,更改主机名等;hadoop文件夹
存放的是hadoop安装脚本,它的功能:自动解压安装hadoop、自动填写配置文件;frames.txt
指明虚拟机所需要的环境,对应于frames文件夹;host_ip.txt
指明三台虚拟机的IP地址、主机名、用户、密码。
三、使用方法
三台虚拟机都需要进行以下1–>7操作,8、9操作只需在主节点node01机器上进行。避免重复进行1–>4操作,可以采用通过ssh分发文件的方法,将赋予权限后的automaDeploy文件分发给node02、node03。
-
将此脚本项目打包为zip文件,通过xshell上传到虚拟机中
-
创建/home/hadoop文件夹(该脚本不能灵活使用,可以在脚本中修改路径,比如改为/root/hadoop等)
mkdir /home/hadoop
-
将zip文件解压至文件夹/home/hadoop中
unzip automaticDeploy.zip -d /home/hadoop/
-
给脚本赋予root权限
chmod +x /home/hadoop/automaticDeploy/hadoop/* /home/hadoop/automaticDeploy/systems/*
-
进入到system文件夹中执行batchOperate.sh脚本批量初始化环境
/home/hadoop/automaticDeploy/systems/batchOperate.sh
-
进入到hadoop文件夹执行installHadoop.sh安装hadoop
/home/hadoop/automaticDeploy/hadoop/installHadoop.sh
-
生效环境变量
source /etc/profile
-
初始化namenode
hadoop namenode -format
-
启动集群
start-all.sh
四、使用过程中可能出现的问题以及解决办法
-
ssh免密码登录:由于脚本运行不同步,导致ssh免密码登录失败。例如:node01出现无法免密码登录node02
解决方法:
ssh-copy-id node02
如果其他机器出现相同问题,解决方法同上
-
假如出现其他异常的问题,百度能够帮你解决
五、感谢
项目基于BigData_AutomaticDeploy优化而成,由于老项目hadoop安装脚本适配于hadoop2.0x。我在此基础上加以优化改进,使其适配hadoop3.0x。后续我会优化其他组件安装的脚本。(比如spark、sqoop、hive、habse等我个人熟悉的组件)