CN111984623B - 数据库集群自动化部署方法、装置、介质和电子设备 - Google Patents

数据库集群自动化部署方法、装置、介质和电子设备 Download PDF

Info

Publication number
CN111984623B
CN111984623B CN202010820901.0A CN202010820901A CN111984623B CN 111984623 B CN111984623 B CN 111984623B CN 202010820901 A CN202010820901 A CN 202010820901A CN 111984623 B CN111984623 B CN 111984623B
Authority
CN
China
Prior art keywords
task
database cluster
subtasks
subtask
installation
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
CN202010820901.0A
Other languages
English (en)
Other versions
CN111984623A (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.)
Beijing Kingbase Information Technologies Co Ltd
Original Assignee
Beijing Kingbase Information Technologies 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 Beijing Kingbase Information Technologies Co Ltd filed Critical Beijing Kingbase Information Technologies Co Ltd
Priority to CN202010820901.0A priority Critical patent/CN111984623B/zh
Publication of CN111984623A publication Critical patent/CN111984623A/zh
Application granted granted Critical
Publication of CN111984623B publication Critical patent/CN111984623B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种数据库集群自动化部署方法、数据库集群自动化部署装置、计算机可读存储介质和电子设备。所述方法包括:创建用于数据库集群自动化部署的任务清单;基于任务清单中的多个子任务组装数据库集群安装任务;安装引擎执行数据库集群安装任务,从标准模块库中调用当前待执行的子任务对应的任务执行模块,基于该任务执行模块执行对应的子任务;在标准模块库中无当前待执行的子任务对应的任务执行模块时,安装引擎从预设的扩展模块库中调用当前待执行的子任务对应的自定义任务执行模块,基于该自定义任务执行模块执行对应的子任务。本公开的实施方案可以避免数据库集群的自动化部署执行过程中断,提高数据库集群自动化部署的效率。

Description

