spark集群管理简述
来源:互联网 发布:dw软件破解版 编辑:程序博客网 时间:2024/06/06 01:42
集群模式概述:
组件:spark 应用程序在集群中以独立的一系列进程运行。通过驱动主程序(dirver)里创
建的sparkContext对象进行协调。sparkContext 可以连接几类集群管理框架(如standalone,Mesos,YARN)。这些集群管理可以在应用间分配资源,一旦连接,spark 就需
要获得那些子节点上的线程池,就是那些用于执行计算和存储应用数据的进程。然后他会把你的应用程序的代码(用JAR 或Python定义的文件并传送到SparkContext)发送给线程池,最后,sparkContext发送任务给线程池执行。
这个框架需要注意如下几点:
1.各个应用有自己的线程池进程,会在整个应用的运行过程中保持并在多个线程中运行任务。这样做的好处是把应用相互孤立,既在调度方面(各个驱动调度它自己的任务)也在执行方面(不同应用的任务在不同的JVM上运行)。然而,这也意味着若不把数据写到额外的存储系统的话,数据就无法在不同的Spark应用间(SparkContext的实例)共享。
2.因为驱动在集群上调度任务,它应该运行在接近到工作节点的机器上,在相同的局域网内更好。如果你想对远程的集群发送请求,较好的选择是为驱动打开一个RPC(远程过程调用协议),让它就近提交操作而不是运行离工作节点很远的驱动。
集群管理类型:
系统目前支持3中集群管理框架:
单例模式
Apache Mesos模式-一种通用的集群管理,可以运行Hadoop MapReduce和服务应用的模式
Hadoop YARN模式:Hadoop2.0中的资源管理模式
给集群发布代码
给集群发布代码的一种推荐的方式是通过SparkContext的构造器,这个构造器可以给工作节点生成JAR文件列表(Java/Scala)或者.egg文件和.zip包文件(Python)。你也可以执行SparkContext.addJar和addFile来动态的创建发送文件。
监控器
每个驱动程序有一个web UI,典型的是在4040端口,你可以看到有关运行的任务、程序和存储空间大小等信息。你可以在浏览器中输入简单的url方式来访问:http://<驱动节点>:4040.监控器也可以 指导描述其它监控器信息。
任务调度
Spark可以通过在应用外(集群管理水平)和应用里(如果在同一个SparkContext中有多个计算指令)资源分配。你可以在这里了解更多 任务调度的细节。
术语
application 应用 在Spark上构建的程序. 由驱动程序和子执行集群.
driver program 驱动程序 运行man函数的进程,同时也创建SparkContext
cluster manager集群管理员 在获得资源集群上的扩展服务(举例. 单例模式管理员, Mesos, YARN)
worker node工作员节点 任何在集群中可以运行应用的节点
executor 执行者 在工作员节点中为应用所启动的一个进程,它可以运行任务以及可以在内存或是硬盘中保存数据。每一个应用都有属于自己的执行者
task 任务 一个可以给执行者发送数据的工作单元
job 工作 一个由多任务组成的并行计算,并能从Spark动作中获得回应 (举例.保存,收集); 你可以在驱动日志中看到这个术语
stage 阶段 每个工作被分为很多小的任务集合互称为阶段 (和MapReduce中的map和reduce阶段相似); 你可以在驱动日志中看到这个术语
组件:spark 应用程序在集群中以独立的一系列进程运行。通过驱动主程序(dirver)里创
建的sparkContext对象进行协调。sparkContext 可以连接几类集群管理框架(如standalone,Mesos,YARN)。这些集群管理可以在应用间分配资源,一旦连接,spark 就需
要获得那些子节点上的线程池,就是那些用于执行计算和存储应用数据的进程。然后他会把你的应用程序的代码(用JAR 或Python定义的文件并传送到SparkContext)发送给线程池,最后,sparkContext发送任务给线程池执行。
这个框架需要注意如下几点:
1.各个应用有自己的线程池进程,会在整个应用的运行过程中保持并在多个线程中运行任务。这样做的好处是把应用相互孤立,既在调度方面(各个驱动调度它自己的任务)也在执行方面(不同应用的任务在不同的JVM上运行)。然而,这也意味着若不把数据写到额外的存储系统的话,数据就无法在不同的Spark应用间(SparkContext的实例)共享。
2.因为驱动在集群上调度任务,它应该运行在接近到工作节点的机器上,在相同的局域网内更好。如果你想对远程的集群发送请求,较好的选择是为驱动打开一个RPC(远程过程调用协议),让它就近提交操作而不是运行离工作节点很远的驱动。
集群管理类型:
系统目前支持3中集群管理框架:
单例模式
Apache Mesos模式-一种通用的集群管理,可以运行Hadoop MapReduce和服务应用的模式
Hadoop YARN模式:Hadoop2.0中的资源管理模式
给集群发布代码
给集群发布代码的一种推荐的方式是通过SparkContext的构造器,这个构造器可以给工作节点生成JAR文件列表(Java/Scala)或者.egg文件和.zip包文件(Python)。你也可以执行SparkContext.addJar和addFile来动态的创建发送文件。
监控器
每个驱动程序有一个web UI,典型的是在4040端口,你可以看到有关运行的任务、程序和存储空间大小等信息。你可以在浏览器中输入简单的url方式来访问:http://<驱动节点>:4040.监控器也可以 指导描述其它监控器信息。
任务调度
Spark可以通过在应用外(集群管理水平)和应用里(如果在同一个SparkContext中有多个计算指令)资源分配。你可以在这里了解更多 任务调度的细节。
术语
application 应用 在Spark上构建的程序. 由驱动程序和子执行集群.
driver program 驱动程序 运行man函数的进程,同时也创建SparkContext
cluster manager集群管理员 在获得资源集群上的扩展服务(举例. 单例模式管理员, Mesos, YARN)
worker node工作员节点 任何在集群中可以运行应用的节点
executor 执行者 在工作员节点中为应用所启动的一个进程,它可以运行任务以及可以在内存或是硬盘中保存数据。每一个应用都有属于自己的执行者
task 任务 一个可以给执行者发送数据的工作单元
job 工作 一个由多任务组成的并行计算,并能从Spark动作中获得回应 (举例.保存,收集); 你可以在驱动日志中看到这个术语
stage 阶段 每个工作被分为很多小的任务集合互称为阶段 (和MapReduce中的map和reduce阶段相似); 你可以在驱动日志中看到这个术语
0 0
- spark集群管理简述
- spark集群管理问题集锦
- VMware中Ubuntu14.04下Spark虚拟集群安装运行步骤简述
- spark集群
- spark 集群
- spark集群
- spark集群
- Spark集群,多个版本Python/Python Package管理
- Spark集群,多个版本Python/Python Package管理
- yarn集群上完整spark作业生命周期管理
- Spark集群,多个版本Python/Python Package管理
- Spark工作流程简述
- spark checkpoint机制简述
- spark配置:spark集群
- Redis集群原理简述
- 用maven管理spark应用程序,提交到spark on yarn 集群上运行
- Spark简述及基本架构
- Hadoop集群安装spark集群
- man/help/info/doc
- Mybatis整合Spring
- hdu 1236 排名
- 静态常量和静态方法
- Android-视图显示大量图片时的内存问题_待更新
- spark集群管理简述
- php oop Study1
- OC
- Python unittest 参数化测试
- ubuntu之再体验【美化】-- 更改桌面图标大小
- Hibernate_5_老师与学生实例_多对多关联关系
- RTOS的一些重要概念以及代码维护中的相应问题举例
- 通过while实现程序的无限循环
- Unix:安装一个不存在的命令