Ubantu自动搭建(hadoop+hbase+spark+zookeeper)分布式集群脚本
本文提供一键式部署大数据集群的脚本,用户只需输入对应的信息并按脚本执行即可。对应的下载资料如下:
链接:https://pan.baidu.com/s/1AVlLbP2MNPLOAzmo75rpMQ
提取码:e1af
1 前提条件
1) 操作系统:必须 Ubuntu
一键部署下的软件默认配置为Ubantu系统。
2) 必须安装ssh服务
a. ssh服务安装命令如下:
apt-get install openssh-server
b. ssh服务启动命令如下:
service ssh restart
c. ssh服务需要开启root用户远程登录权限
通过ssh的配置文件来确认。
需要修改/etc/ssh/sshd_config文件中的 PermitRootLogin 这一项,改成 PermitRootLogin yes
再次重启ssh服务,命令如下:
service ssh restart
d. 更换sh的默认执行dash为bash,采用默认配置hadoop和zookeeper等服务启动不了通过命令 ls -l /bin/sh 来确认如果发现是dash请执行如下命令:
sudo dpkg-reconfigure dash
选择 “NO”
e. 集群中所有机器的机器名不能重复
3) ubantu18.04系统
请先执行下面的命令:
apt-get install libtcl8.6 ,ubantu18.04系统下安装tcl软件时需要安装libtcl8.6,ubantu18.04系统默认的libtcl版本与tcl不兼容。
2 虚拟机环境准备
A. 新建ubantu系统
-
Ubantu官网自行下载相应的Ubantu系统。
Ubantu官网: https://www.ubuntu.com -
在VMvare(12及以上版本)中完成安装,并克隆三份。
https://jingyan.baidu.com/article/295430f1c2b3940c7f005064.html(安装过程) -
开启系统,设置root密码
可采用命令:sudo passwd root,连续两次输入密码即可。 -
安装ssh服务并相应设置。
-
后面过程一致。
B.压缩文件自带的Ubantu18.04
- 解压缩Ubantu-1804.rar,克隆三份。
- 在VMvare中打开三台机器。(建议使用12及以上版本)。
- 登录系统,密码:chen
- 切换到root用户(命令:sudo su root),密码:chen
- 分别查看三台机器的ip(命令:ifconfig),如图所示:
其他两台机器ip为:
192.168.27.175
192.168.27.176 - 修改机器的hostname。
(命令:hostnamectl set-hostname chen2/chen3)
192.168.27.175 修改为chen2
192.168.27.176 修改为chen3
3 onestep部署配置
1) 复制onestep.tar到192.168.27.174机器的/home/chen目录下,这里把174作为主机,并解压。
2) 解压后修改conf/host.conf文件的内容。
按照:机器ip,机器名,root用户密码的顺序填写。
3) 修改conf/init.conf文件的内容:
在这里只需要修改map(默认新建的用户,若修改请统一修改为你所需要的用户名,并在systemsettings.sh脚本中完成相应的修改,否则会出错。)
4 执行bin/01preinstall.sh
1) 检查 bin目录和expect目录下的所有文件,需要有执行权限。如果没有用chmod 777 * 命令赋予权限。
2) 执行这个脚本(必须在root用户下执行)
3) 执行后的截图如下
4) 验证所有机器
切换到map用户,验证java。(在/home/map目录下有jdk1.8.0_171)
5 执行bin/02installssh.sh
在主机上,切换到map账户(su map),执行这个脚本,执行结果如下:
6 执行bin/03installSoft.sh
1) 在主机上,切换到map账户(su map),执行这个脚本。
安装成功后,会在安装软件目录生成start_all.sh 和 stop_all.sh,后面可以用这两个脚本来统一启动和关闭文件。
2) 验证hadoop
3) 验证hbase
4) 验证spark
5) 启动Hbase shell
此时可以切换到/home/map/hbase/bin文件下,执行./hbase shell,开启。如下图所示:
a. 执行create ‘test’, 'cf’命令,创建链表
b. 执行list 'test’命令查看信息
c. 执行describe 'test’命令查看详细信息
d. 执行put ‘test’, ‘row1’, ‘cf:a’, 'value1;put ‘test’, ‘row2’, ‘cf:b’, 'value2;put ‘test’, ‘row3’, ‘cf:c’, 'value3 命令,在test表中放入数据。
e. 执行scan 'test’命令查看。
f .使用flush 'test’命令,更新到hdfs中,然后可以在http://chen1:50070中查看。
7 可能会出现的问题
由于采用不同的ubantu系统可能存在软件兼容、系统不适配等问题,可能会遇到的情况如下:
1) ssh不能安装(apt-get install openssh-server不能正常执行)
此时可能是ubantu系统中内置软件版本过低,先使用sudo apt-get upgrade(若是在root用户下安装不需要sudo)命令完成ubantu系统软件的更新,然后再执行上述命令安装ssh即可。
2) Ifconfig不能正常使用,且也不能安装。
不能安装的原因和第一个一样,先使用sudo apt-get upgrade命令完成ubantu系统软件的更新,再执行sudo apt install net-tools安装命令即可。(若是在root用户下安装不需要sudo)。
3) 执行脚本01preinstall.sh时出现dpkg报错。
此时执行如下命令:
a. rm /var/lib/dpkg/lock
b. dpkg --configure -a
c. 若执行以上步骤之后dpkg还是报错,执行ps -aux | grep dpkg (查看进程中正在执行的dpkg命令),然后用kill命令关掉正在执行的dpkg进程,并重复a、b过程。
4) ntp安装过程报错
ntp服务未能正常开启,请执行如下命令:
a. dpkg --configure -a 选择“N”
b. 再次启动service ntp status