CN115766717B - 超融合分布式系统自动化部署方法、装置、设备及介质 - Google Patents
超融合分布式系统自动化部署方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN115766717B CN115766717B CN202211360440.9A CN202211360440A CN115766717B CN 115766717 B CN115766717 B CN 115766717B CN 202211360440 A CN202211360440 A CN 202211360440A CN 115766717 B CN115766717 B CN 115766717B
- Authority
- CN
- China
- Prior art keywords
- deployment
- node
- cluster
- service
- zbs
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000009471 action Effects 0.000 claims abstract description 37
- 230000000977 initiatory effect Effects 0.000 claims abstract description 7
- 230000001419 dependent effect Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 5
- 238000005192 partition Methods 0.000 claims description 3
- 230000000875 corresponding effect Effects 0.000 description 15
- 230000004927 fusion Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- 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
- Y02D30/00—Reducing energy consumption in communication networks
Landscapes
- Multi Processors (AREA)
Abstract
本发明公开了一种超融合分布式系统自动化部署方法及装置,包括:在集群各节点设置部署服务,自动启动各个节点上的部署服务,访问部署页面进行集群扫描,执行对集群节点的发现操作;在web部署界面配置集群,发起集群部署请求,进入到集群部署阶段;在所述集群部署阶段完成部署任务的分发后,将由各个节点自身的部署服务接管,以进行后续的节点部署动作;对集群初始化进度查看,通过轮询请求获取日志和部署状态的形式与各节点部署服务进行交互以获取对应的部署进度日志及状态。采用自动化部署组件,在进行分布式集群初始化部署时,极大地减少人力支出,并且各节点并行部署的形式显著减少集群的初始化耗时,并可快速部署完成来为上层业务提供服务。
Description
技术领域
本发明涉及超融合系统技术领域,尤其涉及一种超融合分布式系统自动化部署方法、装置、设备及介质。
背景技术
超融合基础架构是一种将计算、网络和存储等资源作为基础设施进行整合的一种架构,可以根据具体业务系统需求进行选择组合和自定义,方便快捷地进行数据中心搭建和业务系统部署的一种技术架构。SmartX的超融合软件平台产品名称为SMTX OS,SMTX OS是目前业界领先的超融合软件平台。SMTX OS超融合系统的部署采用自动化方式进行,这部分的主要工作由部署服务负责。
SMTX OS超融合分布式系统部署服务主要负责超融合系统的初始化部署工作,比如集群基本信息设置、集群节点发现、集群初始化过程中各类配置工作、集群初始化进度查看等。集群部署一般呈现出的特点是顺序化、流程化,因此部署服务的主要着眼点则在于部署动作的编排上,需要基于集群各节点配置需求进行对应部署动作的编排以进行实际的初始化工作,基于从下至上的方向进行部署配置。
部署服务组件的架构则是基于管理节点->节点的控制模型,由管理节点接收集群部署的输入信息,对输入信息进行一系列的处理(检查->整理->拆分->分发)然后分发各节点进行对应节点的初始化动作执行。架构简图如附图1所示,管理节点接收到集群部署输入后,将会分发相关信息至各个节点(包括其自身),所以管理节点并非固定节点,而是用户所访问的节点将会自动成为管理节点。各个节点自身均存在一个部署服务,可以理解为部署worker即部署动作的实际执行者,各个节点部署worker间无严格依赖关系,单个部署worker将会按照所编排任务进行对应的动作执行,以完成节点的初始化工作并最终与其他节点组成超融合分布式系统以提供服务。
在集群部署动作开始后,各部署worker通过节点文件系统记录相关执行日志以及进度信息,通过web界面可进行相应查看以了解对应部署进度及信息。
超融合分布式系统涉及到多节点的集群初始化工作,现有的部署通过人工部署的方式,假设每个节点部署耗时m分钟,则n个节点耗时将会达到m*n分钟的时间量级。一般情况下,超融合分布式系统通常是一个包含多节点的集群,若通过手工的方式进行逐个节点配置部署将会非常低效,且容易因人为错误导致部署失败,造成时间和人力资源的浪费。
发明内容
本发明的目的是提供一种超融合分布式系统自动化部署方法、装置、设备及存储介质,解决人工部署带来的弊端,提供了自动初始化方案。
本发明所提供的一种超融合分布式系统自动化部署方法,所述超融合分布式系统包括多节点集群,所述自动化部署方法包括:
在所述集群各节点设置部署服务,自动启动各个节点上的部署服务,访问部署页面进行集群扫描,执行对集群节点的发现操作;
在web部署界面配置集群,发起集群部署请求,进入到集群部署阶段,所述配置集群包括基本信息配置、存储配置、网络配置;
在所述集群部署阶段完成部署任务的分发后,将由各个节点自身的部署服务接管,以进行后续的节点部署动作;
对集群初始化进度查看,通过轮询请求获取日志和部署状态的形式与各节点部署服务进行交互以获取对应的部署进度日志及状态;
其中,所述集群部署以及节点部署均采用异步执行方式。
作为优选地,所述部署服务包括部署worker节点,即对部署动作的实际执行者,用于部署worker节点以及网页服务器处理web界面发起的针对节点的各类请求;集群部署的管理节点,用于负责提供进行集群部署时web界面所需的api、处理web界面发起的各类请求。
作为优选地,在所述集群各节点设置部署服务,自动启动各个节点上的部署服务,访问部署页面进行集群扫描,执行对集群节点的发现操作包括:
基于IPv6的邻居节点发现方式,采用所述邻居发现协议和ICMPv6进行节点扫描;通过当前节点每个可用网卡,向本地链路组播地址发送邻居请求报文,接收到邻居通告报文,将本地链路中从此主机可达的邻居节点信息缓存到邻居发现协议缓存中,从所述邻居发现协议缓存获取邻居节点信息;或
基于IPv4的邻居节点发现方式,基于地址解析协议和互联网控制协议进行节点扫描,通过向当前节点所在同一网段中的所有主机发送所述互联网控制协议请求数据包,向同一网段所有主机发送所述互联网控制协议请求数据包,收到所述互联网控制协议响应数据包的即为同一网段可达主机;
通过上述方式进行节点发现后,通过节点部署服务所提供的心跳API来获取对应节点的部署状态,过滤处于部署状态的节点。
作为优选地,所述进入到集群部署阶段的部署动作包括:
对集群部署参数的校验;
对集群各节点部署参数整理组装;
基于各节点部署参数分发部署请求到各节点部署服务。
作为优选地,在所述集群部署阶段完成部署任务的分发后,将由各个节点自身的部署服务接管,以进行节点后续的部署动作包括:
节点所需服务配置;节点网络相关配置;节点所需磁盘分区及挂载;节点相关服务的启动及状态检查;节点部署完成后的收尾动作;上述节点部署动作均为顺序执行。
作为优选地,所述部署服务为单个工作线程并且集群部署worker应用单例模式实现;所述节点部署采用同样的节点部署worker应用单例模式实现。
作为优选地,所述节点部署进一步包括:
将管理节点作为部署入口进行部署,组装针对每个节点的部署请求,分发给各节点上的所述部署服务来并行进行节点部署;
其中,所述节点部署包括主节点和存储节点,所述主节点,用于运行含有选主逻辑的组件的节点;所述存储节点,用于仅承载业务不参与选主的节点。
本发明提供了一种超融合分布式系统自动化部署装置,所述超融合分布式系统包括多节点集群,所述自动化部署装置包括:
扫描模块,用于在所述集群各节点设置部署服务,自动启动各个节点上的部署服务,访问部署页面进行集群扫描,执行对集群节点的发现操作;
配置模块,用于在web部署界面配置集群,发起集群部署请求,进入到集群部署阶段,所述配置集群包括基本信息配置、存储配置、网络配置;
部署模块,用于在所述集群部署阶段完成部署任务的分发后,将由各个节点自身的部署服务接管,以进行后续的节点部署动作;
进度模块,用于对集群初始化进度查看,通过轮询请求获取日志和部署状态的形式与各节点部署服务进行交互以获取对应的部署进度日志及状态;
其中,所述集群部署以及节点部署均采用异步执行方式。
本发明还提供了一种电子设备,包括:
存储器,所述存储器用于存储处理程序;
处理器,所述处理器执行所述处理程序时实现如本发明实施例所述的超融合分布式系统自动化部署方法。
本发明还提供了一种可读存储介质,所述可读存储介质上存储有处理程序,所述处理程序被处理器执行时实现如本发明实施例所述的超融合分布式系统自动化部署方法。
针对现有技术,本发明具有如下的有益效果:
本发明所提供的一种超融合分布式系统自动化部署方法,采用这种架构的自动化部署组件,在进行分布式集群初始化部署时,可以极大地减少人力支出,并且各节点并行部署的形式也可以显著减少集群的初始化耗时,能够在较短的时间内完成集群的初始化部署工作,并可快速部署完成来为上层业务提供服务。同时,基于当前简洁的部署架构并且采用比较灵活的Python+Shell的语言实现,非常容易满足未来适配产品更新迭代的需求;
基于单例模式实现的集群部署worker及节点部署worker以避免多次亲请求部署时导致非预期问题;
基于多节点多部署worker并行部署模式以减少分布式集群初始化耗时;
部署组件所用架构对产品未来更新迭代具有很好的扩展性,能够合理快速的适配产品更新迭代所需的调整。
附图说明
图1为本发明背景技术中的架构示意图;
图2为本发明实施例一中所述一种超融合分布式系统自动化部署方法的步骤示意图;
图3为本发明实施例一中集群部署交互流程部分示意图;
图4为本发明实施例一种节点部署的流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一种实施例”表示“至少一种实施例”;术语“另一实施例”表示“至少一种另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本申请公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
如图2所示,本发明所提供的一种超融合分布式系统自动化部署方法,所述超融合分布式系统包括多节点集群,所述自动化部署方法包括:
步骤S1,在所述集群各节点设置部署服务,自动启动各个节点上的部署服务,访问部署页面进行集群扫描,执行对集群节点的发现操作;待集群各节点系统软件安装完毕后,将会自动将节点上的部署服务启动以进行后续部署工作的支持;
部署服务在分布式集群部署的场景中充当两个角色,一个角色则是部署动作的实际执行者即部署worker以及作为一个http server处理web界面发起的针对节点的各类请求,比如节点部署日志、节点部署状态、节点心跳检查等,另一个角色则是集群部署的管理节点即负责提供进行集群部署时web界面所需的api、处理web界面发起的各类请求,比如获取集群可部署节点、进行集群部署动作、转发查看其他节点日志请求等。
集群中的每个节点的部署服务都会充当部署动作的实际执行者,对于集群部署管理节点则并非固定的,当在进行集群部署时,访问web界面所对应的节点将会自动成为管理节点。
通过给用户提供web界面的交互方式来进行集群部署,相对于上传配置文件的形式,比如集群部署所需的配置单独在一个配置文件中维护然后上传给部署服务来进行部署,将更为清晰直观,并且可以提供给用户一系列集群特性相关的交互开关,由用户自主选择所需的超融合分布式系统部署形态、功能形态等。
参考图3所示的集群部署的整体交互流程,图中节点A即为访问进行集群部署的管理节点。后续与其他节点的交互均通过此节点进行转发。
针对图3中进行集群扫描所用的技术主要涉及到以下两部分:
基于IPv6的邻居节点发现方式,采用所述邻居发现协议和ICMPv6进行节点扫描;通过当前节点每个可用网卡,向本地链路组播地址发送邻居请求报文,接收到邻居通告报文,将本地链路中从此主机可达的邻居节点信息缓存到邻居发现协议缓存中,从所述邻居发现协议缓存获取邻居节点信息;或
本领域技术人员可以理解,此种方式主要借助于NDP(Neighbor DiscoveryProtocol,邻居发现协议)和ICMPv6(互联网控制消息协议版本六)进行节点扫描。通过当前节点每个可用的网卡,向本地链路组播地址FF02::1发送ICMPv6报文(邻居请求报文NS),接收到ICMPv6报文(邻居通告报文NA),此时会将本地链路中从此主机可达(REACHABLE)的邻居节点信息缓存到邻居发现协议缓存ndisc_cache(即NDP-table)中。然后从NDP-table中即可获取邻居节点信息。
基于IPv4的邻居节点发现方式,基于地址解析协议和互联网控制协议进行节点扫描,通过向当前节点所在同一网段中的所有主机发送所述互联网控制协议请求数据包,向同一网段所有主机发送所述互联网控制协议请求数据包,收到所述互联网控制协议响应数据包的即为同一网段可达主机;
本领域技术人员可以理解,此种基于IPv4的邻居节点发现方式,主要是基于ARP协议(Address Resolution Protocol,地址解析协议)和ICMP(互联网控制协议)进行节点扫描。通过向当前节点所在同一网段中的所有主机发送ICMP请求数据包,由于此时不知道目标主机的Mac地址,将会通过ARP协议向此网段所有主机进行广播发送ARP请求,响应后即可获取到其他主机的Mac地址,并保存到主机的ARP-table缓存表中,然后继续向同一网段所有主机发送ICMP请求数据包,收到ICMP响应数据包的即为同一网段可达主机。
而通过上述两种方式进行节点发现后,都会通过节点部署服务所提供的心跳API来获取对应节点的部署状态,因为上述扫描的邻居节点可能已经处于部署状态,属于其他集群,需要在最终的节点列表中进行剔除,避免重复部署对现有正常集群造成影响。
步骤S2,在web部署界面配置集群,发起集群部署请求,进入到集群部署阶段,所述配置集群包括基本信息配置、存储配置、网络配置;
在真正进行到部署动作前,集群部署阶段主要进行的动作涉及到以下几方面:集群部署参数的校验;集群各节点部署参数整理组装;基于各节点部署参数分发部署请求到各节点部署服务。
步骤S3,在所述集群部署阶段完成部署任务的分发后,将由各个节点自身的部署服务接管,以进行后续的节点部署动作;而节点部署动作内容则主要包含下述内容:1.节点所需服务配置;2.节点网络相关配置;3.节点所需磁盘分区及挂载;4.节点相关服务的启动及状态检查;5.节点部署完成后的收尾动作;上述节点部署动作均为顺序执行。
由于集群部署以及节点部署耗时较久,因此均是采用异步的方式进行执行,而前端则通过轮询请求获取日志和部署状态的形式与各节点部署服务进行交互以获取对应的部署进度日志及状态。
由于集群部署是由界面发起的请求,一个集群同一时刻只应该存在一个集群部署任务,为了避免多个集群部署任务导致集群部署存在问题,当前部署服务实现为单个工作线程并且集群部署worker应用单例模式实现,以保证部署服务线程中仅存在一个集群部署worker实例,避免多端同时进行部署动作时出现非预期问题;同时,节点部署采用同样的实现机制--节点部署worker应用单例模式实现,避免节点部署动作重复执行时带来非预期问题。
步骤S4,对集群初始化进度查看,通过轮询请求获取日志和部署状态的形式与各节点部署服务进行交互以获取对应的部署进度日志及状态;
所述节点部署进一步包括:
将管理节点作为部署入口进行部署,组装针对每个节点的部署请求,分发给各节点上的所述部署服务来并行进行节点部署;
其中,所述节点部署包括至少一个主节点和存储节点,所述主节点,用于运行含有选主逻辑的组件的节点;所述存储节点,用于仅承载业务不参与选主逻辑的节点。主节点包括:准备网络和配置文件、构建smtx系统用磁盘、构建smtx缓存用磁盘、配置并启动zookeeper服务、启动MongoDb服务、创建MongoDB副本集、OEM系统配置、ntp时间同步服务配置、创建并配置zbs chunk服务、重启zbs相关服务、挂载磁盘、重启不依赖zbs的相关服务、注册chunk到meta服务、配置服务开机自启、检查服务运行状态、重启依赖zbs的相关服务、检查依赖zbs的相关服务运行状态和部署后置动作处理;存储节点包括:准备网络和配置文件、构建smtx系统用磁盘、构建smtx缓存用磁盘、等待MongoDB副本集组建完成、OEM系统配置、ntp时间同步服务配置、创建并配置zbs chunk服务、重启zbs相关服务、挂载磁盘、重启不依赖zbs的相关服务、注册chunk到meta服务、配置服务开机自启、检查服务运行状态、重启依赖zbs的相关服务、检查依赖zbs的相关服务运行状态和部署后置动作处理。一般分布式集群中会有主副节点的角色区分,主节点的存在,就可以保证其他节点的有序运行,以及数据库集群中的写入数据在每个节点上的一致性,所以当主节点故障时,我们需要选举出一个新的主节点来接管全局,即选主。本实施例采用的选主逻辑可以理解为当主节点故障时,选举出的新的主节点。
节点部署涉及的内容流程图如图4所示,图中展示了集群中主节点和存储节点部署过程涉及的具体流程,分布式系统中一般存在两种节点角色,一种运行着含有选主逻辑的组件的节点-称之为主节点,一种仅承载业务不参与选主的节点-称之为存储节点。而由于Python+Shell语言的灵活性,上述流程虽然由同一套代码实现,但通过相关的flag标记可以方便的对不同节点基于角色或者基于其他功能特性,比如平台、比如某些高级功能的开启等进行调整,以适配不同场景的不同部署需求。
总体而言,上述超融合分布式系统自动化部署:通过一个节点作为部署入口-管理节点,来组装针对每个节点的部署请求,分发给各节点上的部署服务来并行进行节点部署的逻辑。同时前面提到的部署服务基于Python+Shell来进行的实现,借助Python及Shell语言的灵活性,在上述架构基础上对自动化部署编排动作的调整与改动均是比较方便的,且对未来产品的更新迭代是友好、易于扩展的。
本发明采用这种架构的自动化部署组件,在进行分布式集群初始化部署时,可以极大地减少人力支出,并且各节点并行部署的形式也可以显著减少集群的初始化耗时,能够在较短的时间内完成集群的初始化部署工作,并为上层业务提供服务。同时,基于当前简洁的部署架构并且采用比较灵活的Python+Shell的语言实现,非常容易满足未来适配产品更新迭代的需求。
实施例二
本发明提供了一种超融合分布式系统自动化部署装置,所述超融合分布式系统包括多节点集群,所述自动化部署装置包括:
扫描模块,用于在所述集群各节点设置部署服务,自动启动各个节点上的部署服务,访问部署页面进行集群扫描,执行对集群节点的发现操作;
配置模块,用于在web部署界面配置集群,发起集群部署请求,进入到集群部署阶段,所述配置集群包括基本信息配置、存储配置、网络配置;
部署模块,用于在所述集群部署阶段完成部署任务的分发后,将由各个节点自身的部署服务接管,以进行后续的节点部署动作;
进度模块,用于对集群初始化进度查看,通过轮询请求获取日志和部署状态的形式与各节点部署服务进行交互以获取对应的部署进度日志及状态;
其中,所述集群部署以及节点部署均采用异步执行方式。
本发明采用这种架构的自动化部署组件,在进行分布式集群初始化部署时,可以极大地减少人力支出,并且各节点并行部署的形式也可以显著减少集群的初始化耗时,能够在较短的时间内完成集群的初始化部署工作,并可快速部署完成来为上层业务提供服务。同时,基于当前简洁的部署架构并且采用比较灵活的Python+Shell的语言实现,非常容易满足未来适配产品更新迭代的需求。
上述扫描模块、配置模块、部署模块和进度模块的原理内容及实现方法,均如实施例一中所述,在此不再赘述。
实施例三
在本申请的一些实施例中,还提供了一种电子设备。该种电子设备中包含存储器和处理器,其中存储器用于对处理程序进行存储,处理器则根据指令对处理程序进行执行。当处理器对处理程序进行执行时,使得前述实施例中的超融合分布式系统自动化部署方法得以实现。
在本申请的一些实施例中,还提供了一种可读存储介质,该可读存储介质可以为非易失性可读存储介质,也可以为易失性可读存储介质。该可读存储介质中存储有指令,当该指令在计算机上运行时,使得包含该种可读存储介质的电子设备执行前述的超融合分布式系统自动化部署方法。
可以理解的是,对于前述所提及的超融合分布式系统自动化部署方法,如果均以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-only memory,ROM)、随机存取存储器(Random accessmemory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请所公开的技术方案所涉及的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如C语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种超融合分布式系统自动化部署方法,其特征在于,所述超融合分布式系统包括多节点集群,所述自动化部署方法包括:
在所述集群各节点设置部署服务,自动启动各个节点上的部署服务,访问部署页面进行集群扫描,执行对集群节点的发现操作;
在web部署界面配置集群,发起集群部署请求,进入到集群部署阶段,所述配置集群包括基本信息配置、存储配置、网络配置;
在所述集群部署阶段完成部署任务的分发后,将由各个节点自身的部署服务接管,以进行后续的节点部署动作;
对集群初始化进度查看,通过轮询请求获取日志和部署状态的形式与各节点部署服务进行交互以获取对应的部署进度日志及状态;
其中,所述集群部署以及节点部署均采用异步执行方式;
在所述集群各节点设置部署服务,自动启动各个节点上的部署服务,访问部署页面进行集群扫描,执行对集群节点的发现操作包括:
基于IPv6的邻居节点发现方式,采用邻居发现协议和ICMPv6进行节点扫描;通过当前节点每个可用网卡,向本地链路组播地址发送邻居请求报文,接收到邻居通告报文,将本地链路中从此主机可达的邻居节点信息缓存到邻居发现协议缓存中,从所述邻居发现协议缓存获取邻居节点信息;或
基于IPv4的邻居节点发现方式,基于ARP协议和ICMP进行节点扫描,通过向当前节点所在同一网段中的所有主机发送ICMP请求数据包,将通过ARP协议向此网段所有主机进行广播发送ARP请求,此网段所有主机响应后即获取到其他主机的Mac地址,并保存到主机的ARP-table缓存表中,然后继续向同一网段所有主机发送ICMP请求数据包,收到ICMP响应数据包的即为同一网段可达主机;
通过上述方式进行节点发现后,通过节点部署服务所提供的心跳API来获取对应节点的部署状态,过滤处于部署状态的节点;
所述节点部署进一步包括:
将管理节点作为部署入口进行部署,组装针对每个节点的部署请求,分发给各节点上的所述部署服务来并行进行节点部署;
其中,所述节点部署包括主节点和存储节点,所述主节点,用于运行含有选主逻辑的组件的节点;所述存储节点,用于仅承载业务不参与选主的节点;
主节点包括:准备网络和配置文件、构建smtx系统用磁盘、构建smtx缓存用磁盘、配置并启动zookeeper服务、启动MongoDb服务、创建MongoDB副本集、OEM系统配置、ntp时间同步服务配置、创建并配置zbs chunk服务、重启zbs相关服务、挂载磁盘、重启不依赖zbs的相关服务、注册chunk到meta服务、配置服务开机自启、检查服务运行状态、重启依赖zbs的相关服务、检查依赖zbs的相关服务运行状态和部署后置动作处理;存储节点包括:准备网络和配置文件、构建smtx系统用磁盘、构建smtx缓存用磁盘、等待MongoDB副本集组建完成、OEM系统配置、ntp时间同步服务配置、创建并配置zbs chunk服务、重启zbs相关服务、挂载磁盘、重启不依赖zbs的相关服务、注册chunk到meta服务、配置服务开机自启、检查服务运行状态、重启依赖zbs的相关服务、检查依赖zbs的相关服务运行状态和部署后置动作处理;
当主节点存在时,保证其他节点的有序运行,以及数据库集群中的写入数据在每个节点上的一致性;
当主节点故障时,选举出一个新的主节点来接管全局,即选主,选主逻辑为当主节点故障时,选举出的新的主节点。
2.如权利要求1所述的一种超融合分布式系统自动化部署方法,其特征在于,所述部署服务包括部署worker节点,即部署动作的实际执行者,用于部署worker节点以及网页服务器处理web界面发起的针对节点的各类请求;集群部署的管理节点,用于负责提供进行集群部署时web界面所需的api、处理web界面发起的各类请求。
3.如权利要求1所述的一种超融合分布式系统自动化部署方法,其特征在于,所述进入到集群部署阶段的部署动作包括:
对集群部署参数的校验;
对集群各节点部署参数整理组装;
基于各节点部署参数分发部署请求到各节点部署服务。
4.如权利要求1所述的一种超融合分布式系统自动化部署方法,其特征在于,在所述集群部署阶段完成部署任务的分发后,将由各个节点自身的部署服务接管,以进行后续的节点部署动作包括:
节点所需服务配置;节点网络相关配置;节点所需磁盘分区及挂载;节点相关服务的启动及状态检查;节点部署完成后的收尾动作;上述节点部署动作均为顺序执行。
5.如权利要求1所述的一种超融合分布式系统自动化部署方法,其特征在于,所述部署服务为单个工作线程并且集群部署worker应用单例模式实现;所述节点部署采用同样的节点部署worker应用单例模式实现。
6.一种超融合分布式系统自动化部署装置,其特征在于,所述超融合分布式系统包括多节点集群,所述自动化部署装置包括:
扫描模块,用于在所述集群各节点设置部署服务,自动启动各个节点上的部署服务,访问部署页面进行集群扫描,执行对集群节点的发现操作;
配置模块,用于在web部署界面配置集群,发起集群部署请求,进入到集群部署阶段,所述配置集群包括基本信息配置、存储配置、网络配置;
部署模块,用于在所述集群部署阶段完成部署任务的分发后,将由各个节点自身的部署服务接管,以进行后续的节点部署动作;
进度模块,用于对集群初始化进度查看,通过轮询请求获取日志和部署状态的形式与各节点部署服务进行交互以获取对应的部署进度日志及状态;
其中,所述集群部署以及节点部署均采用异步执行方式;
扫描模块包括:
基于IPv6的邻居节点发现方式,采用邻居发现协议和ICMPv6进行节点扫描;通过当前节点每个可用网卡,向本地链路组播地址发送邻居请求报文,接收到邻居通告报文,将本地链路中从此主机可达的邻居节点信息缓存到邻居发现协议缓存中,从所述邻居发现协议缓存获取邻居节点信息;或
基于IPv4的邻居节点发现方式,基于ARP协议和ICMP进行节点扫描,通过向当前节点所在同一网段中的所有主机发送ICMP请求数据包,将通过ARP协议向此网段所有主机进行广播发送ARP请求,所有主机响应后即获取到其他主机的Mac地址,并保存到主机的ARP-table缓存表中,然后继续向同一网段所有主机发送ICMP请求数据包,收到ICMP响应数据包的即为同一网段可达主机;
通过上述方式进行节点发现后,通过节点部署服务所提供的心跳API来获取对应节点的部署状态,过滤处于部署状态的节点;
所述节点部署进一步包括:
将管理节点作为部署入口进行部署,组装针对每个节点的部署请求,分发给各节点上的所述部署服务来并行进行节点部署;
其中,所述节点部署包括主节点和存储节点,所述主节点,用于运行含有选主逻辑的组件的节点;所述存储节点,用于仅承载业务不参与选主的节点;
主节点包括:准备网络和配置文件、构建smtx系统用磁盘、构建smtx缓存用磁盘、配置并启动zookeeper服务、启动MongoDb服务、创建MongoDB副本集、OEM系统配置、ntp时间同步服务配置、创建并配置zbs chunk服务、重启zbs相关服务、挂载磁盘、重启不依赖zbs的相关服务、注册chunk到meta服务、配置服务开机自启、检查服务运行状态、重启依赖zbs的相关服务、检查依赖zbs的相关服务运行状态和部署后置动作处理;存储节点包括:准备网络和配置文件、构建smtx系统用磁盘、构建smtx缓存用磁盘、等待MongoDB副本集组建完成、OEM系统配置、ntp时间同步服务配置、创建并配置zbs chunk服务、重启zbs相关服务、挂载磁盘、重启不依赖zbs的相关服务、注册chunk到meta服务、配置服务开机自启、检查服务运行状态、重启依赖zbs的相关服务、检查依赖zbs的相关服务运行状态和部署后置动作处理;
当主节点存在时,保证其他节点的有序运行,以及数据库集群中的写入数据在每个节点上的一致性;
当主节点故障时,选举出一个新的主节点来接管全局,即选主,选主逻辑为当主节点故障时,选举出的新的主节点。
7.一种电子设备,其特征在于,包括:
存储器,所述存储器用于存储处理程序;
处理器,所述处理器执行所述处理程序时实现如权利要求1至5中任意一项所述的超融合分布式系统自动化部署方法。
8.一种可读存储介质,其特征在于,所述可读存储介质上存储有处理程序,所述处理程序被处理器执行时实现如权利要求1至5中任意一项所述的超融合分布式系统自动化部署方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211360440.9A CN115766717B (zh) | 2022-11-02 | 2022-11-02 | 超融合分布式系统自动化部署方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211360440.9A CN115766717B (zh) | 2022-11-02 | 2022-11-02 | 超融合分布式系统自动化部署方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115766717A CN115766717A (zh) | 2023-03-07 |
CN115766717B true CN115766717B (zh) | 2023-08-15 |
Family
ID=85355233
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211360440.9A Active CN115766717B (zh) | 2022-11-02 | 2022-11-02 | 超融合分布式系统自动化部署方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115766717B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108073402A (zh) * | 2017-11-30 | 2018-05-25 | 山东鲁能软件技术有限公司 | 基于Linux系统的kafka集群自动部署方法和装置 |
CN108924217A (zh) * | 2018-06-29 | 2018-11-30 | 中山大学 | 一种分布式云系统自动化部署方法 |
CN115051846A (zh) * | 2022-06-07 | 2022-09-13 | 北京天融信网络安全技术有限公司 | 基于超融合平台的k8s集群的部署方法及电子设备 |
CN115150263A (zh) * | 2022-06-17 | 2022-10-04 | 浙江中控技术股份有限公司 | 一种服务集群的部署方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11201785B1 (en) * | 2020-05-26 | 2021-12-14 | Dell Products L.P. | Cluster deployment and management system |
-
2022
- 2022-11-02 CN CN202211360440.9A patent/CN115766717B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108073402A (zh) * | 2017-11-30 | 2018-05-25 | 山东鲁能软件技术有限公司 | 基于Linux系统的kafka集群自动部署方法和装置 |
CN108924217A (zh) * | 2018-06-29 | 2018-11-30 | 中山大学 | 一种分布式云系统自动化部署方法 |
CN115051846A (zh) * | 2022-06-07 | 2022-09-13 | 北京天融信网络安全技术有限公司 | 基于超融合平台的k8s集群的部署方法及电子设备 |
CN115150263A (zh) * | 2022-06-17 | 2022-10-04 | 浙江中控技术股份有限公司 | 一种服务集群的部署方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115766717A (zh) | 2023-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2417415C2 (ru) | Способ и система развертывания программного обеспечения, сервер развертывания программного обеспечения и пользовательский сервер | |
JP7192103B2 (ja) | データ処理方法及び装置、及び、コンピューティングノード | |
WO2016184045A1 (zh) | 一种网络业务扩容的方法和装置 | |
CN101820387B (zh) | 一种易扩展的快速机群部署方法 | |
CN103167041A (zh) | 一种支持云环境应用集群自动化部署的系统及方法 | |
CN107210924B (zh) | 用于配置通信系统的方法和设备 | |
JP2003046569A (ja) | 負荷テスト実行装置及びシステム、及びその方法、及びそのプログラム | |
CN106549789B (zh) | 一种实现服务器安装的方法及系统 | |
US20170060570A1 (en) | Managing Software Version Upgrades in a Multiple Computer System Environment | |
CN111198696B (zh) | 一种基于裸机服务器的OpenStack大规模部署方法和系统 | |
CN109522028A (zh) | 一种操作系统的安装方法及系统 | |
CN101159611A (zh) | 一种批量系统部署方法和部署装置 | |
US7039682B2 (en) | Extension of the BOOTP protocol towards automatic reconfiguration | |
CN112468545A (zh) | 一种云主机创建方法、装置、系统、设备及可读存储介质 | |
CN115190103A (zh) | 基于服务网格的服务域名解析方法、装置及设备 | |
US20200322427A1 (en) | Apparatus and method for efficient, coordinated, distributed execution | |
CN113746641B (zh) | 一种基于分布式存储的odx协议处理方法 | |
CN114615268B (zh) | 基于Kubernetes集群的服务网络、监控节点、容器节点及设备 | |
CN115766717B (zh) | 超融合分布式系统自动化部署方法、装置、设备及介质 | |
CN113268254A (zh) | 一种集群系统安装方法、装置、电子设备及存储介质 | |
CN104104701A (zh) | 在线服务的配置更新的方法和系统 | |
US20100169271A1 (en) | File sharing method, computer system, and job scheduler | |
JP2017538237A (ja) | 仮想マシン名を表示するための方法、装置、およびシステム | |
CN112416495A (zh) | 一种超融合云终端资源统一管理系统及方法 | |
CN116743795A (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 | ||
CP03 | Change of name, title or address |
Address after: 8b, building 1, No. 48, Zhichun Road, Haidian District, Beijing 100098 Patentee after: Beijing Zhiling Haina Technology Co.,Ltd. Country or region after: China Address before: 8b, building 1, No. 48, Zhichun Road, Haidian District, Beijing 100098 Patentee before: Beijing zhilinghaina Technology Co.,Ltd. Country or region before: China |
|
CP03 | Change of name, title or address |