数据库集群自动化部署方法、装置、介质和电子设备
技术领域
本公开实施例涉及数据库技术领域,尤其涉及一种数据库集群自动化部署方法、数据库集群自动化部署装置、实现数据库集群自动化部署方法的计算机可读存储介质和电子设备。
背景技术
随着信息化技术的快速发展,对于数据库的需求不断增加,大业务量的数据库如数据库集群的部署成为一个重要的问题。目前面对大数据量的数据库的部署仍然需要人工进行处理,并依靠操作人员的经验进行操作,效率低下易出错,人工成本高。
为了缓解以上这些问题,相关技术中提出了数据库的自动化部署方案,例如接收用户的部署指令,根据部署指令执行预先构建的应用于数据库部署的自动化部署脚本等方案。这些数据库自动化部署方案执行过程中,如在执行部分阶段的部署任务时,通常需要从标准模块库中调用相应的任务模块来执行相应的部署任务,例如调用解压模块完成数据库安装介质的自动解压缩等。
但是,随着数据库集群部署场景的不同,或者数据库集群自身拓扑结构的不同,在执行部分阶段的部署任务时标准模块库提供的任务模块并不适用于这些任务,此时可能导致数据库集群的自动化部署中断甚至失败,降低了数据库集群自动化部署的效率。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开实施例提供了一种数据库集群自动化部署方法、数据库集群自动化部署装置、实现数据库集群自动化部署方法的计算机可读存储介质和电子设备。
第一方面,本公开实施例提供一种数据库集群自动化部署方法,包括:
创建用于数据库集群自动化部署的任务清单,所述任务清单包括多个子任务;基于所述任务清单中的多个子任务组装数据库集群安装任务;
安装引擎执行所述数据库集群安装任务,从标准模块库中调用当前待执行的子任务对应的任务执行模块,基于该任务执行模块执行对应的子任务;
在所述标准模块库中无当前待执行的子任务对应的任务执行模块时,所述安装引擎从预设的扩展模块库中调用当前待执行的子任务对应的自定义任务执行模块,基于该自定义任务执行模块执行对应的子任务。
在本公开的一些实施例中,所述方法还包括:
基于预设配置文件获取所述数据库集群的待部署场景和/或集群拓扑结构;
基于所述待部署场景和/或集群拓扑结构,在所述扩展模块库中为所述多个子任务中的预设子任务配置对应的自定义任务执行模块。
在本公开的一些实施例中,所述多个子任务至少依次包括主机系统环境检测任务、待安装节点的创建用户任务、各节点间免密认证任务、数据库集群安装介质解压安装任务、节点赋权任务、主节点初始化任务、主节点配置文件生成任务、主节点数据库创建任务、主节点配置文件分发任务和从节点数据库创建任务。
在本公开的一些实施例中,所述安装引擎执行所述主节点配置文件分发任务时,通过分发组件将主节点配置文件分发至多个从节点。
在本公开的一些实施例中,所述安装引擎从预设的配置清单中获取所有待安装节点的节点信息,基于该所有待安装节点的节点信息执行所述多个子任务中的一个或多个。
在本公开的一些实施例中,所述节点信息至少包括节点IP地址、用户名、密码、访问端口和数据库操作用户。
在本公开的一些实施例中,所述标准模块库包括每个所述子任务对应的一个或者多个任务执行模块。
第二方面,本公开实施例提供一种数据库集群自动化部署装置,包括:
部署任务建立单元,用以创建用于数据库集群自动化部署的任务清单,所述任务清单包括多个子任务;基于所述任务清单中的多个子任务组装数据库集群安装任务;
第一任务执行单元,用以触发安装引擎执行所述数据库集群安装任务,从标准模块库中调用当前待执行的子任务对应的任务执行模块,基于该任务执行模块执行对应的子任务;
第二任务执行单元,用以在所述标准模块库中无当前待执行的子任务对应的任务执行模块时,所述安装引擎从预设的扩展模块库中调用当前待执行的子任务对应的自定义任务执行模块,基于该自定义任务执行模块执行对应的子任务。
第三方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一实施例所述数据库集群自动化部署方法的步骤。
第四方面,本公开实施例提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述任一实施例所述数据库集群自动化部署方法的步骤。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开实施例的方案中,创建用于数据库集群自动化部署的任务清单,任务清单包括多个子任务;基于任务清单中的多个子任务组装数据库集群安装任务,安装引擎执行数据库集群安装任务,从标准模块库中调用当前待执行的子任务对应的任务执行模块,基于该任务执行模块执行对应的子任务,当在所述标准模块库中无当前待执行的子任务对应的任务执行模块时,安装引擎从预设的扩展模块库中调用当前待执行的子任务对应的自定义任务执行模块,基于该自定义任务执行模块执行对应的子任务。这样,在数据库集群自动化部署过程中,若在执行部分阶段的子任务时标准模块库提供的任务执行模块并不适用于这些子任务,此时可从扩展模块库中调用相应的自定义任务执行模块来执行,从而避免数据库集群的自动化部署执行过程中断,提高数据库集群自动化部署的效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例数据库集群自动化部署方法流程图;
图2为本公开实施例数据库集群自动化部署方法流程图;
图3为本公开实施例数据库集群自动化部署系统架构示意图;
图4为本公开实施例数据库集群自动化部署装置示意图;
图5为本公开实施例实现数据库集群自动化部署方法的电子设备示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
图1为本公开实施例示出的数据库集群自动化部署方法流程图,该数据库集群自动化部署方法可以包括以下步骤:
步骤S101:创建用于数据库集群自动化部署的任务清单,所述任务清单包括多个子任务;基于所述任务清单中的多个子任务组装数据库集群安装任务。
步骤S102:安装引擎执行所述数据库集群安装任务,从标准模块库中调用当前待执行的子任务对应的任务执行模块,基于该任务执行模块执行对应的子任务。
步骤S103:在所述标准模块库中无当前待执行的子任务对应的任务执行模块时,所述安装引擎从预设的扩展模块库中调用当前待执行的子任务对应的自定义任务执行模块,基于该自定义任务执行模块执行对应的子任务。
本实施例的上述数据库集群自动化部署方法,在数据库集群自动化部署过程中,若在执行部分阶段的子任务时标准模块库提供的任务执行模块并不适用于这些子任务,此时可从扩展模块库中调用相应的自定义任务执行模块来执行,从而避免数据库集群的自动化部署执行过程中断,提高数据库集群自动化部署的效率。
在本公开的一些实施例中,步骤S101中,创建用于数据库集群自动化部署的任务清单,该任务清单可以包括多个子任务。示例性的,在本公开的一些实施例中,所述多个子任务至少依次可以包括但不限于主机系统环境检测任务、待安装节点的创建用户任务、各节点间免密认证任务、数据库集群安装介质解压安装任务、节点赋权任务、主节点初始化任务、主节点配置文件生成任务、主节点数据库创建任务、主节点配置文件分发任务和从节点数据库创建任务。
基于该主机系统环境检测任务、待安装节点的创建用户任务、各节点间免密认证任务、数据库集群安装介质解压安装任务、节点赋权任务、主节点初始化任务、主节点配置文件生成任务、主节点数据库创建任务、主节点配置文件分发任务和从节点数据库创建任务构成任务清单,然后就可以组装形成数据库集群安装任务。具体实施时,可以创建安装脚本目录,任务清单可以任务文件形式存放于一个目录下。如每个子任务均可以对应一个任务文件,最后可以在main.yml中采用include方式组装形成数据库集群安装任务。
在本公开的一些实施例中,步骤S102中,安装引擎执行所述数据库集群安装任务,从标准模块库中调用当前待执行的子任务对应的任务执行模块,基于该任务执行模块执行对应的子任务。
示例性的,在本公开的一些实施例中,所述标准模块库可以包括每个所述子任务对应的一个或者多个任务执行模块。作为示例,标准模块库可以包括负责安装过程中所要使用的各类模块,如Kconfig、Kcopy、Kunarchive、Kfetch、Kssh、Kuser、Kgroup、Kparamiko等模块。这些模块均为现有数据库领域普通技术人员所知晓的模块。作为示例,安装引擎执行主机系统环境检测任务时,可以通过调用Kconfig模块直接读取预设配置文件,对系统环境进行检测,检测关键技术指标是否满足安装要求。又例如,安装引擎执行待安装节点的创建用户任务时,可以通过调用Kgroup模块和Kuser模块完成待安装节点的用户创建。而安装引擎执行各节点间免密认证任务时,可以通过调用Kssh模块完成各个安装节点间免密证书认证,具体可以包括生成ssh公钥和密钥,将每个节点的公钥填写至所有节点的authorizedkeys文件中,并且设置文件属性,同时调用Kcopy模块和Kfetch模块完成文件交换。安装引擎执行数据库集群安装介质解压安装任务时,可以调用Kunarchive模块自动解压数据库集群安装介质,读取预设配置文件中所指示需要实现的配置信息以自动完成数据库集群软件的安装。预设配置文件可以指示需要部署的数据库集群的拓扑结构、类型以及部署该类型数据库集群的相关参数等,这些可以参考现有技术,此处不再赘述。
安装引擎执行节点赋权任务、主节点初始化任务、主节点配置文件生成任务、主节点数据库创建任务、主节点配置文件分发任务和从节点数据库创建任务时,可以调用Kparamiko模块来实现自动远程登录主节点和从节点执行相应的任务流程。
在本公开的一些实施例中,步骤S103中,在所述标准模块库中无当前待执行的子任务对应的任务执行模块时,所述安装引擎从预设的扩展模块库中调用当前待执行的子任务对应的自定义任务执行模块,基于该自定义任务执行模块执行对应的子任务。
示例性的,扩展模块库可以基于二次开发接口扩展配置相应一个或多个自定义任务执行模块。本实施例的上述方案在数据库集群自动化部署过程中,若在执行部分阶段的子任务时标准模块库提供的任务执行模块并不适用于这些子任务,此时可从扩展模块库中调用相应的自定义任务执行模块来执行,从而避免数据库集群的自动化部署执行过程中断,提高数据库集群自动化部署的效率。
在上述实施例的基础上,本公开的一些实施例中,参考图2中所示,所述方法还可以包括以下步骤:
步骤S201:基于预设配置文件获取所述数据库集群的待部署场景和/或集群拓扑结构。
示例性的,预设配置文件可以指示数据库集群的待部署场景和/或集群拓扑结构,例如云端部署场景,集群拓扑结构包括至少两个主节点等,但不限于此。步骤S201可以在步骤S101之后执行,通过解析预设配置文件可以获取数据库集群的待部署场景和/或集群拓扑结构。
步骤S202:基于所述待部署场景和/或集群拓扑结构,在所述扩展模块库中为所述多个子任务中的预设子任务配置对应的自定义任务执行模块。
示例性的,当确定数据库集群要在云端部署场景下部署,或数据库集群拓扑结构包括至少两个主节点等情况下,也即不同于一般常见的数据库集群部署要求时,执行上述一些子任务时,现有的标准模块库中的任务执行模块并不适用于这些特定的子任务,需要为这些特定的预设子任务配置对应的自定义任务执行模块,
可以理解的是,预设子任务的具体确定可以由本领域技术员基于待部署场景和/或集群拓扑结构确定,例如数据库集群拓扑结构包括至少两个主节点时,对于两个主节点的初始化任务和/或主节点配置文件分发任务,在任务执行时标准模块库中的相应任务执行模块并不适用此种情况,此时可以针对预设子任务如两个主节点的初始化任务和/或主节点配置文件分发任务在扩展模块库中配置对应的适于执行这些预设子任务的自定义任务执行模块,以便高效地完成数据库集群的自动化部署,避免数据库集群的自动化部署执行过程中断,提高数据库集群自动化部署的效率。
可选的,在本公开的一些实施例中,所述安装引擎执行所述主节点配置文件分发任务时,通过分发组件将主节点配置文件分发至多个从节点。分发组件是实现文件分发功能的组件,通过分发组件将主节点配置文件分发至多个从节点,而不是由安装引擎直接分发,如此可以减少对安装引擎的工作影响,提高安装引擎的执行效率,进而可以提高数据库集群自动化部署的效率。
可选的,在本公开的一些实施例中,所述安装引擎可以从预设的配置清单中获取所有待安装节点的节点信息,基于该所有待安装节点的节点信息执行所述多个子任务中的一个或多个。示例性的,在本公开的一些实施例中,所述节点信息至少可以包括但不限于节点IP地址、用户名、密码、访问端口和数据库操作用户。本实施例的方案中,当执行一些子任务时,需要访问登录相应的节点,此时可以基于节点信息如节点IP地址、用户名、密码、访问端口和数据库操作用户来实现,如此可以减少以至于避免出错,提高整个数据库集群自动化部署的效率。
下面结合图3对本公开的一个具体实施例进行说明。在该具体实施例中,数据库集群自动化部署系统可以包括以下组成部分:安装引擎、标准模块库、扩展模块库、任务清单、分发组件、配置清单等。其中,安装引擎作为核心引擎,负责完成整个自动化部署的调度执行。标准模块库包括负责安装过程中使用的各类核心模块,如Kconfig、Kcopy、Kunarchive、Kfetch、Kssh、Kuser、Kgroup、Kparamiko等模块,这些模块是人大金仓数据库(KingbaseES)中提供的模块,此处不再详述。扩展模块库可以在核心模块无法满足要求下,基于二次开发接口,扩展现有模块,配置一个或多个自定义任务执行模块。任务清单包括数据库集群安装过程的任务清单,其包括多个子任务以通过组装方式组成整个数据库集群安装任务。分发组件可以负责连接各远端主机即各节点,完成主节点配置文件的分发以完成后续的自动化安装任务。配置清单负责保存数据库集群各个待安装节点的IP、用户名、密码等信息。
本实施例的上述数据库集群自动化部署方案,在数据库集群自动化部署过程中,若在执行部分阶段的子任务时标准模块库提供的任务执行模块并不适用于这些子任务,此时可从扩展模块库中调用相应的自定义任务执行模块来执行,从而避免数据库集群的自动化部署执行过程中断,提高数据库集群自动化部署的效率。同时,通过自动化部署方式降低了数据库集群的安装复杂程度,简化工作流程,通过程序封装,将数据库集群的安装便捷化、自动化、规范化,在极大地降低安装过程耗时的同时,也避免了普通技术人员安装过程中频繁出错的问题。
需要说明的是,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。另外,也易于理解的是,这些步骤可以是例如在多个模块/进程/线程中同步或异步执行。
基于同一构思,本公开实施例还提供一种数据库集群自动化部署装置,参考图4中所示,该数据库集群自动化部署装置可以包括:
部署任务建立单元401,用以创建用于数据库集群自动化部署的任务清单,所述任务清单包括多个子任务;基于所述任务清单中的多个子任务组装数据库集群安装任务;
第一任务执行单元402,用以触发安装引擎执行所述数据库集群安装任务,从标准模块库中调用当前待执行的子任务对应的任务执行模块,基于该任务执行模块执行对应的子任务;
第二任务执行单元403,用以在所述标准模块库中无当前待执行的子任务对应的任务执行模块时,使所述安装引擎从预设的扩展模块库中调用当前待执行的子任务对应的自定义任务执行模块,基于该自定义任务执行模块执行对应的子任务。
本实施例的上述数据库集群自动化部署装置,在数据库集群自动化部署过程中,若在执行部分阶段的子任务时标准模块库提供的任务执行模块并不适用于这些子任务,此时可从扩展模块库中调用相应的自定义任务执行模块来执行,从而避免数据库集群的自动化部署执行过程中断,提高数据库集群自动化部署的效率。
在本公开的一些实施例中,所述装置还可以包括任务配置模块,用以基于预设配置文件获取所述数据库集群的待部署场景和/或集群拓扑结构;基于所述待部署场景和/或集群拓扑结构,在所述扩展模块库中为所述多个子任务中的预设子任务配置对应的自定义任务执行模块。
在本公开的一些实施例中,所述多个子任务至少依次包括但不限于主机系统环境检测任务、待安装节点的创建用户任务、各节点间免密认证任务、数据库集群安装介质解压安装任务、节点赋权任务、主节点初始化任务、主节点配置文件生成任务、主节点数据库创建任务、主节点配置文件分发任务和从节点数据库创建任务。
在本公开的一些实施例中,所述安装引擎执行所述主节点配置文件分发任务时,可以通过分发组件将主节点配置文件分发至多个从节点。
在本公开的一些实施例中,所述安装引擎可以从预设的配置清单中获取所有待安装节点的节点信息,基于该所有待安装节点的节点信息执行所述多个子任务中的一个或多个。
在本公开的一些实施例中,所述节点信息至少可以包括但不限于节点IP地址、用户名、密码、访问端口和数据库操作用户。
在本公开的一些实施例中,所述标准模块库可以包括但不限于每个所述子任务对应的一个或者多个任务执行模块。
关于上述实施例中的装置,其中各个模块执行操作的具体方式以及带来的相应技术效果已经在有关该方法的实施例中进行了对应的详细描述,此处将不做详细阐述说明。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。作为模块或单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现木公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一项实施例中所述数据库集群自动化部署方法的步骤。
示例性的,该可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
本公开实施例还提供一种电子设备,包括处理器以及存储器,存储器用于存储所述处理器的可执行指令。其中,所述处理器配置为经由执行所述可执行指令来执行上述任一项实施例中所述数据库集群自动化部署方法的步骤。
下面参照图5来描述根据本发明的这种实施方式的电子设备600。图5显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述数据库集群自动化部署方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示方法的步骤。
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述数据库集群自动化部署方法。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (9)

