CN104317610B - 一种hadoop平台自动安装部署的方法及装置 - Google Patents

一种hadoop平台自动安装部署的方法及装置 Download PDF

Info

Publication number
CN104317610B
CN104317610B CN201410534261.1A CN201410534261A CN104317610B CN 104317610 B CN104317610 B CN 104317610B CN 201410534261 A CN201410534261 A CN 201410534261A CN 104317610 B CN104317610 B CN 104317610B
Authority
CN
China
Prior art keywords
hadoop
installation
service
main frame
configuration
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.)
Active
Application number
CN201410534261.1A
Other languages
English (en)
Other versions
CN104317610A (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.)
FUJIAN NEW LAND SOFTWARE ENGINEERING Co Ltd
Original Assignee
FUJIAN NEW LAND SOFTWARE ENGINEERING 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 FUJIAN NEW LAND SOFTWARE ENGINEERING Co Ltd filed Critical FUJIAN NEW LAND SOFTWARE ENGINEERING Co Ltd
Priority to CN201410534261.1A priority Critical patent/CN104317610B/zh
Publication of CN104317610A publication Critical patent/CN104317610A/zh
Application granted granted Critical
Publication of CN104317610B publication Critical patent/CN104317610B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明提供一种hadoop平台自动安装部署的方法及装置,方法包括不同发行版和版本号的安装包按照目录层次存放在yum安装服务器中;不同发行版和版本号的hadoop版本配置文件按照目录层级组成配置列表信息后存放在大数据管理平台上,版本号目录层下存放有包括repo安装源文件和hadoop服务目录列表;运行大数据管理平台,加载配置列表信息;创建集群,选择hadoop发行版本及版本号;主机加入集群,分发repo安装源文件至各主机上;选择hadoop服务;对hadoop服务的必要参数进行配置;大数据管理平台生成并将安装启动任务信息发送至各主机;各主机获取相对应的hadoop服务的软件安装包后根据安装启动任务信息自动安装启动各服务。解决差异化问题,普遍适用于安装各种开源版本。

Description

一种hadoop平台自动安装部署的方法及装置
技术领域
本发明涉及大数据领域,具体说的是一种hadoop平台自动安装部署的方法及装置。
背景技术
随着信息技术的飞速发展,信息时代产生的数据日益在膨胀,Hadoop做为解决大数据领域的重要技术手段,目前被广泛应用着。Hadoop产品最初由Apache基金会进行开源(下文统一称为Apache开源版),该版本主要用于验证和学习目的,较少用于商用,目前主要安装部署方式是手工安装或者编写批量脚本安装。在Apache开源版基础上发展出一系列发行版,目前以cloudera、hortonworks这两个商业版本最为主流。Cloudera公司发行的hadoop开源版为CDH(全称Cloudera’s Distribution Including Apache Hadoop,下文统一称为CDH开源版),可以通过cloudera公司自行开发的Cloudera Manager实现自动化安装部署;hortonworks公司发行的hadoop开源版本为HDP(全称Hortonworks Data Platform,下文统一称为HDP开源版),可以通过该公司研发工具ambari实现自动化安装部署。目前这两个商业发行版本的安装工具和安装包彼此互不兼容。
针对Hadoop开源版,现有的部署方式大都采取手工安装软件包,手工编写各个服务配置文件并分发到集群每台主机,然后采用shell脚本进行启停。这种方式工作量繁重,当配置文件有变更时需要每台主机都修改分发,容易出错,一旦出现问题很难定位。而针对CDH开源版和HDP开源版,目前cloudera和hortonworks两个商业发行版都提供了各自的hadoop发行版本以及自动化安装管理工具,但两个自动化安装管理平台彼此互不兼容。Cloudera Manager仅可以针对CDH的软件包实现自动化安装部署;而ambari仅可以实现针对HDP软件包的自动化安装部署。
为了解决Apache开源版缺少自动化安装工具的现状、以及Cloudera Manager和Ambari开源版存在安装版本互不兼容的问题,本发明提供一种hadoop平台自动安装部署的方法及装置。
发明内容
本发明所要解决的技术问题是:提供一种hadoop平台自动安装部署的方法及装置,解决现有的Hadoop开源版无法实现自动化安装,而CDH开源版和HDP开源版虽能实现自动化安装,但是其安装管理平台彼此互不兼容问题。
为了解决上述技术问题,本发明采用的技术方案为:
一种hadoop平台自动安装部署的方法,包括:
S100:发布hadoop版本软件安装包,定制版本配置文件;
不同发行版和版本号的所述安装包按照目录层次结构存放在yum安装服务器中,版本号目录层下存放具体的hadoop服务的软件安装包;
不同发行版和版本号的hadoop版本配置文件按照目录层级结构组成配置列表信息后存放在大数据管理平台上,版本号目录层下存放有包括用于指向yum安装服务器对应hadoop服务的软件安装包源位置的repo安装源文件和hadoop服务目录列表,每个hadoop服务目录下包括服务运行所需的默认配置文件;
S200:运行大数据管理平台,加载所述配置列表信息;
S300:在大数据管理平台创建集群,在所述配置列表信息中选择所需的hadoop发行版本及版本号;
S400:将主机加入集群,自动分发步骤S300中选定的hadoop版本号对应的repo安装源文件至集群的各主机上;
S500:在选定的hadoop版本号对应的hadoop服务目录列表中选择各主机所需的hadoop服务,并将hadoop服务对应的Master和Slaver节点分配到各主机上;
S600:在所述服务的默认配置文件的基础上对所选的hadoop服务的必要参数进行配置;
S700:大数据管理平台根据重新配置后的服务配置文件生成包括安装启动任务信息的相关配置信息,将所述安装启动任务信息发送至各主机;
各主机根据所述repo安装源文件获取相对应的所述hadoop服务的软件安装包,并根据所述安装启动任务信息自动安装并启动各服务。
本发明提供的另一个技术方案为:
一种hadoop平台自动安装部署的装置,包括软件包发布模块、版本定制模块和运行在大数据管理平台中的配置加载模块、集群管理模块、第一选择模块、分发模块、第二选择模块、配置模块、生成模块和至少一个的主机,所述主机包括安装模块;
所述软件包发布模块,用于发布hadoop版本软件安装包;将不同发行版和版本号的所述安装包按照目录层次结构存放在yum安装服务器中,版本号目录层下存放具体的hadoop服务的软件安装包;
所述版本定制模块,用于定制版本配置文件;将不同发行版和版本号的hadoop版本配置文件按照目录层级结构组成配置列表信息后存放在大数据管理平台上,版本号目录层下存放有包括用于指向yum安装服务器对应hadoop服务的软件安装包源位置的repo安装源文件和hadoop服务目录列表,每个hadoop服务目录下包括服务运行所需的默认配置文件;
所述配置加载模块,用于运行大数据管理平台,加载所述配置-信息;
所述集群管理模块,用于在大数据管理平台创建集群,将主机加入集群;
所述第一选择模块,用于在所述配置列表信息中选择所需的hadoop发行版本及版本号;
所述分发模块,用于自动分发所述第一选择模块中选定的hadoop版本号对应的repo安装源文件至集群的各主机上;
所述第二选择模块,用于在所述第一选择模块中选定的hadoop版本号对应的hadoop服务目录列表中选择各主机所需的hadoop服务,并将hadoop服务对应的Master和Slaver节点分配到各主机上;
所述配置模块,用于在所述服务的默认配置文件的基础上对所选的hadoop服务的必要参数进行配置;
所述生成模块,用于大数据管理平台根据重新配置后的服务配置文件生成包括安装、启动任务信息的相关配置信息,将所述安装、启动任务信息发送至各主机;
所述安装模块,用于各主机根据所述repo安装源文件获取相对应的所述hadoop服务的软件安装包,并根据所述安装启动任务信息在集群中各主机上自动安装并启动各服务。
本发明的有益效果在于:区别于现有技术的各种Hadoop开源版本由于版本间的差异问题而无法实现自动化安装部署或安装版本彼此兼容的问题。本发明一种hadoop平台自动安装部署的方法及装置,通过组件适配技术解决安装过程中存在的各种差异化问题,提供一个可普遍适用于安装各种开源版本的方法及装置。具体的,通过将hadoop版本软件安装包及版本配置文件均采用目录层次结构进行存放,以目录形式归档安装包和配置文件,解决软件安装包和配置文件的差异化问题;通过在选定所需的hadoop发行版本、版本号及hadoop服务,并根据需要配置必要的服务配置参数后,大数据平台能够自动生成服务配置文件,自动获取版本号对应的hadoop服务软件安装包后进行自动安装部署,有针对性的依据所选择的hadoop版本号及服务自动完成软件的安装及服务组件的配置,解决各个开源版之间的安装包与组件配置由于差异化而无法兼容问题。无论安装的是Apache开源版、CDH开源版或是HDP开源版,都能够在大数据平台中实现自动安装部署和彼此兼容,且明显缩短安装部署时间,大大提高安装效率。
附图说明
图1为本发明一实施例一种hadoop平台自动安装部署的方法的基本流程框图;
图2为本发明一实施例一种hadoop平台自动安装部署的系统的基本结构组成框图;
图3为本发明一实施例一种hadoop平台自动安装部署的系统的结构组成框图。
标号说明:
1、软件包发布模块; 2、版本定制模块; 3、配置加载模块;
4、集群管理模块; 5、第一选择模块; 6、分发模块;
7、第二选择模块; 8、配置模块; 9、生成模块;
10、安装模块; 11、主机; 12、身份认证单元;
13、客户端; 14、配置组创建单元;15、发送单元;
16、接收执行单元;17、应答单元。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
本发明最关键的构思在于:通过组件适配技术解决安装过程中各种hadoop开发源版由于差异化问题而导致的无法自动安装部署或安装版本不兼容问题。
请参照图1至3所示,本发明提供的技术方案为:
一种hadoop平台自动安装部署的方法,包括:
S100:发布hadoop版本软件安装包,定制版本配置文件;
不同发行版和版本号的所述安装包按照目录层次结构存放在yum安装服务器中,版本号目录层下存放具体的hadoop服务的软件安装包;
不同发行版和版本号的hadoop版本配置文件按照目录层级结构组成配置列表信息后存放在大数据管理平台上,版本号目录层下存放有包括用于指向yum安装服务器对应hadoop服务的软件安装包源位置的repo安装源文件和hadoop服务目录列表,每个hadoop服务目录下包括服务运行所需的默认配置文件;
S200:运行大数据管理平台,加载所述配置列表信息;
S300:在大数据管理平台创建集群,在所述配置列表信息中选择所需的hadoop发行版本及版本号;
S400:将主机加入集群,自动分发步骤S300中选定的hadoop版本号对应的repo安装源文件至集群的各主机上;
S500:在选定的hadoop版本号对应的hadoop服务目录列表中选择各主机所需的hadoop服务,并将hadoop服务对应的Master和Slaver节点分配到各主机上;
S600:在所述服务的默认配置文件的基础上对所选的hadoop服务的必要参数进行配置;
S700:大数据管理平台根据重新配置后的服务配置文件生成包括安装启动任务信息的相关配置信息,将所述安装启动任务信息发送至各主机;
各主机根据所述repo安装源文件获取相对应的所述hadoop服务的软件安装包,并根据所述安装启动任务信息自动安装并启动各服务。
各主机11根据所述repo安装源文件获取相对应的所述hadoop服务的软件安装包,并根据所述安装启动任务信息自动安装并启动各服务。
通过组件适配技术解决不同Hadoop开源版及不同版本间安装包介质、repo源路径、安装包名称、安装步骤不一样的问题,任意一个hadoop版本,通过本发明实现通用的安装部署。
从上述描述可知,本发明的有益效果在于:本发明一种hadoop平台自动安装部署的方法及装置,通过组件适配技术解决安装过程中存在的各种差异化问题,提供一个可普遍适用于安装各种开源版本的方法及装置。具体的,通过将hadoop版本软件安装包及版本配置文件均采用目录层次结构进行存放,以目录形式归档安装包和配置文件,解决软件安装包和配置文件的差异化问题;通过在选定所需的hadoop发行版本、版本号及hadoop服务,并根据需要配置必要的服务配置参数后,大数据平台能够自动生成服务配置文件,自动获取版本号对应的hadoop服务软件安装包后进行自动安装部署,有针对性的依据所选择的hadoop版本号及服务自动完成软件的安装及服务组件的配置,解决各个开源版之间的安装包与组件配置由于差异化而无法兼容问题。无论安装的是Apache开源版、CDH开源版或是HDP开源版,都能够在大数据平台中实现自动安装部署和彼此兼容。
其中,所述组件适配技术具体体现为:
1、在yum安装服务器的安装包目录规划上,以及大数据管理平台的配置文件目录层次上进行了适配性的技术设计;
2、适配性体现在,用户选择哪个版本,大数据管理平台自动分发这个版本对应的repo文件;
3、适配性体现在供用户选择的服务列表、以及服务的MASTER/SLAVER关系,根据S300选择的版本不同自动展现不同内容;
4、适配性体现在客户端13配置软件安装包配置信息的HASH结构的设计,以及寻找软件安装包的方法。
进一步的,在步骤S100中,所述安装包和所述hadoop版本配置文件的目录层级结构中,一级目录层均为发行版本,二级目录层均为版本号,三级均为hadoop服务;
所述hadoop版本配置文件的三级目录层下还存放有包括服务核心配置文件模板的所述服务的默认配置文件和服务元数据信息描述文件,所述服务元数据信息描述文件定义每个hadoop服务下包含的组件,以及组件的Master和Slaver从属关系。
通过上述解决hadoop版本软件安装包介质差异化问题和版本配置文件的差异化问题。
进一步的,步骤S400中还包括在所述主机11上安装并运行客户端13软件的步骤;
所述客户端13软件在主机11上启动后,自动收集当前主机11包括操作系统和硬件信息的主机11信息并上报给大数据管理平台,并将所述主机11信息在大数据管理平台中注册,注册后的主机11信息存储在大数据管理平台的数据库中。
进一步的,步骤S400中还包括在主机11加入集群前需通过私钥身份认证的步骤。
进一步的,步骤S600还包括根据各主机11不同的配置要求创建不同的配置组,并将不同配置要求的主机11划分入对应配置要求的配置组中;
步骤S700具体包括:
S701:大数据管理平台根据重新配置后的服务配置文件生成相关配置信息,所述配置信息包括:服务信息、配置组以及服务配置信息、主机11与服务组件信息、安装启动任务信息,并将生成的信息保存至数据库中;
S702:大数据管理平台根据各主机11所需安装的服务的不同,将对应的安装启动任务信息以心跳方式发送至各主机11的客户端13软件;
S703:各主机11的客户端13软件接收所述安装启动任务信息后根据所述安装启动任务信息中的指令执行对应所述hadoop服务的软件安装包的安装和启动,所述hadoop服务的软件安装包的安装和启动包括服务组件的安装、配置文件的生成和服务的启动、停止,同时生成执行日记,并将执行日志以异步心跳应答方式发送给大数据管理平台。
进一步的,主机11通过运行大数据管理平台分发过来的客户端13软件包进行客户端13软件的安装,所述hadoop服务的软件安装包通过客户端13软件进行安装和启动;
所述客户端13软件包包括客户端13配置信息和客户端13安装程序,所述客户端13配置信息存储有定义为hash哈希结构的指定的发行版、版本号和hadoop服务的软件安装包名称;
所述安装启动任务信息中包括以所述客户端13配置信息的hash哈希结构中的发行版和版本号对应生成的hash key哈希密钥;
所述客户端13软件在接收所述安装启动任务信息后,所述客户端13安装程序根据hash key哈希密钥寻找hadoop服务的软件安装包名称,并进行安装。
本发明提供的另一个技术方案为:
一种hadoop平台自动安装部署的装置,包括软件包发布模块、版本定制模块和运行在大数据管理平台中的配置加载模块、集群管理模块、第一选择模块、分发模块、第二选择模块、配置模块、生成模块和至少一个的主机,所述主机包括安装模块;
所述软件包发布模块1,用于发布hadoop版本软件安装包;将不同发行版和版本号的所述安装包按照目录层次结构存放在yum安装服务器中,版本号目录层下存放具体的hadoop服务的软件安装包;
所述版本定制模块2,用于定制版本配置文件;将不同发行版和版本号的hadoop版本配置文件按照目录层级结构组成配置列表信息后存放在大数据管理平台上,版本号目录层下存放有包括用于指向yum安装服务器对应hadoop服务的软件安装包源位置的repo安装源文件和hadoop服务目录列表,每个hadoop服务目录下包括服务运行所需的默认配置文件;
所述配置加载模块3,用于运行大数据管理平台,加载所述配置列表信息;
所述集群管理模块4,用于在大数据管理平台创建集群,将主机11加入集群;
所述第一选择模块5,用于在所述配置列表信息中选择所需的hadoop发行版本及版本号;
所述分发模块6,用于自动分发所述第一选择模块5中选定的hadoop版本号对应的repo安装源文件至集群的各主机11上;
所述第二选择模块7,用于在所述第一选择模块5中选定的hadoop版本号对应的hadoop服务目录列表中选择各主机11所需的hadoop服务,并将hadoop服务对应的Master和Slaver节点分配到各主机11上;
所述配置模块8,用于在所述服务的默认配置文件的基础上对所选的hadoop服务的必要参数进行配置;
所述生成模块9,用于大数据管理平台根据重新配置后的服务配置文件生成包括安装启动任务信息的相关配置信息,将所述安装启动任务信息发送至各主机11;
所述安装模块10,用于各主机11根据所述repo安装源文件获取相对应的所述hadoop服务的软件安装包,并根据所述安装启动任务信息自动安装并启动各服务。
从上述描述可知,本发明的有益效果在于:本发明提供一种hadoop平台自动安装部署的装置,通过组件适配技术解决安装过程中存在的各种差异化问题,提供一个可普遍适用于安装各种开源版本的方法及装置,无论安装的是Apache开源版、CDH开源版或是HDP开源版,都能够在大数据平台中实现自动安装部署和彼此兼容。
进一步的,所述发布模块和定制模块中的所述目录层级结构中,一级目录层均为发行版本,二级目录层均为版本号,三级均为hadoop服务;
所述定制模块的三级目录层下还存放有包括服务核心配置文件模板的所述服务的默认配置文件和服务元数据信息描述文件,所述服务元数据信息描述文件定义每个hadoop服务下包含的组件,以及组件的Master和Slaver从属关系。
进一步的,所述集群管理模块4还包括安装在主机11上的客户端13;
所述客户端13,用于在主机11上启动后,自动收集当前主机11包括操作系统和硬件信息的主机11信息并上报给大数据管理平台,并将所述主机11信息在大数据管理平台中注册,注册后的主机11信息存储在大数据管理平台的数据库中。
优选的,所述客户端13还包括监控模块,主要用于监控当前主机和主机上运行服务组件的健康状态,通过心跳发送主机的CPU/内存/磁盘/网络信息、以及服务组件运行状态等信息;并负责接受和处理生成模块9发送的服务组件安装、启动、停止指令。
进一步的,所述集群管理模块4还包括身份认证单元12;
所述身份认证单元12,用于在主机11加入集群前进行身份认证。
进一步的,所述配置模块8包括配置组创建单元14;所述生成模块9包括发送单元15;所述安装模块10包括接收执行单元16和应答单元17;
所述配置组创建单元14,用于根据各主机11不同的配置要求创建不同的配置组,并将不同配置要求的主机11划分入对应配置要求的配置组中;
所述生成模块9,具体用于大数据管理平台根据重新配置后的服务配置文件生成相关配置信息,所述配置信息包括:服务信息、配置组以及服务配置信息、主机11与服务组件信息、安装启动任务信息,并将生成的信息保存至数据库中;
所述发送单元15,用于大数据管理平台根据各主机11所需安装的服务的不同,将对应的安装启动任务信息以心跳方式发送至各主机11的客户端13软件;
所述接收执行单元16,用于各主机11的客户端13软件接收所述安装启动任务信息后根据所述安装启动任务信息中的指令执行对应所述hadoop服务的软件安装包的安装和启动,所述hadoop服务的软件安装包的安装和启动包括服务组件的安装、配置文件的生成和服务的启动、停止;
所述应答单元17,用于将所述接收执行单元16执行后生成的执行日志以异步心跳应答方式发送给大数据管理平台。
进一步的,主机11通过运行大数据管理平台分发过来的客户端13软件包进行客户端13的安装,所述接收执行单元16在客户端13上运行;
所述客户端13软件包包括客户端13配置信息和客户端13安装程序,所述客户端13配置信息存储有定义为hash哈希结构的指定的发行版、版本号和hadoop服务的软件安装包名称;
所述接收执行单元16接收的所述安装启动任务信息中包括以所述客户端13配置信息的hash哈希结构中的发行版和版本号对应生成的hash key哈希密钥;
所述接收执行单元16,具体用于在接收所述安装启动任务信息后,通过客户端13中的所述客户端13安装程序根据hash key哈希密钥寻找hadoop服务的软件安装包名称,并进行安装。
本发明的实施例一为:
步骤1:根据通用性设计原则发布hadoop版本软件安装包并定制版本配置文件,供集群内所有主机11安装使用:
软件安装包存放在yum安装服务器上,针对安装包介质差异化问题:因yum基于http服务进行安装,在发布软件包时将不同发行版和版本的软件包按照“Hadoop发行版/版本号”的目录层次结构存放在yum安装服务器的http服务目录下即可,版本号目录下存放具体的软件安装包;
版本配置文件存放在管理平台上,包含指定yum安装源地址的repo文件和每个hadoop服务的配置默认文件;这两类文件针对不同hadoop发行版以及不同版本号均有所不同;
针对版本配置文件差异化的问题:在管理平台上将不同hadoop发行版本通过目录分隔,如CDH、HDP等;
同一个Hadoop发行版下的不同版本号用二级目录区分,如CDH/5.1、HDP/2.0等;二级目录下包含:一个yum安装源repo定义文件和若干三级目录;通过这种方式可以实现不同发行版的不同版本进行差异化定制;
三级目录以服务名进行命名:代表该发行版有哪些可安装服务,如CDH/5.1/HDFS,每个3级服务目录下包含2类文件:配置文件模板(hadoop服务核心配置文件),服务元数据信息描述文件(定义每个服务下的包含哪些组件,以及的组件的Master、slaver从属关系);
步骤2:运行大数据管理平台,加载步骤1的所有配置信息并提供WEB访问服务;
步骤3:用户访问大数据管理平台人机界面,创建集群并选择需要安装的Hadoop发行版本;可供选择的发行版本为步骤1中配置加载的Hadoop发行版+版本号列表信息,如CDH5.1、HDP 2.0等;
步骤4:将主机11加入集群,系统在主机11上安装客户端13软件,并自动分发repo文件到集群各主机11;具体操作如下:
用户输入需要加入集群的主机11列表,并提供管理平台免登录密钥,点击确定;
管理平台通过页面选择的私钥与集群内主机11做身份认证,一旦认证通过,则将步骤3选择版本对应的repo安装源文件复制到集群的每台主机11上,使每台客户端13主机11都具备Hadoop软件安装环境;
管理平台调用客户端13安装和启动命令,在集群内每台主机11上安装和运行客户端13软件;
客户端13软件启动后,收集当前主机11的操作系统和硬件信息,自动到管理平台进行注册;管理平台收到注册信息后,将主机11信息存储到数据库中;
步骤5:用户进入选择hadoop服务界面,可选服务列表为步骤3中Hadoop发行版+版本号下边对应的服务列表信息;并将各个服务的Master和Slaver节点分配到集群中的各个主机11上;
步骤6:用户进入服务配置界面,进行必要的服务参数设置:
管理平台首先根据步骤1定制的服务核心配置文件模板展现默认配置,用户进行必要的参数配置;
针对不同主机11需要实现不同配置的情况,可通过配置组实现,将不同的主机11划分到不同的配置组;配置组至少有一个,系统会默认创建一个配置组,一个主机11只能属于一个配置组,服务配置应用于配置组,而非主机11;
步骤7:完成服务配置以后,系统根据用户选择情况自动在每台主机11上安装并启动各个服务组件。具体操作如下:
管理平台根据用户以上步骤的选择,生成服务信息、配置组以及服务配置信息、主机11与服务组件信息、安装和启动任务信息,并保存到的数据库;
管理平台将每台主机11上需要执行的安装命令和启动命令通过心跳方式发给每台主机11的客户端13软件;
客户端13软件收到管理平台发送的指令,完成服务组件的安装、配置文件生成、以及服务的启动,并将执行日志以异步心跳应答方式发回给管理平台。
针对安装包名称不同的问题:本问题主要影响客户端13软件中的安装程序中指定的安装包名。通过如下方法解决:在客户端13配置中,将发行版名称、版本号、安装包名定义为二级hash结构,本配置作为客户端13软件包的一部分,会在步骤4客户端13软件安装时分发到每台主机11上。管理平台向客户端13主机11发送安装指令时,会带有发行版名称、版本号信息,客户端13安装程序根据hash key值寻找安装包名称,并进行安装;
针对安装步骤有差异的问题:在客户端13配置中定义各个发行版本服务的软件安装流程和安装命令,客户端13软件根据配置调用各安装步骤和安装命令,以解决差异化的问题。
请参照图3,本发明的实施例二为:
一种hadoop平台自动安装部署的装置,包括人机交互界面、集群管理模块4、服务管理模块、主机11管理、监控管理、告警管理、系统管理、数据库处理模块、主机11通讯模块、客户端13软件、主机11和数据库。
人机交互界面,即大数据管理平台的人机交互界面,是用户对集群以及集群主机11的各种操作的统一入口,基于B/S架构,用户通过浏览器即可登录管理平台;
集群管理模块4,用于负责集群创建、集群信息展现等;
服务管理模块,主要作用是服务配置管理、服务新增、服务启动/停止等操作。以上各服务操作指令会通过管理平台发送给客户端13主机11执行;
主机11管理模块,主要作用是集群主机11查询、主机11状态监控、主机11新增、主机11退出、在主机11上安装新组件、退出组件等操作;
监控管理模块,主要用于负责整个集群主机11和服务状态监控。通过对各类服务的jmx信息和主机11心跳信息的采集,形成各类监控图表。可以供用户查询当前和历史数据;
告警管理模块,用于实现集群中服务或主机11的健康检查,支持自定义健康检查命令和检查策略、状态异常的通知方式、异常事件处理动作等。
系统管理,用于提供管理平台账号和权限管理。
数据处理模块,用于本模块主要负责为管理平台各类操作提供数据库操作接口,实现数据库的增加、修改、删除、查询操作。
主机11通讯模块,用于本模块为管理平台上运行的一个服务进程,主要负责与集群中各个主机11进行心跳通信。本模块发送给客户端13主机11的心跳信息分类两类:一类是状态检查心跳,这类心跳只是让每台主机11上报各主机11上运行的组件运行状态;另一类是指令类信息,这中是根据用户操作事件触发,当用户操作服务启停等操作是会发送此类心跳信息。
客户端13通信软件,用于为集群每台主机11上运行的服务进程,负责与模块9进行通讯。负责响应主机11通讯模块发送过来的心跳指令,并进行应答。针对状态检查心跳,客户端13通信软件会把该主机11上运行所有的hadoop服务信息上报给管理平台,便于管理平台监控和管理;针对指令类信息,负责执行操作指令,如组件安装、服务启停等,并将执行结果异步返回给管理平台。
yum:(全称为Yellow dog Updater,Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。客户端13主机11在使用yum时,需要通过repo文件指定安装软件源的安装位置。
本发明与现有技术的相比,在一个50节点规模的集群中,如采用手工部署一个Hadoop集群,从集群规划、软件安装、服务配置、配置分发,到服务启动,以及可用性检查。所有工作完成需要1天左右时间;如果主机11数量更多,则时间会成倍增长;在采用本方案的情况下,仅需半个小时就可以完成以上工作。因为不同主机11上的安装任务支持并行执行,主机11数量的增多对安装效率基本没有影响。
本发明经过实验,已经能够在Hadoop Apache开源版、CDH开源版(包括4.4、4.6、5.0.1、5.1.0、5.1.2)、HDP开源版(包括2.0、2.06、2.1)多个版本中安装部署成功。同时,本发明也可普遍用于分布系统中任意软件的自动化安装、配置分发、状态监控,软件并不仅仅限于Hadoop的相关软件,也可以是其他分布式部署的软件(如分布式队列、分布式数据库等)。
综上所述,本发明提供的一种hadoop平台自动安装部署的方法及装置,不仅能够实现在大数据管理平台中完成各种Hadoop开源版的自动安装和部署;还能很好的解决不同Hadoop开源版的安装版本的兼容问题;进一步的,还能解决平台上主机11数量对安装效率的影响,明显缩短hadoop平台安装部署的时间,大大提高hadoop平台安装部署的效率。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (12)

1.一种hadoop平台自动安装部署的方法,其特征在于,包括:
S100:发布hadoop版本软件安装包,定制版本配置文件;
不同发行版和版本号的所述安装包按照目录层次结构存放在yum安装服务器中,版本号目录层下存放具体的hadoop服务的软件安装包;
不同发行版和版本号的hadoop版本配置文件按照目录层级结构组成配置列表信息后存放在大数据管理平台上,版本号目录层下存放有包括用于指向yum安装服务器对应hadoop服务的软件安装包源位置的repo安装源文件和hadoop服务目录列表,每个hadoop服务目录下包括服务运行所需的默认配置文件;
S200:运行大数据管理平台,加载所述配置列表信息;
S300:在大数据管理平台创建集群,在所述配置列表信息中选择所需的hadoop发行版本及版本号;
S400:将主机加入集群,自动分发步骤S300中选定的hadoop版本号对应的repo安装源文件至集群的各主机上;
S500:在选定的hadoop版本号对应的hadoop服务目录列表中选择各主机所需的hadoop服务,并将hadoop服务对应的Master和Slaver节点分配到各主机上;
S600:在所述服务的默认配置文件的基础上对所选的hadoop服务的必要参数进行配置;
S700:大数据管理平台根据重新配置后的服务配置文件生成包括安装启动任务信息的相关配置信息,将所述安装启动任务信息发送至各主机;
各主机根据所述repo安装源文件获取相对应的所述hadoop服务的软件安装包,并根据所述安装启动任务信息自动安装并启动各服务。
2.根据权利要求1所述的一种hadoop平台自动安装部署的方法,其特征在于,在步骤S100中,所述安装包和所述hadoop版本配置文件的目录层级结构中,一级目录层均为发行版本,二级目录层均为版本号,三级均为hadoop服务;
所述hadoop版本配置文件的三级目录层下还存放有包括服务核心配置文件 模板的所述服务的默认配置文件和服务元数据信息描述文件,所述服务元数据信息描述文件定义每个hadoop服务下包含的组件,以及组件的Master和Slaver从属关系。
3.根据权利要求1所述的一种hadoop平台自动安装部署的方法,其特征在于,包括在所述主机上安装并运行客户端软件的步骤;
所述客户端软件在主机上启动后,自动收集当前主机包括操作系统和硬件信息的主机信息并上报给大数据管理平台,并将所述主机信息在大数据管理平台中注册,注册后的主机信息存储在大数据管理平台的数据库中。
4.根据权利要求1所述的一种hadoop平台自动安装部署的方法,其特征在于,步骤S400中还包括在主机加入集群前需通过私钥身份认证的步骤。
5.根据权利要求3所述的一种hadoop平台自动安装部署的方法,其特征在于,步骤S600还包括根据各主机不同的配置要求创建不同的配置组,并将不同配置要求的主机划分入对应配置要求的配置组中;
步骤S700具体包括:
S701:大数据管理平台根据重新配置后的服务配置文件生成相关配置信息,所述配置信息包括:服务信息、配置组以及服务配置信息、主机与服务组件信息、安装启动任务信息,并将生成的信息保存至数据库中;
S702:大数据管理平台根据各主机所需安装的服务的不同,将对应的安装启动任务信息以心跳方式发送至各主机的客户端软件;
S703:各主机的客户端软件接收所述安装启动任务信息后根据所述安装启动任务信息中的指令执行对应所述hadoop服务的软件安装包的安装和启动,所述hadoop服务的软件安装包的安装和启动包括服务组件的安装、配置文件的生成和服务的启动、停止,同时生成执行日记,并将执行日志以异步心跳应答方式发送给大数据管理平台。
6.根据权利要求3所述的一种hadoop平台自动安装部署的方法,其特征在于,主机通过运行大数据管理平台分发过来的客户端软件包进行客户端软件的安装,所述hadoop服务的软件安装包通过客户端软件进行安装和启动;
所述客户端软件包包括客户端配置信息和客户端安装程序,所述客户端配置信息存储有定义为hash哈希结构的指定的发行版、版本号和hadoop服务的软件安装包名称;
所述安装启动任务信息中包括以所述客户端配置信息的hash哈希结构中的发行版和版本号对应生成的hash key哈希密钥;
所述客户端软件在接收所述安装启动任务信息后,所述客户端安装程序根据hash key哈希密钥寻找hadoop服务的软件安装包名称,并进行安装。
7.一种hadoop平台自动安装部署的装置,其特征在于,包括软件包发布模块、版本定制模块和运行在大数据管理平台中的配置加载模块、集群管理模块、第一选择模块、分发模块、第二选择模块、配置模块、生成模块和至少一个的主机,所述主机包括安装模块;
所述软件包发布模块,用于发布hadoop版本软件安装包;将不同发行版和版本号的所述安装包按照目录层次结构存放在yum安装服务器中,版本号目录层下存放具体的hadoop服务的软件安装包;
所述版本定制模块,用于定制版本配置文件;将不同发行版和版本号的hadoop版本配置文件按照目录层级结构组成配置列表信息后存放在大数据管理平台上,版本号目录层下存放有包括用于指向yum安装服务器对应hadoop服务的软件安装包源位置的repo安装源文件和hadoop服务目录列表,每个hadoop服务目录下包括服务运行所需的默认配置文件;
所述配置加载模块,用于运行大数据管理平台,加载所述配置列表信息;
所述集群管理模块,用于在大数据管理平台创建集群,将主机加入集群;
所述第一选择模块,用于在所述配置列表信息中选择所需的hadoop发行版本及版本号;
所述分发模块,用于自动分发所述第一选择模块中选定的hadoop版本号对应的repo安装源文件至集群的各主机上;
所述第二选择模块,用于在所述第一选择模块中选定的hadoop版本号对应的hadoop服务目录列表中选择各主机所需的hadoop服务,并将hadoop服务对 应的Master和Slaver节点分配到各主机上;
所述配置模块,用于在所述服务的默认配置文件的基础上对所选的hadoop服务的必要参数进行配置;
所述生成模块,用于大数据管理平台根据重新配置后的服务配置文件生成包括安装启动任务信息的相关配置信息,将所述安装启动任务信息发送至各主机;
所述安装模块,用于各主机根据所述repo安装源文件获取相对应的所述hadoop服务的软件安装包,并根据所述安装启动任务信息自动安装并启动各服务。
8.根据权利要求7所述的一种hadoop平台自动安装部署的装置,其特征在于,所述发布模块和定制模块中的所述目录层级结构中,一级目录层均为发行版本,二级目录层均为版本号,三级均为hadoop服务;
所述定制模块的三级目录层下还存放有包括服务核心配置文件模板的所述服务的默认配置文件和服务元数据信息描述文件,所述服务元数据信息描述文件定义每个hadoop服务下包含的组件,以及组件的Master和Slaver从属关系。
9.根据权利要求7所述的一种hadoop平台自动安装部署的装置,其特征在于,所述集群管理模块还包括安装在主机上的客户端;
所述客户端,用于在主机上启动后,自动收集当前主机包括操作系统和硬件信息的主机信息并上报给大数据管理平台,并将所述主机信息在大数据管理平台中注册,注册后的主机信息存储在大数据管理平台的数据库中。
10.根据权利要求7所述的一种hadoop平台自动安装部署的装置,其特征在于,所述集群管理模块还包括身份认证单元;
所述身份认证单元,用于在主机加入集群前进行身份认证。
11.根据权利要求9所述的一种hadoop平台自动安装部署的装置,其特征在于,所述配置模块包括配置组创建单元;所述生成模块包括发送单元;所述安装模块包括接收执行单元和应答单元;
所述配置组创建单元,用于根据各主机不同的配置要求创建不同的配置组, 并将不同配置要求的主机划分入对应配置要求的配置组中;
所述生成模块,具体用于大数据管理平台根据重新配置后的服务配置文件生成相关配置信息,所述配置信息包括:服务信息、配置组以及服务配置信息、主机与服务组件信息、安装启动任务信息,并将生成的信息保存至数据库中;
所述发送单元,用于大数据管理平台根据各主机所需安装的服务的不同,将对应的安装启动任务信息以心跳方式发送至各主机的客户端软件;
所述接收执行单元,用于各主机的客户端软件接收所述安装启动任务信息后根据所述安装启动任务信息中的指令执行对应所述hadoop服务的软件安装包的安装和启动,所述hadoop服务的软件安装包的安装和启动包括服务组件的安装、配置文件的生成和服务的启动、停止;
所述应答单元,用于将所述接收执行单元执行后生成的执行日志以异步心跳应答方式发送给大数据管理平台。
12.根据权利要求11所述的一种hadoop平台自动安装部署的装置,其特征在于,主机通过运行大数据管理平台分发过来的客户端软件包进行客户端的安装,所述接收执行单元在客户端上运行;
所述客户端软件包包括客户端配置信息和客户端安装程序,所述客户端配置信息存储有定义为hash哈希结构的指定的发行版、版本号和hadoop服务的软件安装包名称;
所述接收执行单元接收的所述安装启动任务信息中包括以所述客户端配置信息的hash哈希结构中的发行版和版本号对应生成的hash key哈希密钥;
所述接收执行单元,具体用于在接收所述安装启动任务信息后,通过客户端中的所述客户端安装程序根据hash key哈希密钥寻找hadoop服务的软件安装包名称,并进行安装。
CN201410534261.1A 2014-10-11 2014-10-11 一种hadoop平台自动安装部署的方法及装置 Active CN104317610B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410534261.1A CN104317610B (zh) 2014-10-11 2014-10-11 一种hadoop平台自动安装部署的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410534261.1A CN104317610B (zh) 2014-10-11 2014-10-11 一种hadoop平台自动安装部署的方法及装置

Publications (2)

Publication Number Publication Date
CN104317610A CN104317610A (zh) 2015-01-28
CN104317610B true CN104317610B (zh) 2017-05-03

Family

ID=52372845

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410534261.1A Active CN104317610B (zh) 2014-10-11 2014-10-11 一种hadoop平台自动安装部署的方法及装置

Country Status (1)

Country Link
CN (1) CN104317610B (zh)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679717B (zh) * 2015-02-15 2018-11-27 北京京东尚科信息技术有限公司 集群弹性部署的方法和管理系统
CN105159681A (zh) * 2015-09-18 2015-12-16 北京恒华伟业科技股份有限公司 程序发布方法及装置
CN105260203B (zh) * 2015-09-25 2017-11-17 福州大学 一种基于模型的Hadoop部署以及配置方法
CN105487859B (zh) * 2015-11-25 2018-11-13 北京工业大学 一种基于模板的大数据组件web部署方法
CN105487891A (zh) * 2015-11-26 2016-04-13 航天恒星科技有限公司 一种分布式集群的部署方法及系统
CN112256343B (zh) * 2016-05-10 2022-05-10 华为技术有限公司 一种软件加载方法、设备及系统
CN107463582B (zh) * 2016-06-03 2021-11-12 中兴通讯股份有限公司 分布式部署Hadoop集群的方法及装置
CN106095519B (zh) * 2016-07-19 2019-07-30 北京北信源软件股份有限公司 一种使用Ambari在大数据组件管理中扩展自定义服务的方法
CN106254121A (zh) * 2016-08-11 2016-12-21 浪潮软件股份有限公司 一种自动化部署与管理大数据集群的方法
CN106407075B (zh) * 2016-09-19 2019-09-13 广州视源电子科技股份有限公司 一种用于大数据平台的管理方法及系统
CN106656552A (zh) * 2016-09-30 2017-05-10 上海冰穹网络科技有限公司 一种数据平台系统的扩展方法、系统及电子设备
CN106533753B (zh) * 2016-11-07 2019-12-24 广州视源电子科技股份有限公司 一种分布式系统的角色配置方法及装置
CN106708573B (zh) * 2016-12-19 2020-12-18 中国银联股份有限公司 一种用于Hadoop集群自动安装的系统及方法
CN106682198B (zh) * 2016-12-29 2020-09-04 北京奇虎科技有限公司 一种实现自动化部署数据库的方法和装置
CN107257334B (zh) * 2017-06-08 2020-07-14 中国电子科技集团公司第三十二研究所 用于Hadoop集群的身份认证方法
CN107547519B (zh) * 2017-07-31 2020-03-06 新华三大数据技术有限公司 无线大数据部署方法及装置
CN108874398A (zh) * 2017-10-30 2018-11-23 北京旷视科技有限公司 服务产品的部署方法、装置、系统和存储介质
CN108052374B (zh) * 2017-12-29 2021-08-31 郑州云海信息技术有限公司 一种部署容器微服务的方法及装置
CN108572845B (zh) * 2018-03-15 2022-05-31 华为技术有限公司 分布式微服务集群的升级方法及相关系统
CN108616384B (zh) * 2018-03-26 2021-12-28 山东昭元信息科技有限公司 一种集中式的服务管理部署工具及方法
CN109240757A (zh) * 2018-07-23 2019-01-18 武汉智领云科技有限公司 一种大数据组件集中配置管理系统和方法
CN109218401B (zh) * 2018-08-08 2021-08-31 平安科技(深圳)有限公司 日志采集方法、系统、计算机设备和存储介质
CN110874173B (zh) * 2018-09-03 2023-11-17 华为技术有限公司 一种操作服务分发平台中的服务的方法和相关装置
CN109739616A (zh) * 2018-12-05 2019-05-10 国云科技股份有限公司 一种云平台容器镜像批量制作方法
CN109710281A (zh) * 2018-12-28 2019-05-03 中科曙光国际信息产业有限公司 大数据平台的安装方法及装置
WO2020258175A1 (zh) * 2019-06-27 2020-12-30 四川中电启明星信息技术有限公司 一种自动化安装分布式大数据平台cdh方法
CN110286921B (zh) * 2019-06-27 2023-11-10 四川中电启明星信息技术有限公司 一种自动化安装分布式大数据平台cdh方法
CN110096289B (zh) * 2019-06-28 2019-09-13 奥特酷智能科技(南京)有限公司 自动驾驶异构平台开发环境的快速部署方法
CN110633088A (zh) * 2019-08-15 2019-12-31 平安普惠企业管理有限公司 一种Hadoop自动安装方法及装置
CN110737445A (zh) * 2019-10-23 2020-01-31 成都四方伟业软件股份有限公司 一种基于智能规划安装大数据软件的方法
CN111142887B (zh) * 2019-12-27 2022-08-02 焦点科技股份有限公司 一种cdh自动化自动安装的方法
CN111552523B (zh) * 2020-04-29 2024-02-23 中国银行股份有限公司 一种配置文件的自动化部署的方法及装置
CN111782205B (zh) * 2020-07-30 2024-06-11 杭州玳数科技有限公司 一种通用软件部署监控方法
CN112416456B (zh) * 2020-11-18 2024-09-17 中国建设银行股份有限公司 配置文件处理方法、装置、设备、存储介质和系统
CN113138776A (zh) * 2021-03-25 2021-07-20 杭州博联智能科技股份有限公司 基于模板的集群自动化部署方法、装置、设备及介质
CN113342469B (zh) * 2021-06-23 2023-08-18 山石网科通信技术股份有限公司 大数据平台的数据处理方法及装置
CN113434158B (zh) * 2021-07-08 2023-12-15 恒安嘉新(北京)科技股份公司 一种大数据组件的自定义管理方法、装置、设备及介质
CN114003312A (zh) * 2021-10-29 2022-02-01 广东智联蔚来科技有限公司 大数据服务组件管理方法、计算机装置及存储介质
CN114691357B (zh) * 2022-03-16 2022-12-27 东云睿连(武汉)计算技术有限公司 Hdfs容器化服务系统、方法、装置、设备及存储介质
CN115514666A (zh) * 2022-09-26 2022-12-23 郑州小鸟信息科技有限公司 一种可视化部署的方法及系统
CN117873497A (zh) * 2023-12-25 2024-04-12 湖北省数字产业发展集团有限公司 一种大数据管理平台cdh自动化部署方法、装置和系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102915248A (zh) * 2012-09-28 2013-02-06 用友软件股份有限公司 应用系统的自动部署系统和自动部署方法
CN103561061A (zh) * 2013-10-17 2014-02-05 南京邮电大学 一种弹性的云数据挖掘平台部署方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1418501A1 (fr) * 2002-11-08 2004-05-12 Dunes Technologies S.A. Méthode d'administration d'applications sur des machines virtuelles

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102915248A (zh) * 2012-09-28 2013-02-06 用友软件股份有限公司 应用系统的自动部署系统和自动部署方法
CN103561061A (zh) * 2013-10-17 2014-02-05 南京邮电大学 一种弹性的云数据挖掘平台部署方法

Also Published As

Publication number Publication date
CN104317610A (zh) 2015-01-28

Similar Documents

Publication Publication Date Title
CN104317610B (zh) 一种hadoop平台自动安装部署的方法及装置
US11520639B2 (en) Method for allocating and managing cluster resource on cloud platform
CN100530160C (zh) 分布式计算系统的架构和分布式应用程序的自动设计,部署及管理
CN104813614B (zh) 用于iaas的管理的异步框架
CN102193781B (zh) 集成设计应用
CN103189839B (zh) 用于多部件计算机环境的自动化部署的系统和方法
US20070088630A1 (en) Assessment and/or deployment of computer network component(s)
CN101189595B (zh) 服务器群中的解决方案的部署
US20110004564A1 (en) Model Based Deployment Of Computer Based Business Process On Dedicated Hardware
US20100262558A1 (en) Incorporating Development Tools In System For Deploying Computer Based Process On Shared Infrastructure
US20100280863A1 (en) Automated Model Generation For Computer Based Business Process
US20040205179A1 (en) Integrating design, deployment, and management phases for systems
US20100262559A1 (en) Modelling Computer Based Business Process And Simulating Operation
CN104781783B (zh) 在现有计算环境中部署的集成计算平台
US20040148370A1 (en) System and method for composing, configuring, deploying, and managing services using a graphical user interface
CN110098952A (zh) 一种服务器的管理方法和装置
US9626251B2 (en) Undo configuration transactional compensation
Lindquist et al. IBM service management architecture
KR100932056B1 (ko) 편의 서비스를 위한 동적 모듈 관리 시스템 및 그 방법
KR20040079337A (ko) 분산형 컴퓨팅 시스템을 위한 아키텍처 및 분산형애플리케이션들의 자동화된 설계, 배포와 관리
WO2009082387A1 (en) Setting up development environment for computer based business process
EP1586033A2 (en) System and method to manage the distribution of services software in a distributed network
Makarov et al. Automation of Privacy Preserving BPMS in Collaborative Cloud-Based Business Processes
Galloway et al. On Deployment of a Local Bioinformatics Cloud
CN118796170A (zh) 低代码开发平台的表单应用处理方法、装置及电子设备

Legal Events

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