shell半自动化部署standalone的spark分布式集群

背景:以前每次配置hadoop和spark都要各种输入配置,太烦了。这次花了点时间,自己做了个shell来辅助自己的spark部署方式。cdh的hadoop没有部署,以后再部署,hadoop和spark准备分开来搞。

shell半自动化部署standalone的spark集群

一搞定3个虚拟机

我是使用的vm来做的三个虚拟机,系统为centos6.5,现在各种系统都支持吧,详细的可以看官网支持哪些系统。
虚拟机自己搞,我这里贴出机器名和host

vim /etc/sysconfig/network
hostname=master

vim /etc/sysconfig/network
hostname=slave1

vim /etc/sysconfig/network
hostname=slave2

vim /etc/hosts
192.168.247.132 master
192.168.247.133 slave1
192.168.247.134 slave2

就是下面三台
这里写图片描述

二 安装免密码

1配置免密码服务(自动化)
首先各个机器需要产生公钥ssh-keygen -t rsa(必须做的),且每个机器的节点的密码最好一样,因为运行shell的时候需要手动输入密码,这里输入spark用户的密码
我是使用新建的用户spark安装的

然后在master节点运行自己写的shell,半自动化运行免密码
1是slave节点ip
2是slave节点同步过来的公钥(临时目录)
3是运行shell
shell保存的路径为/tmp/authorize
ps:使用spark用户的话,公钥生成在/home/spark/.ssh目录哈
这里写图片描述

三 安装jdk,scala,spark

这里主要是使用自己 写的shell把jdk,scala,spark解压,改名,配置/etc/profile
三台节点都要把/home目录的权限改了,因为我要装在/home/目录(个人习惯),我目录写死了的,可以把shell修改一下
chmod 777 /home
运行这个/tmp/config_shell/run_config.sh就可以了,不过中间会让你输入密码哈,因为需要修改/etc/profile的内容

下面是目录的一下描述,要使用的话,把shell的里面的目录修改就好了
安装shell的保存路劲:/tmp/config_shell
/etc/profile文件的配置:/tmp/config_shell/config_etc_profile.sh
jdk的解压与改名:/tmp/config_shell/config_jdk.sh
scala的解压与改名:/tmp/config_shell/config_scala.sh
spark的解压与改名:/tmp/config_shell/config_spark.sh
总的运行shell:/tmp/config_shell/run_config.sh
配置spark的配置文件(spark-env.sh,slaves):/tmp/config_shell/config_spark_evn.sh
把主节点的所有安装配置发送到从节点:/tmp/config_shell/distribute_slaves.sh
这里写图片描述

软件保存路劲:/home/dowload/
/home/dowload/jdk-7u79-linux-x64.tar.gz
/home/dowload/scala-2.11.8.tgz
/home/dowload/spark-2.0.0-bin-hadoop2.6.tgz

这里写图片描述

软件安装路劲:/home/
/home/jdk1.7
/home/scala2.11
/home/spark2.0
这里写图片描述

四:配置spark的配置文件

通过shell修改spark的一些配置文件:

#主要修改的:
1spark-env.sh
2slaves
#修改spark的配置文件
/tmp/config_shell/config_spark_evn.sh
#把jdk,scala,spark,/etc/profile,传输到各个节点中
/tmp/config_shell/distribute_slaves.sh

每个文件使用scp时的用户,会提升输入密码,这里输入root密码
jdk:spark用户
scala:spark用户
spark:spark用户
/etc/profile:root用户

五验证

对了,必要要在每个机器上使用source /etc/profile 或者重启每台机器。因为在shell中,使用source /etc/profile没有效果。

1启动集群

在master机器上运行
$SPARK_HOME/sbin/start-all.sh
这里写图片描述

2查看启动日志并jps查看

more /home/spark2.0/logs/spark-spark-org.apache.spark.deploy.master.Master-1-master.out
下图表示启动成功,当然也要在每台机器上jps,看看master和work进程是否运行
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

3web查看

http://192.168.247.132:8090/
默认是8080接口哈,但是我修改为8090接口
这里写图片描述

从上面可以看出,有两台slave节点哈,到这里基于standalone的spark分布式集群安装成功。

想把shell传上来的,但是没找到连接,csdn是不是不能传,能的话,留言教我下哈。
对shell有兴趣的可以联系我邮箱444687196@qq.com,或者留下邮箱,我发给大家。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猫二哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值