1.一种数据库集群自动化部署方法,其特征在于,包括:
创建用于数据库集群自动化部署的任务清单,所述任务清单包括多个子任务;基于所述任务清单中的多个子任务组装数据库集群安装任务;
安装引擎执行所述数据库集群安装任务,从标准模块库中调用当前待执行的子任务对应的任务执行模块,基于该任务执行模块执行对应的子任务;
在所述标准模块库中无当前待执行的子任务对应的任务执行模块时,所述安装引擎从预设的扩展模块库中调用当前待执行的子任务对应的自定义任务执行模块,基于该自定义任务执行模块执行对应的子任务;
其中,所述自定义任务执行模块的配置步骤包括:基于预设配置文件获取所述数据库集群的待部署场景和/或集群拓扑结构;
基于所述待部署场景和/或集群拓扑结构,在所述扩展模块库中为所述多个子任务中的预设子任务配置对应的自定义任务执行模块。
2.根据权利要求1所述的数据库集群自动化部署方法,其特征在于,所述多个子任务至少依次包括主机系统环境检测任务、待安装节点的创建用户任务、各节点间免密认证任务、数据库集群安装介质解压安装任务、节点赋权任务、主节点初始化任务、主节点配置文件生成任务、主节点数据库创建任务、主节点配置文件分发任务和从节点数据库创建任务。
3.根据权利要求2所述的数据库集群自动化部署方法,其特征在于,所述安装引擎执行所述主节点配置文件分发任务时,通过分发组件将主节点配置文件分发至多个从节点。
4.根据权利要求2所述的数据库集群自动化部署方法,其特征在于,所述安装引擎从预设的配置清单中获取所有待安装节点的节点信息,基于该所有待安装节点的节点信息执行所述多个子任务中的一个或多个。
5.根据权利要求4所述的数据库集群自动化部署方法,其特征在于,所述节点信息至少包括节点IP地址、用户名、密码、访问端口和数据库操作用户。
6.根据权利要求1~5任一项所述的数据库集群自动化部署方法,其特征在于,所述标准模块库包括每个所述子任务对应的一个或者多个任务执行模块。
7.一种数据库集群自动化部署装置,其特征在于,包括:
部署任务建立单元,用以创建用于数据库集群自动化部署的任务清单,所述任务清单包括多个子任务;基于所述任务清单中的多个子任务组装数据库集群安装任务;
第一任务执行单元,用以触发安装引擎执行所述数据库集群安装任务,从标准模块库中调用当前待执行的子任务对应的任务执行模块,基于该任务执行模块执行对应的子任务;
第二任务执行单元,用以在所述标准模块库中无当前待执行的子任务对应的任务执行模块时,所述安装引擎从预设的扩展模块库中调用当前待执行的子任务对应的自定义任务执行模块,基于该自定义任务执行模块执行对应的子任务;
其中,所述装置还可以包括任务配置模块,用以基于预设配置文件获取所述数据库集群的待部署场景和/或集群拓扑结构;基于所述待部署场景和/或集群拓扑结构,在所述扩展模块库中为所述多个子任务中的预设子任务配置对应的自定义任务执行模块。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1~6任一项所述数据库集群自动化部署方法的步骤。
9.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1~6任一项所述数据库集群自动化部署方法的步骤。
CN202010820901.0A 2020-08-14 2020-08-14 数据库集群自动化部署方法、装置、介质和电子设备 Active CN111984623B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010820901.0A CN111984623B (zh) 2020-08-14 2020-08-14 数据库集群自动化部署方法、装置、介质和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010820901.0A CN111984623B (zh) 2020-08-14 2020-08-14 数据库集群自动化部署方法、装置、介质和电子设备

Publications (2)

Publication Number Publication Date
CN111984623A CN111984623A (zh) 2020-11-24
CN111984623B true CN111984623B (zh) 2024-02-09

Family

ID=73435083

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010820901.0A Active CN111984623B (zh) 2020-08-14 2020-08-14 数据库集群自动化部署方法、装置、介质和电子设备

Country Status (1)

Country Link
CN (1) CN111984623B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113986514B (zh) * 2021-12-24 2022-04-26 飞狐信息技术(天津)有限公司 基于数据库部署的任务流控制方法和装置
CN114490588A (zh) * 2022-02-11 2022-05-13 京东科技信息技术有限公司 数据库部署方法、装置、电子设备和计算机可读介质

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102571447A (zh) * 2012-02-14 2012-07-11 福建物联天下信息科技有限公司 一种嵌入式云计算节点的方法及系统
US9612815B1 (en) * 2013-08-22 2017-04-04 Ca, Inc. Method and tool for automating deployment of reference implementation architectures for pre-integrated multi-product solutions
CN107483568A (zh) * 2017-08-04 2017-12-15 中兴软创科技股份有限公司 一种基于云平台可弹性调度的网络和业务监控系统
CN108924217A (zh) * 2018-06-29 2018-11-30 中山大学 一种分布式云系统自动化部署方法
CN108958796A (zh) * 2017-05-23 2018-12-07 阿里巴巴集团控股有限公司 业务请求处理方法及装置、业务请求处理系统
CN109039767A (zh) * 2018-08-29 2018-12-18 广汉川友机械租赁有限公司 一种分布式资源管理与部署平台
CN109687987A (zh) * 2017-10-19 2019-04-26 北京金山云网络技术有限公司 一种云平台部署方法、装置、电子设备及可读存储介质
WO2019184116A1 (zh) * 2018-03-30 2019-10-03 平安科技(深圳)有限公司 自动搭建Kubernetes主节点的方法、装置、终端设备及可读存储介质
CN110502244A (zh) * 2019-07-11 2019-11-26 新华三大数据技术有限公司 部署Kubernetes集群的方法及装置
CN110580248A (zh) * 2019-09-04 2019-12-17 北京明略软件系统有限公司 基于规则库扩充的数据治理方法及装置
CN110764788A (zh) * 2019-09-10 2020-02-07 武汉联影医疗科技有限公司 云存储部署方法、装置、计算机设备和可读存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7987211B2 (en) * 2008-02-29 2011-07-26 Dell Products L.P. System and method for automated deployment of an information handling system
US8595693B2 (en) * 2008-07-29 2013-11-26 International Business Machines Corporation Model driven deployment of composite applications
US9052961B2 (en) * 2012-03-02 2015-06-09 Vmware, Inc. System to generate a deployment plan for a cloud infrastructure according to logical, multi-tier application blueprint

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102571447A (zh) * 2012-02-14 2012-07-11 福建物联天下信息科技有限公司 一种嵌入式云计算节点的方法及系统
US9612815B1 (en) * 2013-08-22 2017-04-04 Ca, Inc. Method and tool for automating deployment of reference implementation architectures for pre-integrated multi-product solutions
CN108958796A (zh) * 2017-05-23 2018-12-07 阿里巴巴集团控股有限公司 业务请求处理方法及装置、业务请求处理系统
CN107483568A (zh) * 2017-08-04 2017-12-15 中兴软创科技股份有限公司 一种基于云平台可弹性调度的网络和业务监控系统
CN109687987A (zh) * 2017-10-19 2019-04-26 北京金山云网络技术有限公司 一种云平台部署方法、装置、电子设备及可读存储介质
WO2019184116A1 (zh) * 2018-03-30 2019-10-03 平安科技(深圳)有限公司 自动搭建Kubernetes主节点的方法、装置、终端设备及可读存储介质
CN108924217A (zh) * 2018-06-29 2018-11-30 中山大学 一种分布式云系统自动化部署方法
CN109039767A (zh) * 2018-08-29 2018-12-18 广汉川友机械租赁有限公司 一种分布式资源管理与部署平台
CN110502244A (zh) * 2019-07-11 2019-11-26 新华三大数据技术有限公司 部署Kubernetes集群的方法及装置
CN110580248A (zh) * 2019-09-04 2019-12-17 北京明略软件系统有限公司 基于规则库扩充的数据治理方法及装置
CN110764788A (zh) * 2019-09-10 2020-02-07 武汉联影医疗科技有限公司 云存储部署方法、装置、计算机设备和可读存储介质

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Abstracting application deployment on Cloud infrastructures;Aiftimiei D C;Journal of Phtsics:Conference Series;第898卷(第8期);全文 *
基于Ansible的电力云平台自动部署系统设计;黄巨涛;杨永娇;刘梓健;周开东;高尚;电子设计工程(03);全文 *
基于开源PaaS技术的互联网业务平台自动部署方案;何震苇;严丽云;李慧云;张凌;陆钢;电信科学(10);全文 *
大数据平台的自动化部署与监控系统设计与实现;那超;万方数据;全文 *
数据库云化部署技术研究;朱希收;刘志勇;姜新;信息系统工程(04);全文 *

