CN111339055A - 大数据集群扩容方法及装置 - Google Patents
大数据集群扩容方法及装置 Download PDFInfo
- Publication number
- CN111339055A CN111339055A CN202010094856.5A CN202010094856A CN111339055A CN 111339055 A CN111339055 A CN 111339055A CN 202010094856 A CN202010094856 A CN 202010094856A CN 111339055 A CN111339055 A CN 111339055A
- Authority
- CN
- China
- Prior art keywords
- node
- cluster
- expansion
- expanded
- ambari
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了大数据集群扩容方法及装置,包括:调用管理待扩容集群的Ambari工具执行:对至少一个扩展节点的配置进行修改;在至少一个扩展节点上安装Ambari Agent;将至少一个扩展节点注册到待扩容集群上;根据待扩容集群,为至少一个扩展节点安装组件;调用Ansible Playbook,根据上述步骤和至少一个扩展节点的节点标识完成待扩容集群的扩容操作。本方案能够降低集群扩容的难度。
Description
技术领域
本发明涉及计算机技术领域,特别涉及大数据集群扩容方法及装置。
背景技术
近年来,随着互联网、移动互联网、物联网的快速发展,各行各业无时无刻不在产生着大量的数据。因此,各大互联网公司都建有自己的大数据平台用于存储这些海量的数据,并对这些数据展开分析应用,发掘数据背后的价值。
然而,伴随着公司业务规模及用户数量的不断增长,Hadoop分布式文件系统集群的数据存储容量大小和访问频次都在以指数级别的方式增长。而Ambari Web管理界面支持集群的扩容,但是,扩容节点的前置准备工作仍然需要手动安装或配置。特别是,当一次扩展几十上百台机器,在集群上扩容是非常繁琐的事情,从而增加集群扩容的难度。
发明内容
本发明实施例提供了大数据集群扩容方法及装置,能够降低集群扩容的难度。
第一方面,本发明提供了大数据集群扩容方法,包括:
调用管理待扩容集群的Ambari工具执行:
D1:对至少一个扩展节点的配置进行修改;
D2:在所述至少一个扩展节点上安装Ambari Agent;
D3:将所述至少一个扩展节点注册到所述待扩容集群上;
D4:根据所述待扩容集群,为所述至少一个扩展节点安装组件;
D5:调用Ansible Playbook,根据步骤D1至D5和所述至少一个扩展节点的节点标识完成所述待扩容集群的扩容操作。
优选地,
所述将所述至少一个扩展节点注册到所述待扩容集群上,包括:
调用Ambari Rest Api,分别将每一个所述扩展节点上的所述Ambari Agent的注册信息发送给所述Ambari工具中的Ambari Server,以使所述Ambari Server按照所述注册信息完成每一个所述扩展节点在所述待扩容集群上的注册。
优选地,
所述根据所述待扩容集群,为所述至少一个扩展节点安装组件,包括:
确定所述待扩容集群上安装的组件;
调用Ambari Rest Api,执行:
在所述至少一个节点上添加所述组件;
安装所述至少一个节点上添加的所述组件;
启动所述至少一个节点上安装的所述组件。
优选地,
所述调用Ansible Playbook,根据步骤D1至D5和所述至少一个扩展节点的节点标识完成所述待扩容集群的扩容操作,包括:
调用Ansible Playbook执行,将步骤D1至D5编写为Ansible Playbook脚本;
在所述待扩容集群的Inventory主机资产文件中编写所述至少一个扩展节点的节点标识;
执行编写后的所述Inventory主机资产文件,并运行所述Ansible Playbook脚本。
优选地,
所述对至少一个扩展节点的配置进行修改,包括:
所述配置包括:主机名、系统时间、JDK工具、防火墙和selinux中的至少一个;
当所述配置包括:主机名时,
按照所述待扩容集群的主机名,对至少一个扩展节点的主机名进行修改;
当所述配置包括:所述系统时间时,
按照所述待扩容集群的系统时间,对至少一个扩展节点的系统时间进行同步处理;
当所述配置包括:JDK工具时,
在至少一个扩展节点中安装所述JDK工具;
当所述配置包括:防火墙时,
将至少一个扩展节点的防火墙的状态修改为禁用;
当所述配置包括:selinux时,
将至少一个扩展节点的selinux的状态修改为禁用。
第二方面,本发明提供了大数据集群扩容装置,包括:
配置处理模块,用于调用管理待扩容集群的Ambari工具执行D1:对至少一个扩展节点的配置进行修改;
组件处理模块,用于调用管理待扩容集群的Ambari工具执行D2:在所述至少一个扩展节点上安装Ambari Agent;D4:根据所述待扩容集群,为所述至少一个扩展节点安装组件;
节点注册模块,用于调用管理待扩容集群的Ambari工具执行D3:将所述至少一个扩展节点注册到所述待扩容集群上;
扩容处理模块,用于调用管理待扩容集群的Ambari工具执行D5:调用AnsiblePlaybook,根据所述配置处理模块执行的步骤D1、所述组件处理模块执行的步骤D2和D4、所述节点注册模块执行的步骤D5和所述至少一个扩展节点的节点标识完成所述待扩容集群的扩容操作。
优选地,
所述节点注册模块,用于调用Ambari Rest Api,分别将每一个所述扩展节点上的所述Ambari Agent的注册信息发送给所述Ambari工具中的Ambari Server,以使所述Ambari Server按照所述注册信息完成每一个所述扩展节点在所述待扩容集群上的注册。
优选地,
所述组件处理模块,用于确定所述待扩容集群上安装的组件;调用Ambari RestApi,执行:在所述至少一个节点上添加所述组件;安装所述至少一个节点上添加的所述组件;启动所述至少一个节点上安装的所述组件。
优选地,
所述扩容处理模块,用于调用Ansible Playbook执行,将步骤D1至D5编写为Ansible Playbook脚本;在所述待扩容集群的Inventory主机资产文件中编写所述至少一个扩展节点的节点标识;执行编写后的所述Inventory主机资产文件,并运行所述AnsiblePlaybook脚本。
优选地,
所述配置包括:主机名、系统时间、JDK工具、防火墙和selinux中的至少一个;
所述配置处理模块,用于当所述配置包括:主机名时,按照所述待扩容集群的主机名,对至少一个扩展节点的主机名进行修改;当所述配置包括:所述系统时间时,按照所述待扩容集群的系统时间,对至少一个扩展节点的系统时间进行同步处理;当所述配置包括:JDK工具时,在至少一个扩展节点中安装所述JDK工具;当所述配置包括:防火墙时,将至少一个扩展节点的防火墙的状态修改为禁用;当所述配置包括:selinux时,将至少一个扩展节点的selinux的状态修改为禁用。
第三方面,本发明还提供了存储介质,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行第一方面中任一所述的大数据集群扩容方法。
第四方面,本发明还提供了计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行第一方面中任一所述的大数据集群扩容方法。
本发明实施例提供了大数据集群扩容方法及装置,如需通过扩展节点对待扩容集群进行扩容,可以先通过管理待扩容集群的Ambari工具,对扩展节点上的配置进行修改,以保证扩展节点中的配置信息与待扩容集群的信息相匹配,避免待扩容集群与扩展节点之间无法正常通信;然后将Ambari Agent安装在扩展节点上,以使通过Ambari Agent执行待扩容集群中的指令去操作服务、组件,以及汇报服务状态信息等操作;再将各扩展节点注册到待扩容集群上,以便通过集群对扩展节点进行统一管理;再基于待库容集群为扩展节点安装组件,以使扩展节点中的组件与待扩容集群中的组件相匹配,便于为用户提供相应的服务;最后调用Ansible Playbook根据上述步骤以及为待扩容集群扩容的扩展节点的标识,完成对待扩容集群的扩容工作,实现整个扩容过程的全自动化处理,解决大规模集群在线扩容步骤繁杂、效率低、易出错等问题,从而实现降低集群扩容的难度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的大数据集群扩容方法的流程图;
图2是本发明另一实施例提供的大数据集群扩容方法的流程图;
图3是本发明一实施例提供的大数据集群扩容装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了大数据集群扩容方法,包括:
D1:调用管理待扩容集群的Ambari工具执行:对至少一个扩展节点的配置进行修改;
D2:在所述至少一个扩展节点上安装Ambari Agent;
D3:将所述至少一个扩展节点注册到所述待扩容集群上;
D4:根据所述待扩容集群,为所述至少一个扩展节点安装组件;
D5:调用Ansible Playbook,根据步骤D1至D5和所述至少一个扩展节点的节点标识完成所述待扩容集群的扩容操作。
在本发明实施例中,如需通过扩展节点对待扩容集群进行扩容,可以先通过管理待扩容集群的Ambari工具,对扩展节点上的配置进行修改,以保证扩展节点中的配置信息与待扩容集群的信息相匹配,避免待扩容集群与扩展节点之间无法正常通信;然后将Ambari Agent安装在扩展节点上,以使通过Ambari Agent执行待扩容集群中的指令去操作服务、组件,以及汇报服务状态信息等操作;再将各扩展节点注册到待扩容集群上,以便通过集群对扩展节点进行统一管理;再基于待库容集群为扩展节点安装组件,以使扩展节点中的组件与待扩容集群中的组件相匹配,便于为用户提供相应的服务;最后调用AnsiblePlaybook根据上述步骤以及为待扩容集群扩容的扩展节点的标识,完成对待扩容集群的扩容工作,实现整个扩容过程的全自动化处理,解决大规模集群在线扩容步骤繁杂、效率低、易出错等问题,从而实现降低集群扩容的难度。
为了便于Ambari Server对各扩展节点进行统一管理,在本发明一实施例中,所述将所述至少一个扩展节点注册到所述待扩容集群上,包括:
调用Ambari Rest Api,分别将每一个所述扩展节点上的所述AmbariAgent的注册信息发送给所述Ambari工具中的Ambari Server,以使所述Ambari Server按照所述注册信息完成每一个所述扩展节点在所述待扩容集群上的注册。
在本发明实施例中,由于每个扩展节点上安装有Ambari Agent,而Ambari Agent具有执行具体的指令去操作服务和组件,而且会通过心跳汇报Host和服务的状态信息的功能,因此,通过将Ambari Agent所关联的注册信息发送给Ambari Server,通过AmbariServer对各扩展节点上的Ambari Agent进行管理,完成扩展节点在待扩容集群上的注册操作。
在本发明一实施例中,所述根据所述待扩容集群,为所述至少一个扩展节点安装组件,包括:
确定所述待扩容集群上安装的组件;
调用Ambari Rest Api,执行:
在所述至少一个节点上添加所述组件;
安装所述至少一个节点上添加的所述组件;
启动所述至少一个节点上安装的所述组件。
在本发明实施例中,在为用户提供服务器时,可能会用到待扩容集群中组件,为了使得扩容节点在完成对待扩容集群扩容后,能够为用户提供待扩容集群中相应的功能,需要调用Ambari Rest Api按照待扩容集群上安装的组件,例如,HDFS/DATANODE,YARN/NODEMANAGER等,在扩容节点上添加相同的组件,并完成扩展节点添加的组件的安装与启动,以便为用户提供服务。
在本发明一实施例中,所述调用Ansible Playbook,根据步骤D1至D5和所述至少一个扩展节点的节点标识完成所述待扩容集群的扩容操作,包括:
调用Ansible Playbook执行,将步骤D1至D5编写为Ansible Playbook脚本;
在所述待扩容集群的Inventory主机资产文件中编写所述至少一个扩展节点的节点标识;
执行编写后的所述Inventory主机资产文件,并运行所述Ansible Playbook脚本。
在本发明实施例中,通过调用Ansible Playbook将上述步骤编写为AnsiblePlaybook脚本,并在Inventory主机资产文件中添加扩展节点的标识,可以通过Inventory主机资产文件中扩展节点的标识,识别为待扩容集群的扩展节点,然后按照AnsiblePlaybook脚本对扩展节点的配置信息进行相应的修改,即可实现多节点的批量扩容操作,无需人工修改扩容节点的配置信息,从而降低集群扩容的难度。
为了简化集群扩容的操作,在本发明一实施例中,所述对至少一个扩展节点的配置进行修改,包括:
所述配置包括:主机名、系统时间、JDK工具、防火墙和selinux中的至少一个;
当所述配置包括:主机名时,
按照所述待扩容集群的主机名,对至少一个扩展节点的主机名进行修改;
当所述配置包括:所述系统时间时,
按照所述待扩容集群的系统时间,对至少一个扩展节点的系统时间进行同步处理;
当所述配置包括:JDK工具时,
在至少一个扩展节点中安装所述JDK工具;
当所述配置包括:防火墙时,
将至少一个扩展节点的防火墙的状态修改为禁用;
当所述配置包括:selinux时,
将至少一个扩展节点的selinux的状态修改为禁用。
在本发明实施例中,在利用扩展节点为待扩容集群扩容之前,可能需要对扩展节点中的相关进行修改,例如,基于待扩容集群的主机名对扩展节点的主机名进行修改,以使扩展节点与待扩容集群的主机名一致,方便Ambari管理。又或者将扩展节点的系统时间与待扩容集群的系统时间进行同步,防止设备之间的时间不同步影响设备间的协同工作。又或者为了方便Ambari对扩展节点的集中管理,可以在扩展节点中安装JDK工具,以便在扩展节点中形成便于Ambari管理的运行环境。又或者可以将扩展节点的防火墙和selinux状态修改为禁用,以使Ambari获得扩展节点的管理权限,便于对扩展节点的管理。
为了更加清楚地说明本发明的技术方案及优点,下面以扩展节点a、扩展节点b和扩展节点c为例,对本发明提供的大数据集群扩容方法进行详细说明,具体可以包括以下步骤:如图2所示,
步骤201:调用管理待扩容集群的Ambari工具执行:按照待扩容集群的主机名,对扩展节点a、b和c的主机名进行修改。
具体地,为了保证待扩容集群与扩展节点能够协同工作,Ambari工具需要将扩展节点a、b和c的主机名按照待扩容集群的主机名进行修改。
步骤202:按照待扩容集群的系统时间,对至少一个扩展节点的系统时间进行同步处理。
具体地,为了保证扩展节点与待扩容集群之间能够协同工作完成一项任务,扩展节点的系统时间需要与待扩容集群的系统时间同步。
步骤203:在扩展节点a、b和c中安装JDK工具。
为了便于Ambari工具对扩展节点进行管理,可以调用Ambari工具在扩展节点上安装JDK工具,以通过JDK工具提供Ambari工具的维护管理环境。
步骤204:将扩展节点a、b和c的防火墙和selinux的状态修改为禁用。
具体地,为了便于Ambari工具对扩展节点进行管理,可以禁用扩展节点的防火墙和selinux,以便Ambari工具能够对扩展节点的进行访问。
步骤205:在扩展节点a、b和c上安装Ambari Agent。
步骤206:调用Ambari Rest Api,分别将扩展节点a、b和c上的Ambari Agent的注册信息发送给Ambari工具中的Ambari Server,以使Ambari Server按照注册信息完成扩展节点a、b和c在待扩容集群上的注册。
具体地,由于Ambari Agent执行具体的指令去操作服务和组件,而且会通过心跳汇报Host和服务的状态信息。所以为了便于Ambari工具中的Ambari Server能够基于Ambari Agent对扩展节点和集群进行集中管理,可以在各扩展节点上安装Ambari Agent,并基于扩展节点上安装Ambari Agent的注册信息完成在各扩展节点在Ambari Server上的注册。
步骤207:确定待扩容集群上安装的组件。
步骤208:调用Ambari Rest Api,在扩展节点a、b和c上添加组件。
步骤209:调用Ambari Rest Api,安装扩展节点a、b和c上添加的组件。
步骤210:调用Ambari Rest Api,启动扩展节点a、b和c上安装的组件。
具体地,为了保证扩展节点的功能与待扩容集群的功能一致性,可以在各扩展节点数上添加与待扩容集群上相同的组件,然后对添加的组件进行安装操作,最后启动安装的组件,以保证扩展节点上的组件能够运行。
步骤211:调用Ansible Playbook,将步骤201至步骤210编写为Ansible Playbook脚本。
步骤212:在待扩容集群的Inventory主机资产文件中编写扩展节点a、b和c的节点标识。
步骤213:执行编写后的Inventory主机资产文件,并运行Ansible Playbook脚本。
具体地,将上述步骤编写为Ansible Playbook脚本,并根据Inventory主机资产文件机制可实现多节点的批量扩容操作。
如图3所示,本发明实施例提供了大数据集群扩容装置,包括:
配置处理模块301,用于调用管理待扩容集群的Ambari工具执行D1:对至少一个扩展节点的配置进行修改;
组件处理模块302,用于调用管理待扩容集群的Ambari工具执行D2:在所述至少一个扩展节点上安装Ambari Agent;D4:根据所述待扩容集群,为所述至少一个扩展节点安装组件;
节点注册模块303,用于调用管理待扩容集群的Ambari工具执行D3:将所述至少一个扩展节点注册到所述待扩容集群上;
扩容处理模块304,用于调用管理待扩容集群的Ambari工具执行D5:调用AnsiblePlaybook,根据所述配置处理模块301执行的步骤D1、所述组件处理模块302执行的步骤D2和D4、所述节点注册模块303执行的步骤D5和所述至少一个扩展节点的节点标识完成所述待扩容集群的扩容操作。
在本发明实施例中,如需通过扩展节点对待扩容集群进行扩容,配置处理模块可以先通过管理待扩容集群的Ambari工具,对扩展节点上的配置进行修改,以保证扩展节点中的配置信息与待扩容集群的信息相匹配,避免待扩容集群与扩展节点之间无法正常通信;然后组件处理模块将Ambari Agent安装在扩展节点上,以使通过Ambari Agent执行待扩容集群中的指令去操作服务、组件,以及汇报服务状态信息等操作;节点注册模块再将各扩展节点注册到待扩容集群上,以便通过集群对扩展节点进行统一管理;再基于待库容集群为扩展节点安装组件,以使扩展节点中的组件与待扩容集群中的组件相匹配,便于为用户提供相应的服务;扩容处理模块最后调用Ansible Playbook根据上述步骤以及为待扩容集群扩容的扩展节点的标识,完成对待扩容集群的扩容工作,实现整个扩容过程的全自动化处理,解决大规模集群在线扩容步骤繁杂、效率低、易出错等问题,从而实现降低集群扩容的难度。
在本发明一实施例中,所述节点注册模块,用于调用Ambari Rest Api,分别将每一个所述扩展节点上的所述Ambari Agent的注册信息发送给所述Ambari工具中的AmbariServer,以使所述Ambari Server按照所述注册信息完成每一个所述扩展节点在所述待扩容集群上的注册。
在本发明一实施例中,所述组件处理模块,用于确定所述待扩容集群上安装的组件;调用Ambari Rest Api,执行:在所述至少一个节点上添加所述组件;安装所述至少一个节点上添加的所述组件;启动所述至少一个节点上安装的所述组件。
在本发明一实施例中,所述扩容处理模块,用于调用Ansible Playbook执行,将步骤D1至D5编写为Ansible Playbook脚本;在所述待扩容集群的Inventory主机资产文件中编写所述至少一个扩展节点的节点标识;执行编写后的所述Inventory主机资产文件,并运行所述Ansible Playbook脚本。
在本发明一实施例中,所述配置包括:主机名、系统时间、JDK工具、防火墙和selinux中的至少一个;
所述配置处理模块,用于当所述配置包括:主机名时,按照所述待扩容集群的主机名,对至少一个扩展节点的主机名进行修改;当所述配置包括:所述系统时间时,按照所述待扩容集群的系统时间,对至少一个扩展节点的系统时间进行同步处理;当所述配置包括:JDK工具时,在至少一个扩展节点中安装所述JDK工具;当所述配置包括:防火墙时,将至少一个扩展节点的防火墙的状态修改为禁用;当所述配置包括:selinux时,将至少一个扩展节点的selinux的状态修改为禁用。
可以理解的是,本发明实施例示意的结构并不构成对大数据集群扩容装置的具体限定。在本发明的另一些实施例中,大数据集群扩容装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例提供了存储介质,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行本发明任一实施例所述的大数据集群扩容方法。
本发明实施例还提供了计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行本发明任一所述的大数据集群扩容方法。
具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
综上可见,Ambari是Apache Software Foundation的一个顶级开源项目,是一个集中部署、管理、监控Hadoop分布式集群的工具。由前端、Ambari Server和Ambari Agent组成。前端提供可视化界面,发送操作指令;Ambari Server维护着整个集群的状态;AmbariAgent执行具体的指令去操作服务和组件,而且会通过心跳汇报Host和服务的状态信息。基于Ambari管理的大数据集群在线扩容,本质上是在扩展节点上安装Ambari Agent、将该节点注册到Ambari Server,并在该节点上安装启动相应的数据组件,由Ambari Server集中管理。
Ansible是一款简单的IT自动化工具,基于SSH协议实现远程服务器上的任务执行。通过定义的Inventory文件实现多节点的远程任务执行。由Ansible Playbook编排任务流程,实现多节点的批量安装配置,组件添加、安装及启动等操作。
本发明各个实施例至少具有如下有益效果:
显著提高了Ambari管理的大数据集群扩容的速度,极大的简化了大数据集群扩容的流程,避免了手动安装配置流程繁琐带来的诸多问题。特别是,对于单次扩容大量节点时有绝对的优势。整个过程不再依赖Ambari Server的web界面,完全通过Ambari Rest Api配合Ansible Playbook实现大数据集群快速在线扩容功能。可根据业务规模的增长情况,实现大数据集群的多次快速在线扩容。
需要说明的是,上述各流程和各系统结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上各实施例中,硬件单元可以通过机械方式或电气方式实现。例如,一个硬件单元可以包括永久性专用的电路或逻辑(如专门的处理器,FPGA或ASIC)来完成相应操作。硬件单元还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。
Claims (10)
1.大数据集群扩容方法,其特征在于,包括:
调用管理待扩容集群的Ambari工具执行:
D1:对至少一个扩展节点的配置进行修改;
D2:在所述至少一个扩展节点上安装Ambari Agent;
D3:将所述至少一个扩展节点注册到所述待扩容集群上;
D4:根据所述待扩容集群,为所述至少一个扩展节点安装组件;
D5:调用Ansible Playbook,根据步骤D1至D5和所述至少一个扩展节点的节点标识完成所述待扩容集群的扩容操作。
2.根据权利要求1所述的大数据集群扩容方法,其特征在于,
所述将所述至少一个扩展节点注册到所述待扩容集群上,包括:
调用Ambari Rest Api,分别将每一个所述扩展节点上的所述Ambari Agent的注册信息发送给所述Ambari工具中的Ambari Server,以使所述Ambari Server按照所述注册信息完成每一个所述扩展节点在所述待扩容集群上的注册。
3.根据权利要求1所述的大数据集群扩容方法,其特征在于,
所述根据所述待扩容集群,为所述至少一个扩展节点安装组件,包括:
确定所述待扩容集群上安装的组件;
调用Ambari Rest Api,执行:
在所述至少一个节点上添加所述组件;
安装所述至少一个节点上添加的所述组件;
启动所述至少一个节点上安装的所述组件;
和/或,
所述调用Ansible Playbook,根据步骤D1至D5和所述至少一个扩展节点的节点标识完成所述待扩容集群的扩容操作,包括:
调用Ansible Playbook执行,将步骤D1至D5编写为Ansible Playbook脚本;
在所述待扩容集群的Inventory主机资产文件中编写所述至少一个扩展节点的节点标识;
执行编写后的所述Inventory主机资产文件,并运行所述Ansible Playbook脚本。
4.根据权利要求1至3中任一所述的大数据集群扩容方法,其特征在于,
所述对至少一个扩展节点的配置进行修改,包括:
所述配置包括:主机名、系统时间、JDK工具、防火墙和selinux中的至少一个;
当所述配置包括:主机名时,
按照所述待扩容集群的主机名,对至少一个扩展节点的主机名进行修改;
当所述配置包括:所述系统时间时,
按照所述待扩容集群的系统时间,对至少一个扩展节点的系统时间进行同步处理;
当所述配置包括:JDK工具时,
在至少一个扩展节点中安装所述JDK工具;
当所述配置包括:防火墙时,
将至少一个扩展节点的防火墙的状态修改为禁用;
当所述配置包括:selinux时,
将至少一个扩展节点的selinux的状态修改为禁用。
5.大数据集群扩容装置,其特征在于,包括:
配置处理模块,用于调用管理待扩容集群的Ambari工具执行D1:对至少一个扩展节点的配置进行修改;
组件处理模块,用于调用管理待扩容集群的Ambari工具执行D2:在所述至少一个扩展节点上安装Ambari Agent;D4:根据所述待扩容集群,为所述至少一个扩展节点安装组件;
节点注册模块,用于调用管理待扩容集群的Ambari工具执行D3:将所述至少一个扩展节点注册到所述待扩容集群上;
扩容处理模块,用于调用管理待扩容集群的Ambari工具执行D5:调用AnsiblePlaybook,根据所述配置处理模块执行的步骤D1、所述组件处理模块执行的步骤D2和D4、所述节点注册模块执行的步骤D5和所述至少一个扩展节点的节点标识完成所述待扩容集群的扩容操作。
6.根据权利要求5所述的大数据集群扩容装置,其特征在于,
所述节点注册模块,用于调用Ambari Rest Api,分别将每一个所述扩展节点上的所述Ambari Agent的注册信息发送给所述Ambari工具中的Ambari Server,以使所述AmbariServer按照所述注册信息完成每一个所述扩展节点在所述待扩容集群上的注册。
7.根据权利要求5所述的大数据集群扩容装置,其特征在于,
所述组件处理模块,用于确定所述待扩容集群上安装的组件;调用Ambari Rest Api,执行:在所述至少一个节点上添加所述组件;安装所述至少一个节点上添加的所述组件;启动所述至少一个节点上安装的所述组件;
和/或,
所述扩容处理模块,用于调用Ansible Playbook执行,将步骤D1至D5编写为AnsiblePlaybook脚本;在所述待扩容集群的Inventory主机资产文件中编写所述至少一个扩展节点的节点标识;执行编写后的所述Inventory主机资产文件,并运行所述Ansible Playbook脚本。
8.根据权利要求5至7中任一所述的大数据集群扩容装置,其特征在于,
所述配置包括:主机名、系统时间、JDK工具、防火墙和selinux中的至少一个;
所述配置处理模块,用于当所述配置包括:主机名时,按照所述待扩容集群的主机名,对至少一个扩展节点的主机名进行修改;当所述配置包括:所述系统时间时,按照所述待扩容集群的系统时间,对至少一个扩展节点的系统时间进行同步处理;当所述配置包括:JDK工具时,在至少一个扩展节点中安装所述JDK工具;当所述配置包括:防火墙时,将至少一个扩展节点的防火墙的状态修改为禁用;当所述配置包括:selinux时,将至少一个扩展节点的selinux的状态修改为禁用。
9.存储介质,其特征在于,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行权利要求1至4中任一所述的大数据集群扩容方法。
10.计算机可读介质,其特征在于,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行权利要求1至4任一所述的大数据集群扩容方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010094856.5A CN111339055B (zh) | 2020-02-07 | 2020-02-07 | 大数据集群扩容方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010094856.5A CN111339055B (zh) | 2020-02-07 | 2020-02-07 | 大数据集群扩容方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111339055A true CN111339055A (zh) | 2020-06-26 |
CN111339055B CN111339055B (zh) | 2023-08-01 |
Family
ID=71183430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010094856.5A Active CN111339055B (zh) | 2020-02-07 | 2020-02-07 | 大数据集群扩容方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111339055B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112328184A (zh) * | 2020-12-03 | 2021-02-05 | 北京联创信安科技股份有限公司 | 一种集群扩容方法、装置、设备及存储介质 |
CN112925653A (zh) * | 2021-05-11 | 2021-06-08 | 深圳市安软科技股份有限公司 | 虚拟化群集扩容方法、相关设备及计算机可读存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104679717A (zh) * | 2015-02-15 | 2015-06-03 | 北京京东尚科信息技术有限公司 | 集群弹性部署的方法和管理系统 |
US20160179494A1 (en) * | 2014-12-18 | 2016-06-23 | Vladimir Pavlov | Integration of an arbitrary server installed as an extension of a computing platform |
CN106484528A (zh) * | 2016-09-07 | 2017-03-08 | 北京百度网讯科技有限公司 | 分布式框架中用于实现集群动态伸缩的方法及装置 |
CN107357896A (zh) * | 2017-07-13 | 2017-11-17 | 北京小度信息科技有限公司 | 数据库集群的扩容方法、装置、系统和数据库集群系统 |
US20180167448A1 (en) * | 2016-12-13 | 2018-06-14 | International Business Machines Corporation | Self-Recoverable Multitenant Distributed Clustered Systems |
CN108776579A (zh) * | 2018-06-19 | 2018-11-09 | 郑州云海信息技术有限公司 | 一种分布式存储集群扩容方法、装置、设备及存储介质 |
CN109697070A (zh) * | 2017-10-23 | 2019-04-30 | 中移(苏州)软件技术有限公司 | 一种基于Ambari的集群管理方法、装置和介质 |
CN110519100A (zh) * | 2019-09-03 | 2019-11-29 | 浪潮云信息技术有限公司 | 一种多集群管理方法、终端及计算机可读存储介质 |
US20190394093A1 (en) * | 2018-06-21 | 2019-12-26 | International Business Machines Corporation | Cluster creation using self-aware, self-joining cluster nodes |
-
2020
- 2020-02-07 CN CN202010094856.5A patent/CN111339055B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160179494A1 (en) * | 2014-12-18 | 2016-06-23 | Vladimir Pavlov | Integration of an arbitrary server installed as an extension of a computing platform |
CN104679717A (zh) * | 2015-02-15 | 2015-06-03 | 北京京东尚科信息技术有限公司 | 集群弹性部署的方法和管理系统 |
CN106484528A (zh) * | 2016-09-07 | 2017-03-08 | 北京百度网讯科技有限公司 | 分布式框架中用于实现集群动态伸缩的方法及装置 |
US20180167448A1 (en) * | 2016-12-13 | 2018-06-14 | International Business Machines Corporation | Self-Recoverable Multitenant Distributed Clustered Systems |
CN107357896A (zh) * | 2017-07-13 | 2017-11-17 | 北京小度信息科技有限公司 | 数据库集群的扩容方法、装置、系统和数据库集群系统 |
CN109697070A (zh) * | 2017-10-23 | 2019-04-30 | 中移(苏州)软件技术有限公司 | 一种基于Ambari的集群管理方法、装置和介质 |
CN108776579A (zh) * | 2018-06-19 | 2018-11-09 | 郑州云海信息技术有限公司 | 一种分布式存储集群扩容方法、装置、设备及存储介质 |
US20190394093A1 (en) * | 2018-06-21 | 2019-12-26 | International Business Machines Corporation | Cluster creation using self-aware, self-joining cluster nodes |
CN110519100A (zh) * | 2019-09-03 | 2019-11-29 | 浪潮云信息技术有限公司 | 一种多集群管理方法、终端及计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
吴丽杰;张璐璐;张婷;: "基于Ambari的Hadoop集群快速部署研究" * |
王华涛;: "基于大数据集群架构的数据管理系统设计" * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112328184A (zh) * | 2020-12-03 | 2021-02-05 | 北京联创信安科技股份有限公司 | 一种集群扩容方法、装置、设备及存储介质 |
CN112328184B (zh) * | 2020-12-03 | 2023-11-21 | 北京联创信安科技股份有限公司 | 一种集群扩容方法、装置、设备及存储介质 |
CN112925653A (zh) * | 2021-05-11 | 2021-06-08 | 深圳市安软科技股份有限公司 | 虚拟化群集扩容方法、相关设备及计算机可读存储介质 |
CN112925653B (zh) * | 2021-05-11 | 2021-07-23 | 深圳市安软科技股份有限公司 | 虚拟化群集扩容方法、相关设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111339055B (zh) | 2023-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105487892B (zh) | 一种Linux环境下的云中GIS服务部署系统 | |
WO2019042311A1 (zh) | 基于Jenkins工具的软件项目构建任务配置方法及装置 | |
CN111064626B (zh) | 配置更新方法、装置、服务器及可读存储介质 | |
CN112417051A (zh) | 容器编排引擎资源管理方法及装置、可读介质及电子设备 | |
CN113434158B (zh) | 一种大数据组件的自定义管理方法、装置、设备及介质 | |
WO2024077885A1 (zh) | 容器集群的管理方法、装置、设备及非易失性可读存储介质 | |
CN115220874B (zh) | 一种Kubernetes集群部署方法、装置、设备及存储介质 | |
CN111339055A (zh) | 大数据集群扩容方法及装置 | |
CN111831567B (zh) | 应用的测试环境配置方法、装置、系统和介质 | |
CN111679888A (zh) | 一种代理容器的部署方法及装置 | |
CN111399828A (zh) | 一种基于模型驱动的逻辑设备建模方法及终端 | |
CN112906206A (zh) | 数字孪生模型构建方法和装置 | |
CN115248692A (zh) | 一种支持多种深度学习框架模型云端部署的装置及方法 | |
CN112291081B (zh) | 云管理平台审计控制器集群数据的方法、系统及存储介质 | |
CN115167874B (zh) | 自动驾驶软件镜像部署方法、装置、电子设备和可读介质 | |
CN116208498A (zh) | 一种OpenStack云平台节点差异化配置的方法、装置、设备及介质 | |
CN113312148B (zh) | 一种大数据服务部署方法、装置、设备及介质 | |
CN113179332B (zh) | 用于获取配置信息的方法、电子设备和存储介质 | |
CN115037587A (zh) | 网络设备配置自动发放方法、装置、设备及存储介质 | |
US11249742B1 (en) | Systems and methods for zero-touch infrastructure build automation | |
CN115051846A (zh) | 基于超融合平台的k8s集群的部署方法及电子设备 | |
CN114240265B (zh) | 一种基于混合环境的产品部署方法及装置 | |
CN113204459A (zh) | U盾测试方法、装置、设备和介质 | |
CN115604101B (zh) | 系统管理方法及相关设备 | |
CN110971665A (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 | ||
CB02 | Change of applicant information |
Address after: 271000 Langchao science and Technology Park, 527 Dongyue street, Tai'an City, Shandong Province Applicant after: INSPUR SOFTWARE Co.,Ltd. Address before: No. 1036, Shandong high tech Zone wave road, Ji'nan, Shandong Applicant before: INSPUR SOFTWARE Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |