部署 spark2.2 集群 (standalone 模式)
欢迎访问我的 GitHub
这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos
一起来实战部署 spark2.2 集群(standalone 模式)
版本信息
操作系统 CentOS 7.5.1804
JDK:1.8.0_191
scala:2.12.8
spark:2.3.2
机器信息
本次实战用到了三台机器,相关信息如下:
接下来开始实战;
关闭防火墙
执行以下命令永久关闭防火墙服务:
设置 hostname(三台电脑都做)
修改/etc/hostname 文件,将几台电脑的主机名分别修改为前面设定的 master、slave0 等;
设置/etc/hosts 文件(三台电脑都做)
在/etc/hosts 文件尾部追加以下三行内容,三台电脑追加的内容一模一样,都是下面这些:
创建用户(三台电脑都做)
创建用户和用户组,并指定 home 目录的位置:
设置 spark 用户的密码:
以 spark 账号的身份登录;
文件下载和解压(三台电脑都做)
分别去 java、scala 的官网下载以下两个文件:
上述两个文件下载到目录/home/spark 下,依次解压后,/home/spark 下的内容如下所示:
修改/home/spark 文件夹下的.bash_profile 文件,在尾部增加以下内容(spark 相关的是后面会用到的,这里把配置先写上):
执行以下命令,使得.bash_profile 的修改生效:
分别执行 java -version 和 scala -version 命令,检查上述设置是否生效:
spark 的设置(只在 master 机器操作)
登录 master 机器:
去 spark 的官网下载文件 spark-2.3.2-bin-hadoop2.7.tgz,下载到目录/home/spark 下,在此解压;
进入目录/home/spark/spark-2.3.2-bin-hadoop2.7/conf ;
执行以下命令,将"spark-env.sh.template"更名为"spark-env.sh":
打开文件 spark-env.sh,在尾部增加以下内容:
进入目录/home/spark/spark-2.3.2-bin-hadoop2.7/conf ,执行以下命令,将 slaves.template 更名为 slaves:
打开文件 slaves,将尾部的 localhost 删除,再增加以下内容:
以上就是所有设置,接下来要将 spark 文件夹同步到其他机器上
将 spark 文件夹同步到其他机器
在 master 机器执行以下命令,即可将整个 spark 文件夹同步到 slave1:
期间会要求输入 slave1 的密码,输入密码后即可开始同步;
在 master 机器执行以下命令,即可将整个 spark 文件夹同步到 slave2:
期间会要求输入 slave2 的密码,输入密码后即可开始同步;
启动 spark
以 spark 账号登录 master 机器,执行以下命令即可启动 spark 集群:
启动过程中,会要求输入 slave1、slave2 的密码,输入即可;
为了避免每次启动和停止都要输入 slave1 和 slave2 的密码,建议将三台机器配置 ssh 免密码登录,请参考《Docker 下,实现多台机器之间相互 SSH 免密码登录》
启动成功后,可以通过浏览器查看启动情况,如下图,地址是:http://192.168.150.130:8080/
至此,spark 集群部署成功,接下来的章节,我们会一起进行更多的 spark 实战;
欢迎关注 ITpub:程序员欣宸
版权声明: 本文为 InfoQ 作者【程序员欣宸】的原创文章。
原文链接:【http://xie.infoq.cn/article/764948306c5b1b96b97867949】。文章转载请联系作者。
评论