《Spark数据分析:基于Python语言 》 —2.7 部署多节点的Spark独立集群
2.7 部署多节点的Spark独立集群
既然你已经在本地模式中成功安装并测试了Spark,那么是时候搭建完整的分布式Spark集群来发掘Spark的真正威力了。在这个练习中,你会使用4台Linux主机来创建一个简易的使用Spark独立调度器的三节点集群。步骤如下所列:
1)规划集群拓扑结构,在多个系统内安装Spark。因为这是一个分布式系统,所以你需要依照前面的例子将Spark安装到三台额外的主机上。另外,你需要分配一台主机作为Spark主节点,其他主机作为工作节点。在本例中,我们把第一台主机命名为sparkmaster,而其余几台分别命名为sparkworker1、sparkworker2和sparkworker3。
2)配置网络。Spark集群中,所有的节点都需要和集群中其他所有的节点通信。实现此目标最简单的办法就是使用hosts文件(在每个系统的/etc/hosts文件里添加所有主机的记录)。确保每个节点都能解析所有节点。可以使用ping命令来验证,比如,在sparkmaster主机上可以使用如下命令:
3)在每台主机上创建并编辑spark-defaults.conf文件。要在每个节点上创建并配置spark-
defaults.conf文件,请在sparkmaster和sparkworker主机上运行如下命令:
4)在每台主机上创建并编辑spark-env.sh文件。要在每个节点上创建并配置spark-env.sh
文件,请在sparkmaster和sparkworker主机上完成如下任务:
5)启动Spark主进程。在sparkmaster主机上,运行如下命令:
通过访问http://sparkmaster:8080/查看Spakr主进程的网页用户界面,来检查Spark主进程是否正常运行。
6)启动Spark工作节点。在每个sparkworker主机上运行如下命令:
通过http://sparkslaveN:8081/查看Spark工作节点的用户界面。
7)测试该多节点集群。从集群内任意一个节点的终端,运行Spark内置的圆周率估算例程,如下所示:
你会看到和前一个练习类似的输出结果。
你也可以打通Spark主节点到工作节点的SSH(Secure Shell)无密码访问。这是远程登录以启动和关闭从节点守护进程所必须的。
- 点赞
- 收藏
- 关注作者
评论(0)