CN108958745A - 一种在云平台部署Spark集群的装置和方法 - Google Patents

一种在云平台部署Spark集群的装置和方法 Download PDF

Info

Publication number
CN108958745A
CN108958745A CN201810669207.6A CN201810669207A CN108958745A CN 108958745 A CN108958745 A CN 108958745A CN 201810669207 A CN201810669207 A CN 201810669207A CN 108958745 A CN108958745 A CN 108958745A
Authority
CN
China
Prior art keywords
spark
node
template
cloud platform
clustered node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810669207.6A
Other languages
English (en)
Other versions
CN108958745B (zh
Inventor
李栋梁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201810669207.6A priority Critical patent/CN108958745B/zh
Publication of CN108958745A publication Critical patent/CN108958745A/zh
Application granted granted Critical
Publication of CN108958745B publication Critical patent/CN108958745B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例公开了一种在云平台部署Spark集群的装置和方法,该装置包括:步骤管理模块,用于检测前台界面上对云平台的集群节点和预设模板的选择;该集群节点可以包括:主节点和从节点;该预设模板可以包括:Spark部署模板、Spark扩充模板、Spark缩减模板和Spark回收模板;模板管理模块,用于根据选择结果调取相应的集群节点和模板;任务管理模块,用于根据调取的模板对相应的集群节点上的Spark进行相应处理。通过该实施例方案,降低了Spark集群的部署管理门槛,节约了安装时间、提高了安装配置效率。

Description

一种在云平台部署Spark集群的装置和方法
技术领域
本发明实施例涉及云管理技术,尤指一种在云平台部署Spark集群的装置和方法。
背景技术
Apache Spark是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UCBerkeley AMP lab(加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是,Job中间输出结果可以保存在内存中,从而不再需要读写HDFS(分布式文件系统),因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。
目前Spark的集群部署还是较为复杂,传统方式需通过Linux命令行方式进行,需要较多的运维、Linux操作系统知识,对普通开发人员要求较高。
发明内容
为了解决上述技术问题,本发明实施例提供了一种在云平台部署Spark集群的装置和方法,能够降低Spark集群的部署管理门槛,节约安装时间、提高安装配置效率。
为了达到本发明实施例目的,本发明实施例提供了一种在云平台部署Spark集群的装置,该装置可以包括:步骤管理模块、模板管理模块和任务管理模块;
步骤管理模块,用于检测前台界面上对云平台的集群节点和预设模板的选择;该集群节点可以包括:主节点和从节点;该预设模板可以包括:Spark部署模板、Spark扩充模板、Spark缩减模板和Spark回收模板;
模板管理模块,用于根据选择结果调取相应的集群节点和模板;
任务管理模块,用于根据调取的模板对相应的集群节点上的Spark进行相应处理。
可选地,任务管理模块根据调取的模板对相应的集群节点上的Spark进行相应处理包括:
当选择的预设模板为Spark部署模板时,根据Spark部署模板在云平台中所选择的集群节点上部署Spark;
当选择的预设模板为Spark扩充模板时,根据Spark扩充模板在所选择的集群节点上部署Spark以为云平台当前拥有的Spark集群扩充Spark节点;
当选择的预设模板为Spark缩减模板时,根据Spark缩减模板卸载所选择的集群节点上的Spark;
当选择的预设模板为Spark回收模板时,根据Spark回收模板卸载云平台当前拥有的每一个集群节点上的Spark。
可选地,任务管理模块根据Spark部署模板在云平台中所选择的集群节点上部署Spark包括:
读取云平台的集群节点中的主从节点信息,通过ansible向主节点下发主从节点文件,并触发主节点执行Spark安装命令,以在主节点上安装Spark;
在主节点安装Spark后,通过主节点读取主从节点文件,并在从节点上安装Spark。
可选地,任务管理模块在主节点上安装Spark包括:将Spark安装包分发到主节点的指定目录;并通过Spark安装包在主节点上安装Spark;
任务管理模块在从节点安装Spark包括:通过自动交互语言expect配置主节点到所有从节点的无密码访问;由主节点将Spark安装包分发到各个从节点并执行Spark安装命令;
其中,Spark安装包可以包括:针对面向对象编程语言Java开发人员发布的免费软件开发工具包JDK、可伸缩的语言Scala、分布式系统基础架构Hadoop和Spark。
可选地,任务管理模块还用于在每个集群节点上安装Spark之前,判断该集群节点是否已安装Spark,如果该集群节点已安装Spark,则退出该集群节点并进入下一个集群节点;如果该集群节点未安装Spark,则在该集群节点上安装Spark。
可选地,任务管理模块根据Spark扩充模板在所选择的集群节点上部署Spark以为云平台当前拥有的Spark集群扩充集群节点包括:
判断所选择的集群节点是否已安装Spark,如果所选择的集群节点已安装Spark,则退出该集群节点;
如果该集群节点未安装Spark,则判断所选择的集群节点是主节点或从节点;
当所选择的集群节点是主节点时,在该主节点上安装Spark;当所选择的集群节点是从节点时,在该从节点上安装Spark。
可选地,任务管理模块根据Spark缩减模板卸载所选择的集群节点上的Spark包括:
查询所选择的集群节点上的Spark进程,并停止Spark进程,卸载所选择的集群节点上的Spark软件。
可选地,任务管理模块根据Spark回收模板卸载云平台当前拥有的每一个集群节点上的Spark包括:
查询云平台中每一个集群节点上的Spark进程,并停止每一个集群节点上的Spark进程,卸载每一个集群节点上的Spark软件,以实现云平台的Spark集群的回收。
可选地,模板管理模块还用于:
预先创建Spark部署步骤,将Spark部署步骤添加到Spark部署模板中;
预先创建Spark扩充步骤,将Spark扩充步骤添加到Spark扩充模板中;
预先创建Spark缩减步骤,将Spark缩减步骤添加到Spark缩减模板中;
预先创建Spark回收步骤,将Spark回收步骤添加到Spark回收模板中。
可选地,步骤管理模块,还用于检测前台界面上对云平台的集群节点和预设步骤的选择;该预设步骤包括:Spark部署步骤、Spark扩充步骤、Spark缩减步骤和Spark回收步骤;
模板管理模块,用于根据选择结果调取相应的集群节点和步骤;
任务管理模块,用于根据调取的步骤对相应的集群节点上的Spark进行相应处理。
为了达到本发明实施例目的,本发明实施例还提供了一种在云平台部署Spark集群的方法,该方法包括:
检测前台界面上对云平台的集群节点和预设模板的选择;集群节点包括:主节点和从节点;预设模板包括:Spark部署模板、Spark扩充模板、Spark缩减模板和Spark回收模板;
根据选择结果调取相应的集群节点和模板;
根据调取的模板对相应的集群节点上的Spark进行相应处理。
本发明实施例可以包括:步骤管理模块,用于检测前台界面上对云平台的集群节点和预设模板的选择;该集群节点可以包括:主节点和从节点;该预设模板可以包括:Spark部署模板、Spark扩充模板、Spark缩减模板和Spark回收模板;模板管理模块,用于根据选择结果调取相应的集群节点和模板;任务管理模块,用于根据调取的模板对相应的集群节点上的Spark进行相应处理。通过该实施例方案,降低了Spark集群的部署管理门槛,节约了安装时间、提高了安装配置效率。
本发明实施例的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明实施例的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明实施例技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明实施例的技术方案,并不构成对本发明实施例技术方案的限制。
图1为本发明实施例的在云平台部署Spark集群的装置组成框图;
图2为本发明实施例的在云平台部署Spark集群的装置结构示意图;
图3为本发明实施例的在云平台部署Spark集群的方法流程图;
图4为本发明实施例的在云平台部署Spark集群的方法示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
为了达到本发明实施例目的,本发明实施例提供了一种在云平台部署Spark集群的装置1,如图1和图2所示,该装置可以包括:步骤管理模块11、模板管理模块12和任务管理模块13;
步骤管理模块11,用于检测前台界面上对云平台的集群节点和预设模板的选择;该集群节点可以包括:主节点和从节点;该预设模板可以包括:Spark部署模板、Spark扩充模板、Spark缩减模板和Spark回收模板;
模板管理模块12,用于根据选择结果调取相应的集群节点和模板;
任务管理模块13,用于根据调取的模板对相应的集群节点上的Spark进行相应处理。
该装置还可以包括:任务查询模块14;任务查询模块用于查询根据调取的模板对相应的集群节点上的Spark进行相应处理时的处理进度和处理结果。
在本发明实施例中,通过上述步骤实现了通过预设模板在云平台上部署、扩充、缩减或回收Spark。在其他实施例中,也可以直接选择步骤来创建Spark集群部署部署、扩充、缩减或回收任务。
可选地,步骤管理模块11,还用于检测前台界面上对云平台的集群节点和预设步骤的选择;该预设步骤包括:Spark部署步骤、Spark扩充步骤、Spark缩减步骤和Spark回收步骤;
模板管理模块12,用于根据选择结果调取相应的集群节点和步骤;
任务管理模块13,用于根据调取的步骤对相应的集群节点上的Spark进行相应处理。
在本发明实施例中,步骤管理模块11可以将线下需linux命令行的操作全部通过云平台实现,如Spark集群部署需文件分发、命令执行两个步骤。模板管理模块12可以对不同的执行步骤进行自由组合,并对不同的模板进行管理和调取,并且可以将Spark集群的部署/扩缩/回收的所有步骤封装到模板中,以便可以重复使用。任务管理模块13可以选择集群节点、步骤/模板等信息,保证了步骤与节点分离。任务查询模块14可以通过界面查看任务执行过程执行结果,给客户一个良好的反馈。
在本发明实施例中,将传统需通过Linux命令行执行的步骤转移到可视化的云平台中,支持自定义步骤,制作可重复使用的模板,将步骤与执行节点分离,并可以给客户提供友好的、可视化的页面web界面,反馈安装进度、安装结果。
可选地,任务管理模块根据调取的模板对相应的集群节点上的Spark进行相应处理可以包括:
当选择的预设模板为Spark部署模板时,根据Spark部署模板在云平台中所选择的集群节点上部署Spark;
当选择的预设模板为Spark扩充模板时,根据Spark扩充模板在所选择的集群节点上部署Spark以为云平台当前拥有的Spark集群扩充Spark节点;
当选择的预设模板为Spark缩减模板时,根据Spark缩减模板卸载所选择的集群节点上的Spark;
当选择的预设模板为Spark回收模板时,根据Spark回收模板卸载云平台当前拥有的每一个集群节点上的Spark。
在本发明实施例中,Spark部署模板和Spark部署步骤可以实现Spark集群部署,即将指定的集群节点部署Spark,集群节点的节点类型分可以为主节点和从节点。Spark扩充模板和Spark扩充步骤可以实现Spark集群扩节点,即可以向Spark集群添加Spark节点。Spark缩减模板和Spark缩减步骤可以实现Spark集群缩节点,即将某一节点从Spark集群移除。Spark回收模板和Spark回收步骤可以实现Spark集群回收,即从所有集群节点中卸载Spark软件。
可选地,模板管理模块12还可以用于:
预先创建Spark部署步骤,将Spark部署步骤添加到Spark部署模板中;
预先创建Spark扩充步骤,将Spark扩充步骤添加到Spark扩充模板中;
预先创建Spark缩减步骤,将Spark缩减步骤添加到Spark缩减模板中;
预先创建Spark回收步骤,将Spark回收步骤添加到Spark回收模板中。
在本发明实施例中,模板管理模块12可以使用软件仓库中的软件、脚本创建Spark部署步骤、Spark扩充步骤、Spark缩减步骤和Spark回收步骤,并可以通过上述步骤,创建相应的Spark部署模板、Spark扩充模板、Spark缩减模板和Spark回收模板。
在本发明实施例中,用户可以通过前台界面选择执行节点(即集群节点)、模板,点击任务执行命令,步骤管理模块11可以对用户的选择进行检测,模板管理模块12可以根据步骤管理模块11的检测结果选择任务模板或直接选择步骤来实现相应的Spark任务,即创建Spark集群部署任务,Spark集群扩/缩任务、Spark回收任务,同时需选择集群节点。
可选地,任务管理模块13根据Spark部署模板在云平台中所选择的集群节点上部署Spark可以包括:
读取云平台的集群节点中的主从节点信息,通过ansible向主节点下发主从节点文件,并触发主节点执行Spark安装命令,以在主节点上安装Spark;
在主节点安装Spark后,通过主节点读取主从节点文件,并在从节点上安装Spark。
在本发明实施例中,ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。
可选地,任务管理模块在主节点上安装Spark可以包括:将Spark安装包分发到主节点的指定目录;并通过Spark安装包在主节点上安装Spark;
任务管理模块在从节点安装Spark可以包括:通过自动交互语言expect配置主节点到所有从节点的无密码访问;由主节点将Spark安装包分发到各个从节点并执行Spark安装命令;
其中,Spark安装包可以包括:JDK(针对面向对象编程语言Java开发人员发布的免费软件开发工具包)、可伸缩的语言Scala、分布式系统基础架构Hadoop和Spark。
在本发明实施例中,Spark的具体安装步骤可以包括:1、将Spark安装包分发到主节点指定目录;2、安装JDK、Scala、Hadoop和Spark;3、通过expect配置master节点(主节点)到所有slave节点(从节点)无密码访问;4、由主节点将安装包分发到各从节点,执行安装命令;5、启动Spark。
在本发明实施例中,Spark的具体安装步骤可以由shell脚本实现。
可选地,任务管理模块还用于在每个集群节点上安装Spark之前,判断该集群节点是否已安装Spark,如果该集群节点已安装Spark,则退出该集群节点并进入下一个集群节点;如果该集群节点未安装Spark,则在该集群节点上安装Spark。
在本发明实施例中,每个节点在安装前首先判断是否已安装Spark,如果已经安装Spark则退出,如果未安装Spark,则根据上述安装步骤进行安装。
可选地,任务管理模块根据Spark扩充模板在所选择的集群节点上部署Spark以为云平台当前拥有的Spark集群扩充集群节点可以包括:
判断所选择的集群节点是否已安装Spark,如果所选择的集群节点已安装Spark,则退出该集群节点;
如果该集群节点未安装Spark,则判断所选择的集群节点是主节点或从节点;
当所选择的集群节点是主节点时,在该主节点上安装Spark;当所选择的集群节点是从节点时,在该从节点上安装Spark。
在本发明实施例中,扩节点时Spark的具体安装步骤也可以由shell脚本实现。
在本发明实施例中,脚本中在每个节点安装前会判断该节点是否已安装Spark,在扩节点时重新执行Spark安装过程,已安装Spark的节点会跳过,未安装的节点则会安装。安装完成后,扩节点会加入Spark集群。扩节点是指通过Spark扩充模板或步骤安装了Spark的集群节点。
可选地,任务管理模块根据Spark缩减模板卸载所选择的集群节点上的Spark包括:
查询所选择的集群节点上的Spark进程,并停止Spark进程,卸载所选择的集群节点上的Spark软件。
在本发明实施例中,缩节点即用户选择将某个节点的Spark回收,系统会在该节点查询并停止Spark进程,卸载该节点的Spark软件。云平台可以预先向被缩的节点下发执行卸载的命令。
可选地,任务管理模块根据Spark回收模板卸载云平台当前拥有的每一个集群节点上的Spark包括:
查询云平台中每一个集群节点上的Spark进程,并停止每一个集群节点上的Spark进程,卸载每一个集群节点上的Spark软件,以实现云平台的Spark集群的回收。
在本发明实施例中,系统在集群的每个节点查询并停止Spark进程,然后卸载每个节点的Spark软件。可以在每个节点执行卸载脚本uninstall.sh实现云平台的Spark集群的回收。
本发明实施例提供了可视化的部署Spark集群方法,且与云平台结合使用,将Spark集群的部署、集群扩/缩、回收由传统Linux命令行模式转为云平台通过界面操作的模式,即将传统线下操作转变为线上进行,极大提高了部署效率,降低了使用门槛。
为了达到本发明实施例目的,本发明实施例还提供了一种在云平台部署Spark集群的方法,需要说明的是,上述的装置实施例中的任何实施例均是用于该方法实施例中,如图3、图4所示,该方法可以包括S101-S103:
S101、检测前台界面上对云平台的集群节点和预设模板的选择;集群节点包括:主节点和从节点;预设模板包括:Spark部署模板、Spark扩充模板、Spark缩减模板和Spark回收模板;
S102、根据选择结果调取相应的集群节点和模板;
S103、根据调取的模板对相应的集群节点上的Spark进行相应处理。
可选地,根据调取的模板对相应的集群节点上的Spark进行相应处理包括:
当选择的预设模板为Spark部署模板时,根据Spark部署模板在云平台中所选择的集群节点上部署Spark;
当选择的预设模板为Spark扩充模板时,根据Spark扩充模板在所选择的集群节点上部署Spark以为云平台当前拥有的Spark集群扩充Spark节点;
当选择的预设模板为Spark缩减模板时,根据Spark缩减模板卸载所选择的集群节点上的Spark;
当选择的预设模板为Spark回收模板时,根据Spark回收模板卸载云平台当前拥有的每一个集群节点上的Spark。
可选地,根据Spark部署模板在云平台中所选择的集群节点上部署Spark包括:
读取云平台的集群节点中的主从节点信息,通过ansible向主节点下发主从节点文件,并触发主节点执行Spark安装命令,以在主节点上安装Spark;
在主节点安装Spark后,通过主节点读取主从节点文件,并在从节点上安装Spark。
可选地,在主节点上安装Spark可以包括:将Spark安装包分发到主节点的指定目录;并通过Spark安装包在主节点上安装Spark;
在从节点上安装Spark可以包括:通过自动交互语言expect配置主节点到所有从节点的无密码访问;由主节点将Spark安装包分发到各个从节点并执行Spark安装命令;
其中,Spark安装包可以包括:针对面向对象编程语言Java开发人员发布的免费软件开发工具包JDK、可伸缩的语言Scala、分布式系统基础架构Hadoop和Spark。
可选地,该方法还包括:在每个集群节点上安装Spark之前,判断该集群节点是否已安装Spark,如果该集群节点已安装Spark,则退出该集群节点并进入下一个集群节点;如果该集群节点未安装Spark,则在该集群节点上安装Spark。
可选地,根据Spark扩充模板在所选择的集群节点上部署Spark以为云平台当前拥有的Spark集群扩充集群节点包括:
判断所选择的集群节点是否已安装Spark,如果所选择的集群节点已安装Spark,则退出该集群节点;
如果该集群节点未安装Spark,则判断所选择的集群节点是主节点或从节点;
当所选择的集群节点是主节点时,在该主节点上安装Spark;当所选择的集群节点是从节点时,在该从节点上安装Spark。
可选地,根据Spark缩减模板卸载所选择的集群节点上的Spark包括:
查询所选择的集群节点上的Spark进程,并停止Spark进程,卸载所选择的集群节点上的Spark软件。
可选地,任务管理模块根据Spark回收模板卸载云平台当前拥有的每一个集群节点上的Spark包括:
查询云平台中每一个集群节点上的Spark进程,并停止每一个集群节点上的Spark进程,卸载每一个集群节点上的Spark软件,以实现云平台的Spark集群的回收。
可选地,该方法还包括:
预先创建Spark部署步骤,将Spark部署步骤添加到Spark部署模板中;
预先创建Spark扩充步骤,将Spark扩充步骤添加到Spark扩充模板中;
预先创建Spark缩减步骤,将Spark缩减步骤添加到Spark缩减模板中;
预先创建Spark回收步骤,将Spark回收步骤添加到Spark回收模板中。
可选地,该方法还包括:检测前台界面上对云平台的集群节点和预设步骤的选择;该预设步骤包括:Spark部署步骤、Spark扩充步骤、Spark缩减步骤和Spark回收步骤;
根据选择结果调取相应的集群节点和步骤;
根据调取的步骤对相应的集群节点上的Spark进行相应处理。
本发明实施例可以包括:步骤管理模块,用于检测前台界面上对云平台的集群节点和预设模板的选择;该集群节点可以包括:主节点和从节点;该预设模板可以包括:Spark部署模板、Spark扩充模板、Spark缩减模板和Spark回收模板;模板管理模块,用于根据选择结果调取相应的集群节点和模板;任务管理模块,用于根据调取的模板对相应的集群节点上的Spark进行相应处理。通过该实施例方案,降低了Spark集群的部署管理门槛,节约了安装时间、提高了安装配置效率。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

Claims (10)

1.一种在云平台部署Spark集群的装置,其特征在于,所述装置包括:步骤管理模块、模板管理模块和任务管理模块;
所述步骤管理模块,用于检测前台界面上对云平台的集群节点和预设模板的选择;所述集群节点包括:主节点和从节点;所述预设模板包括:Spark部署模板、Spark扩充模板、Spark缩减模板和Spark回收模板;
所述模板管理模块,用于根据选择结果调取相应的集群节点和模板;
所述任务管理模块,用于根据调取的模板对相应的集群节点上的Spark进行相应处理。
2.根据权利要求1所述的在云平台部署Spark集群的装置,其特征在于,所述任务管理模块根据调取的模板对相应的集群节点上的Spark进行相应处理包括:
当选择的预设模板为所述Spark部署模板时,根据所述Spark部署模板在云平台中所选择的集群节点上部署Spark;
当选择的预设模板为所述Spark扩充模板时,根据所述Spark扩充模板在所选择的集群节点上部署Spark以为云平台当前拥有的Spark集群扩充Spark节点;
当选择的预设模板为所述Spark缩减模板时,根据所述Spark缩减模板卸载所选择的集群节点上的Spark;
当选择的预设模板为所述Spark回收模板时,根据所述Spark回收模板卸载云平台当前拥有的每一个集群节点上的Spark。
3.根据权利要求2所述的在云平台部署Spark集群的装置,其特征在于,所述任务管理模块根据所述Spark部署模板在云平台中所选择的集群节点上部署Spark包括:
读取所述云平台的集群节点中的主从节点信息,通过ansible向所述主节点下发主从节点文件,并触发所述主节点执行Spark安装命令,以在所述主节点上安装Spark;
在所述主节点安装Spark后,通过所述主节点读取所述主从节点文件,并在所述从节点上安装Spark。
4.根据权利要求3所述的在云平台部署Spark集群的装置,其特征在于,
所述任务管理模块在所述主节点上安装Spark包括:将Spark安装包分发到所述主节点的指定目录;并通过所述Spark安装包在所述主节点上安装Spark;
所述任务管理模块在所述从节点安装Spark包括:通过自动交互语言expect配置所述主节点到所有从节点的无密码访问;由所述主节点将所述Spark安装包分发到各个从节点并执行Spark安装命令;
其中,所述Spark安装包包括:针对面向对象编程语言Java开发人员发布的免费软件开发工具包JDK、可伸缩的语言Scala、分布式系统基础架构Hadoop和Spark。
5.根据权利要求2所述的在云平台部署Spark集群的装置,其特征在于,所述任务管理模块还用于在每个集群节点上安装Spark之前,判断该集群节点是否已安装Spark,如果该集群节点已安装Spark,则退出该集群节点并进入下一个集群节点;如果该集群节点未安装Spark,则在该集群节点上安装Spark。
6.根据权利要求2所述的在云平台部署Spark集群的装置,其特征在于,所述任务管理模块根据所述Spark扩充模板在所选择的集群节点上部署Spark以为云平台当前拥有的Spark集群扩充集群节点包括:
判断所选择的集群节点是否已安装Spark,如果所选择的集群节点已安装Spark,则退出该集群节点;
如果该集群节点未安装Spark,则判断所选择的集群节点是主节点或从节点;
当所选择的集群节点是主节点时,在所述主节点上安装Spark;当所选择的集群节点是从节点时,在所述从节点上安装Spark。
7.根据权利要求2所述的在云平台部署Spark集群的装置,其特征在于,所述任务管理模块根据所述Spark缩减模板卸载所选择的集群节点上的Spark包括:
查询所选择的集群节点上的Spark进程,并停止所述Spark进程,卸载所选择的集群节点上的Spark软件。
8.根据权利要求2所述的在云平台部署Spark集群的装置,其特征在于,所述任务管理模块根据所述Spark回收模板卸载云平台当前拥有的每一个集群节点上的Spark包括:
查询所述云平台中每一个集群节点上的Spark进程,并停止每一个集群节点上的Spark进程,卸载每一个集群节点上的Spark软件,以实现所述云平台的Spark集群的回收。
9.根据权利要求1所述的在云平台部署Spark集群的装置,其特征在于,所述模板管理模块还用于:
预先创建Spark部署步骤,将所述Spark部署步骤添加到所述Spark部署模板中;
预先创建Spark扩充步骤,将所述Spark扩充步骤添加到所述Spark扩充模板中;
预先创建Spark缩减步骤,将所述Spark缩减步骤添加到所述Spark缩减模板中;
预先创建Spark回收步骤,将所述Spark回收步骤添加到所述Spark回收模板中。
10.一种在云平台部署Spark集群的方法,其特征在于,所述方法包括:
检测前台界面上对云平台的集群节点和预设模板的选择;所述集群节点包括:主节点和从节点;所述预设模板包括:Spark部署模板、Spark扩充模板、Spark缩减模板和Spark回收模板;
根据选择结果调取相应的集群节点和模板;
根据调取的模板对相应的集群节点上的Spark进行相应处理。
CN201810669207.6A 2018-06-26 2018-06-26 一种在云平台部署Spark集群的装置和方法 Active CN108958745B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810669207.6A CN108958745B (zh) 2018-06-26 2018-06-26 一种在云平台部署Spark集群的装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810669207.6A CN108958745B (zh) 2018-06-26 2018-06-26 一种在云平台部署Spark集群的装置和方法

Publications (2)

Publication Number Publication Date
CN108958745A true CN108958745A (zh) 2018-12-07
CN108958745B CN108958745B (zh) 2021-11-26

Family

ID=64486665

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810669207.6A Active CN108958745B (zh) 2018-06-26 2018-06-26 一种在云平台部署Spark集群的装置和方法

Country Status (1)

Country Link
CN (1) CN108958745B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113220416A (zh) * 2021-04-28 2021-08-06 烽火通信科技股份有限公司 基于云平台的集群节点伸缩系统及实现方法和运行方法
CN113434159A (zh) * 2021-07-08 2021-09-24 恒安嘉新(北京)科技股份公司 一种可视化运维管理Elasticsearch的方法、装置、介质及电子设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130311986A1 (en) * 2012-05-16 2013-11-21 Apple Inc. Cloud-based application resource files
US20140317141A1 (en) * 2009-01-30 2014-10-23 International Business Machines Corporation Selective expansion of a tree heirarchy
CN104184820A (zh) * 2014-08-29 2014-12-03 城云科技(杭州)有限公司 分布式环境下模板定制的云平台动态蔓延部署方法
WO2015187710A1 (en) * 2014-06-02 2015-12-10 Blackwatch International A generic template node for developing and deploying model software packages
CN106254127A (zh) * 2016-08-23 2016-12-21 浪潮电子信息产业股份有限公司 基于虚拟化平台的RabbitMQ集群服务的自动化部署方法
CN106506233A (zh) * 2016-12-01 2017-03-15 郑州云海信息技术有限公司 一种自动部署Hadoop集群及伸缩工作节点的方法
CN106982137A (zh) * 2017-03-08 2017-07-25 中国人民解放军国防科学技术大学 基于麒麟云计算平台的Hadoop集群自动化部署方法
CN107870763A (zh) * 2017-11-27 2018-04-03 深圳市华成峰科技有限公司 用于创建海量数据实时分拣系统的方法及其装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140317141A1 (en) * 2009-01-30 2014-10-23 International Business Machines Corporation Selective expansion of a tree heirarchy
US20130311986A1 (en) * 2012-05-16 2013-11-21 Apple Inc. Cloud-based application resource files
WO2015187710A1 (en) * 2014-06-02 2015-12-10 Blackwatch International A generic template node for developing and deploying model software packages
CN104184820A (zh) * 2014-08-29 2014-12-03 城云科技(杭州)有限公司 分布式环境下模板定制的云平台动态蔓延部署方法
CN106254127A (zh) * 2016-08-23 2016-12-21 浪潮电子信息产业股份有限公司 基于虚拟化平台的RabbitMQ集群服务的自动化部署方法
CN106506233A (zh) * 2016-12-01 2017-03-15 郑州云海信息技术有限公司 一种自动部署Hadoop集群及伸缩工作节点的方法
CN106982137A (zh) * 2017-03-08 2017-07-25 中国人民解放军国防科学技术大学 基于麒麟云计算平台的Hadoop集群自动化部署方法
CN107870763A (zh) * 2017-11-27 2018-04-03 深圳市华成峰科技有限公司 用于创建海量数据实时分拣系统的方法及其装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘学军: "基于 Spark 的工业大数据处理可视化平台应用研究", 《福建电脑》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113220416A (zh) * 2021-04-28 2021-08-06 烽火通信科技股份有限公司 基于云平台的集群节点伸缩系统及实现方法和运行方法
CN113434159A (zh) * 2021-07-08 2021-09-24 恒安嘉新(北京)科技股份公司 一种可视化运维管理Elasticsearch的方法、装置、介质及电子设备

Also Published As

Publication number Publication date
CN108958745B (zh) 2021-11-26

Similar Documents

Publication Publication Date Title
US10860339B2 (en) Autonomous creation of new microservices and modification of existing microservices
US10216509B2 (en) Continuous and automatic application development and deployment
CN106933570B (zh) 一种基于插件技术的航天测发控软件平台
US9218197B2 (en) Virtual machine image migration
CN102799464B (zh) 虚拟机创建方法及系统、虚拟机重装方法及系统
US9280336B2 (en) Virtual machine disk image installation
CN107766050B (zh) 一种异构应用的部署方法以及装置
CN107733985B (zh) 一种云计算系统功能组件部署方法及装置
CN112416524A (zh) 基于docker和kubernetes离线的跨平台的CI/CD的实现方法及装置
CN112269640B (zh) 一种实现容器云组件的生命周期管理的方法
WO2017041486A1 (zh) 一种实现集群部署的方法及装置
CN102937909B (zh) 一种部署和更新Linux系统的方法
US9940224B2 (en) Automatic remote execution of an application
US11171824B2 (en) Configuration of computing devices via containers
CN109240716B (zh) 一种大数据平台版本管理与快速迭代部署方法及系统
CN114079615B (zh) 一种多集群环境下的应用同步方法、系统、介质和电子设备
CN106648771B (zh) 一种Openstack云平台自定义部署系统及部署方法
CN113127150B (zh) 云原生系统的快速部署方法、装置、电子设备和存储介质
CN104010022A (zh) 管理服务器节点的管理装置和方法
CN108958745A (zh) 一种在云平台部署Spark集群的装置和方法
WO2016078326A1 (zh) 一种虚拟机名称展示的方法、装置及系统
CN106406978B (zh) 私有云虚拟机模板自动制作装置及方法
CN105912596B (zh) 一种操作数据库的方法和装置
CN109032674B (zh) 一种多进程管理方法、系统及网络设备
WO2023087622A1 (zh) 虚拟机引导的配置方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant