• 从0到1搭建spark集群---企业集群搭建


    今天分享一篇从0到1搭建Spark集群的步骤,企业中大家亦可以参照次集群搭建自己的Spark集群。

    一。下载Spark安装包

    可以从官网下载,本集群选择的版本是spark-1.6.0-bin-hadoop2.6

    在官网中找到对应的链接即可http://spark.apache.org/downloads.html

    或者用本人云盘下载地址 附上链接如下链接:https://pan.baidu.com/s/1o7Vrkue 密码:sc2z

    二。部署和规划Spark集群

    提前准备好四台虚拟主机,三台主机 node1 node2 node4 做Spark集群  develop做Spark客户端用于提交程序

    集群规划如下:

    node1 Master节点 node2,node4 Worker节点 架构图如下:

     在此之前需要配置Master节点到Worker的免密登陆因为在Master节点需要启动所有的Worker节点,所有需要配置Master到Worker的免密登陆 只需要这一个免密配置即可 不需要配置woker--worker  worker-master节点的免密  因为主要是在Master节点上启动集群

       免密设置具体参考如下:http://blog.csdn.net/leexide/article/details/17252369

    1.分别在三台集群下创建同名目录 (目录一定要一致,方便集群部署)

    本集群环境创建为/root/spark目录

    2.使用Xshell将文件上传至其中某个节点即可(没有必要上传全部节点,因为后期还要重新配置)

    上传至某个节点之后,假设上传到主节点Master节点后

     3.解压目录,命令和结构如下

     tar -zxf   spark-1.6.0-bin-hadoop2.6.tar

    然后重命名 方便后期部署

    mv  spark-1.6.0-bin-hadoop2.6  spark-1.6.0

    结构如下:

    4.配置参数

    进入到配置目录,路径为

    /root/spark/spark-1.6.0/conf

    后可看见文件如下

    我们需要把template关键字去掉 因为是个模板文件 简单介绍下文件作用:

    slaves文件---worker几点所在目录

    spark-default.conf目录文件 默认配置文件

    spark-env.sh环境配置文件

    这几个是我们主要用的

    更改后的目录文件格式如下:

    配置spark-env.sh

    可以看到集群配置参数如下,我们主要配置这些参数

    配置完后的截图如下:

     解释一下参数意义:

    SPARK_MASTER_IP=node1  #主节点主机名

    SPARK_MASTER_PORT=7077 #主节点和Worker的通信端口

    SPARK_WORKER_CORES=2 # 每个worker进程能管理两个核

    SPARK_WORKER_MEMORY=2g # 每个worker进程能管理2g内存

    SPARK_MASTER_WEBUI_PORT=8888 # 主节点WEB-UI展示图  默认端口是8080

    SPARK_WORKER_INSTANCES=1 #每个worker节点能够启动的worker进程 默认是一个 如果为2  则每一个worker几点能够启动2个Worker进程 就这意思

    根据这配置 则 Master节点能够管路4core 4g内存(有两个Worker进程 每一个worker进程管理两个核,2g内存)

     配置slaves文件:配置从节点的ip 或主机名

    截图如下

    5.将主节点的配置分发到从节点 同名目录下

    命令如下:

    回到spark的主目录配置文件

    然后分发到node2  node4节点 这里命令如下`pwd`即到当前目录

    6、启动Spark集群:
        执行安装包sbin目录下的start-all.sh脚本
        ./sbin/start-all.sh

     7.查看集群状态

    jps命令为jvm的命令与局之一 专门查看java进程

    Master节点状态:

    Worker节点状态:

    查看WEBUI是否能访问:

    注意关闭Linux的防火墙:具体操作如下

    /etc/init.d/iptables status

    会得到一系列信息,说明防火墙开着。

    /etc/init.d/iptables stop

    永久关闭:

    chkconfig --level 35 iptables off

    在本机访问node1:8888(别忘配置host)

     至此,集群搭建成功!

    8.测试集群是否可用

     将主节点中的spark文件同步到客户端develop节点

    在develop节点中提交spark任务 ,由于本例测试 所以直接提交spark自带测试用例 计算Pi的值

    注意别忘配置Client(develop)客户端的host 因为要提交任务到Master节点(node1)节点上去运行

    即可看见运行状态

    在WebUI也可以看见

     到此集群测试完毕!!!

    持续更新中。。。。,欢迎大家关注我的公众号LHWorld.

  • 相关阅读:
    ArcGIS for JavaScript继承TiledMapServiceLayer来实现“动态切图”
    Commvault Oracle备份常用命令
    Commvault逻辑架构及组件说明
    数据保护平台如何为新一代应用,人工智能和数据科学提供动力
    SQL Server SSL/TLS 加密
    curl传递大json文件报错解决方法
    MySQL5.5 安装mcafee mysql-audit插件 不成功
    CentOS 6.5安装配置NFS服务器
    利用dump函数理解oracle如何存储各种类型数据
    xfs文件系统挂载大容量磁盘
  • 原文地址:https://www.cnblogs.com/LHWorldBlog/p/8045321.html
Copyright © 2020-2023  润新知