Also Published As

Publication number Publication date
CN111984623A (zh) 2020-11-24

Similar Documents

Publication Publication Date Title
KR102648742B1 (ko) 애플리케이션 배포 방법, 장치, 전자 기기 및 판독 가능 저장 매체
CN111614490B (zh) 基于顶级容器集群对托管容器集群的管理系统及方法
US9489189B2 (en) Dynamically generate and execute a context-specific patch installation procedure on a computing system
US11314524B2 (en) Method, apparatus, and computer program product for managing service container
CN111984623B (zh) 数据库集群自动化部署方法、装置、介质和电子设备
CN110389766B (zh) HBase容器集群部署方法、系统、设备及计算机可读存储介质
CN104765621A (zh) 一种在集群节点中部署程序的方法和系统
WO2024077885A1 (zh) 容器集群的管理方法、装置、设备及非易失性可读存储介质
WO2014171130A1 (ja) 情報処理システム、配備方法、処理装置、及び、配備装置
US20210250244A1 (en) Internet of things system topology generation
US20180069762A1 (en) Device asset tracking and service desk using an external network management system as a data source
CN108897581B (zh) 一种服务部署方法、装置及电子设备
CN108536447B (zh) 运维管理方法
CN114745757B (zh) 一种集群切换方法、装置、设备及介质
CN113711570B (zh) 用于使计算设备能够与云网络通信的方法和系统
CN112564979B (zh) 构建任务的执行方法、装置、计算机设备和存储介质
CN112418796A (zh) 子流程节点激活方法、装置、电子设备及存储介质
EP3387533B1 (en) Disaster recovery of cloud resources
KR20150137766A (ko) 가상머신 스택 생성 시스템 및 방법
CN115604101B (zh) 系统管理方法及相关设备
CN112541756B (zh) 区块链合约升级方法、装置、计算机设备及可读存储介质
US11977562B2 (en) Knowledge base for correcting baseline for cluster scaling
US20230379208A1 (en) Cloud automation agents and method of use
US20230289159A1 (en) Cloud automation site design and method
US20110060815A1 (en) Automatic attachment of server hosts to storage hostgroups in distributed environment

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