一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

集群部署方法、集群部署装置、设备及介质与流程

2022-06-02 14:19:47 来源:中国专利 TAG:
1.本发明涉及云计算领域,具体涉及一种集群部署方法、集群部署装置、设备及介质。
背景技术
::2.kubernetes(简称:k8s)是一种开源的,用于管理云平台中多个主机上的容器化的应用,能够高效且快速的部署容器集群。随着云原生技术的逐渐流行,如何快速部署云集群成为相关企业之间相互比拼的指标之一。3.相关技术中,针对生产级别的集群部署,是基于kubespary(一种用于部署生产级别的kubernetes服务器集群的开源项目)进行创建。但由于kubespary在部署集群环境时,是采用一键部署的方式进行通用部署,进而导致在实际应用中,无法满足用户的个性化需求。技术实现要素:4.因此,本发明要解决的技术问题在于克服现有技术中集群部署不具有针对性的缺陷,从而提供一种集群部署方法、集群部署装置、设备及介质。5.根据第一方面,本发明提供一种集群部署方法,所述方法包括:6.获取用于部署集群环境的配置剧本,所述配置剧本包括部署边缘集群环境的部署条件;7.获取主机清单,所述主机清单包括待部署集群环境的多个主机;8.若所述主机清单中的当前主机满足所述部署条件,则通过所述配置剧本将所述当前主机加入至边缘集群中,以部署所述边缘集群环境。9.在该方式中,预先在部署集群环境的配置剧本中添加部署边缘集群环境的部署条件,以便通过该部署条件确定是否部署边缘集群,进而当主机清单中存在满足部署条件的主机时,则将该主机加入至边缘集群中,使其成为边缘集群中的节点,进而实现边缘集群的针对性部署,从而使边缘集群环境的部署更具有针对性,能够满足用户的需求,有助于提高用户的使用体验。10.结合第一方面,在第一方面的第一实施例中,所述配置剧本还包括中心集群环境,所述方法还包括:11.若所述当前主机不满足所述部署条件,则通过所述配置剧本将所述当前主机加入至中心集群中,以部署所述中心集群环境。12.在该方式中,通过配置剧本部署集群环境时,可以根据配置剧本包括的部署边缘集群环境的部署条件,确定主机清单中加入边缘集群或者中心集群的主机,进而对加入至边缘集群或者中心集群中的主机进行针对性选择,以使得到的边缘集群环境和/或中心集群环境中的主机能够满足用户需求,从而提高用户使用体验。13.结合第一方面或者第一方面的第一实施例,在第一方面的第二实施例中,所述通过所述配置剧本将所述当前主机加入至边缘集群中,包括:14.读取所述配置剧本,确定用于部署所述边缘集群环境的目标角色;15.根据角色与任务之间的对应关系,确定所述目标角色对应的目标任务;16.通过执行所述目标任务,将所述当前主机加入至所述边缘集群。17.结合第一方面的第二实施例,在第一方面的第三实施例中,所述通过执行所述目标任务,将所述当前主机加入至所述边缘集群,包括:18.获取所述当前主机的目标端口;19.通过所述目标端口与所述当前主机建立连接,以便远程登录所述当前主机;20.通过在所述当前主机上执行所述目标任务,将所述当前主机加入至所述边缘集群。21.结合第一方面的第三实施例,在第一方面的第四实施例中,所述获取所述当前主机的目标端口,包括:22.读取所述配置剧本中模板的配置文件;23.根据所述配置文件中包括的主机与端口之间的对应关系,获取所述当前主机的目标端口。24.结合第一方面的第四实施例,在第一方面的第五实施例中,所述主机与端口之间的对应关系采用下述方式进行确定,包括:25.在所述模板中,通过主机变量参数提取每一个主机的主机ip;26.为每一个主机ip配置对应的端口,建立所述主机与端口之间的对应关系。27.结合第一方面的第五实施例,在第一方面的第六实施例中,所述主机变量参数包括循环计数内置变量;所述通过主机变量参数提取每一个主机的主机ip包括:28.通过所述循环计数内置变量,遍历所述多个主机的主机ip,提取每一个主机的主机ip。29.根据第二方面,本发明还提供一种集群部署装置,所述装置包括:30.第一获取单元,用于获取用于部署集群环境的配置剧本,所述配置剧本包括部署边缘集群环境的部署条件;31.第二获取单元,用于获取主机清单,所述主机清单包括待部署集群环境的多个主机;32.部署单元,用于若所述主机清单中的当前主机满足所述部署条件,则通过所述配置剧本将所述当前主机加入至边缘集群中,以部署所述边缘集群环境。33.结合第二方面,在第二方面的第一实施例中,所述配置剧本还包括中心集群环境,所述装置还包括:34.中心集群部署单元,用于若所述当前主机不满足所述部署条件,则通过所述配置剧本将所述当前主机加入至中心集群中,以部署所述中心集群环境。35.结合第二方面或者第二方面的第一实施例,在第二方面的第二实施例中,所述部署单元,包括:36.第一确定单元,用于读取所述配置剧本,确定用于部署所述边缘集群环境的目标角色;37.第二确定单元,用于根据角色与任务之间的对应关系,确定所述目标角色对应的目标任务;38.部署子单元,用于通过执行所述目标任务,将所述当前主机加入至所述边缘集群。39.结合第二方面的第二实施例,在第二方面的第三实施例中,所述部署子单元,包括:40.端口获取单元,用于获取所述当前主机的目标端口;41.连接单元,用于通过所述目标端口与所述当前主机建立连接,以便远程登录所述当前主机;42.控制单元,用于通过在所述当前主机上执行所述目标任务,将所述当前主机加入至所述边缘集群。43.结合第二方面的第三实施例,在第二方面的第四实施例中,所述端口获取单元,包括:44.读取单元,用于读取所述配置剧本中模板的配置文件;45.端口获取子单元,用于根据所述配置文件中包括的主机与端口之间的对应关系,获取所述当前主机的目标端口。46.结合第二方面的第四实施例,在第二方面的第五实施例中,所述主机与端口之间的对应关系采用下述单元进行确定,包括:47.提取单元,用于在所述模板中,通过主机变量参数提取每一个主机的主机ip;48.配置单元,用于为每一个主机ip配置对应的端口,建立所述主机与端口之间的对应关系。49.结合第二方面的第五实施例,在第二方面的第六实施例中,所述主机变量参数包括循环计数内置变量;所述提取单元,包括:50.提取子单元,用于通过所述循环计数内置变量,遍历所述多个主机的主机ip,提取每一个主机的主机ip。51.根据第三方面,本发明实施方式还提供一种计算机设备,包括存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行第一方面及其可选实施方式中任一项的集群部署方法。52.根据第四方面,本发明实施方式还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行第一方面及其可选实施方式中任一项的集群部署方法。附图说明53.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。54.图1是根据一示例性实施例提出的一种集群部署方法的流程图。55.图2是根据一示例性实施例提出的另一种集群部署方法的流程图。56.图3是根据一示例性实施例提出的又一种集群部署方法的流程图。57.图4是根据一示例性实施例提出的一种集群部署装置的结构框图。58.图5是根据一示例性实施例提出的一种计算机设备的硬件结构示意图。具体实施方式59.下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。60.相关技术中,针对生产级别的集群部署,是基于kubespary(一种用于部署生产级别的kubernetes服务器集群的开源项目)进行创建。但由于kubespary在部署集群环境时,采用一键部署的方式进行通用部署,无法根据用户的实际需求进行针对性的部署,进而无法满足用户的个性化需求。61.为解决上述问题,本发明实施例中提供一种集群部署方法,用于计算机设备中,需要说明的是,其执行主体可以是集群部署装置,该装置可以通过软件、硬件或者软硬件结合的方式实现成为计算机设备的部分或者全部,其中,该计算机设备可以是终端或客户端或服务器,服务器可以是一台服务器,也可以为由多台服务器组成的服务器集群,本技术实施例中的终端可以是智能手机、个人电脑、平板电脑、可穿戴设备以及智能机器人等其他智能硬件设备。下述方法实施例中,均以执行主体是计算机设备为例来进行说明。62.本实施例的计算机设备,可以用于管理集群部署的设备,在该计算机设备中,包括用于部署集群环境的容器管理平台。通过本发明所提供的集群部署方法,预先在部署集群环境的配置剧本中设置部署边缘集群环境的部署条件,以便通过该部署条件确定是否部署边缘集群,进而当确定存在满足部署条件的主机时,则将该主机加入至边缘集群中,部署边缘集群环境,从而使边缘集群的部署更具有针对性,有助于提高用户的使用体验。63.图1是根据一示例性实施例提出的一种集群部署方法的流程图。如图1所示,集群部署方法包括如下步骤s101至步骤s103。64.在步骤s101中,获取用于部署集群环境的配置剧本。65.在本发明实施例中,配置剧本(playbook)是一种能够实现集群环境快速部署的配置文件。在该配置文件中,包括用于部署边缘集群环境的部署条件,其中,该部署条件用于判定是否创建边缘集群。66.在步骤s102中,获取主机清单。67.在本发明实施例中,主机清单包括待部署集群环境的多个主机。其中,主机清单可以手动设置,也可以通过动态库存(dynamicinventory)获取主机清单,即,通过调用外部脚本从第三方库存中获取多个主机的主机信息,进而动态生成主机清单。主机清单的获取过程,在本发明中不进行限定。68.在步骤s103中,若主机清单中的当前主机满足部署条件,则通过配置剧本将当前主机加入至边缘集群中,以部署边缘集群环境。69.在本发明实施例中,部署条件可以理解为是用于限定是否部署边缘集群环境的条件。通过部署条件,可以明确用户部署边缘集群的需求,进而在部署集群环境时,便可以对边缘集群进行针对性的部署。70.在集群部署的过程中,若主机清单中的当前主机满足部署条件,则表征当前主机满足用户部署边缘集群的需求,进而通过配置剧本部署集群环境时,可以部署边缘集群环境,并将当前主机加入至边缘集群中,以使当前主机成为边缘集群中的其中一个节点,进而实现边缘集群环境的部署。71.通过上述实施例,预先在部署集群环境的配置剧本中添加部署边缘集群环境的部署条件,以便通过该部署条件确定是否部署边缘集群,进而当主机清单中存在满足部署条件的主机时,则将该主机加入至边缘集群中,使其成为边缘集群中的节点,进而实现边缘集群的针对性部署,从而使边缘集群环境的部署更具有针对性,能够满足用户的需求,有助于提高用户的使用体验。72.图2是根据一示例性实施例提出的另一种集群部署方法的流程图。如图2所示,集群部署方法包括如下步骤。73.在步骤s201中,获取用于部署集群环境的配置剧本。74.在步骤s202中,获取主机清单。75.在步骤s203中,若主机清单中的当前主机满足部署条件,则通过配置剧本将当前主机加入至边缘集群中,以部署边缘集群环境。76.在步骤s204中,若当前主机不满足部署条件,则通过配置剧本将当前主机加入至中心集群中,以部署边缘集群环境。77.在本发明实施例中,若当前主机不满足部署条件,则表征当前主机不能满足用户部署边缘集群的需求,进而通过配置剧本部署集群环境时,则部署中心集群环境,并将当前主机加入至中心集群中,以使当前主机成为中心集群中的其中一个节点,进而实现中心集群环境的部署。78.通过上述实施例,通过配置剧本部署集群环境时,可以根据配置剧本包括的部署边缘集群环境的部署条件,确定主机清单中加入边缘集群或者中心集群的主机,进而对加入至边缘集群或者中心集群中的主机进行针对性选择,以使得到的边缘集群环境和/或中心集群环境中的主机能够满足用户需求,从而提高用户使用体验。79.以下实施例将说明通过配置剧本将当前主机加入至边缘集群中的过程。80.配置剧本是一种能够实现集群环境快速部署的配置文件。通过读取剧本,能够确定用于部署边缘环境集群的目标角色(roles)。其中,部署边缘集群环境的部署条件是位于目标角色中。根据角色与任务之间的对应关系,确定目标角色对应的目标任务,进而执行该目标任务,以便将当前主机加入至边缘集群。在一实施场景中,配置剧本可以理解为是一种利用yaml标记语言编写的配置文件。在当前主机中部署边缘集群环境时,通过该配置剧本最外层的yaml文件顺序读取该配置剧本中用于部署边缘集群环境的目标角色,进而根据角色与任务之间的对应关系,确定目标角色对应的目标任务,从而根据目标任务进行执行。例如:将用于判定是否部署边缘集群环境的目标角色预置于集群环境的元数据(meta)内,并为该目标角色配置相应的标签(tag),在后续对不同层面的边缘集群环境部署渲染过程中,可以直接利用标签提取相应的目标角色,进而根据角色与任务之间的对应关系,确定目标角色对应的目标任务,从而提高边缘集群环境的部署效率。81.在一实施例中,为将当前主机加入至边缘集群,则获取当前主机的目标端口,以便通过该目标端口与当前主机建立连接,进而与当前主机建立连接后,远程登录该当前主机,以控制目标任务在当前主机上进行执行,对主机进行相关配置,从而将当前主机加入至边缘集群,实现对边缘集群环境的部署。82.在另一实施例中,配置剧本中模板的配置文件内包括目标端口。其中,模板(templates)是用于确定边缘集群环境部署时的服务格式。在边缘集群环境部署的过程中,可以根据配置文件中主机与端口之间的对应关系,快速获取当前主机的目标端口,进而实现目标端口的自动化获取,从而提高部署效率。83.在一示例中,配置文件中主机与端口之间的对应关系可以采用下述方式进行确定:预先在模板(templates)中,创建.j2格式的配置文件,在该配置文件中,通过主机变量参数(hostvar)在多个主机组中,提取主机清单中各主机的主机ip,进而针对每一个主机ip,配置其对应的端口,以便明确访问各主机的访问端口,从而完成主机与端口之间的对应关系的建立,以便后续能够根据主机与端口之间的对应关系,实现对目标主机的快速访问。在一例中,可以通过预先编写的脚本控制主机变量参数(hostvar)自动提取主机清单中各主机的主机ip。84.在另一示例中,主机变量参数包括循环计数内置变量(loop.index0),在提取每一个主机的主机ip时,是通过循环计数内置变量,遍历多个主机的主机ip,根据各主机在其对应主机组中的索引顺序,从0开始,提取每一个主机的主机ip,以便明确各主机的安全访问(iptables)配置,进而后续登录主机时,便可以根据该主机的ip,执行适用于该主机的iptables命令(访问控制命令),从而实现集群环境的快速部署。在一例中,可以通过预先编写的脚本控制循环计数内置变量自动提取主机清单中各主机的主机ip。85.在一实施场景中,ansible是一个开源配置管理工具,可以用于执行自动化任务,部署应用程序实现互联网技术(it)的基础架构。并且,ansible也可以用于执行自动化日常任务,例如:服务器的初始化配置、安全基线配置、更新和打补丁系统,安装软件包等。因此,在进行集群部署时,可以基于ansible,实现集群的快速创建。86.为便于ansible在部署集群时,能够根据用户的需求部署边缘集群或者中心集群,则预先在ansible中添加包括部署边缘集群环境的部署条件的配置剧本,进而ansible在部署集群时,便可以在主机清单中针对性的选择加入边缘集群或者中心集群的主机,从而实现集群的个性化部署,满足用户需求的同时,提高用户的使用体验。87.进一步地,由于当前主机是否加入边缘集群,取决于配置剧本中部署边缘集群环境的部署条件,并且,ansible部署集群时,是采用自动化部署的方式进行部署。因此,采用ansible采用本发明所提供的集群部署方法部署集群时,便可以实现集群的批量部署,能够满足企业级的部署需求。88.在另一实施场景中,部署集群的过程可以如图3所示。图3是根据一示例性实施例提出的又一种集群部署方法的流程图。89.在步骤s301中,配置部署集群环境的yaml文件,并在yaml文件中配置用于部署边缘集群的目标角色。90.在本发明实施例中,目标角色中包括是否部署边缘集群环境的部署条件。91.在步骤s302中,确定目标角色对应的目标任务,并基于目标任务创建用于部署集群环境的配置剧本。92.在步骤s303中,在ansible的全局变量文件中配置部署边缘集群的部署开关。93.在本发明实施例中,在全局变量文件中,包括主机清单中各主机的主机ip与端口之间的对应关系。部署开关用于控制边缘集群的部署。94.在步骤s304中,判断部署开关是否处于开启状态。95.在步骤s305中,若部署开关处于开启状态,则在部署集群环境时,部署中心集群和/或边缘集群。96.在本发明实施例中,若部署开关处于开启状态,则表征在部署集群环境时,可以部署边缘集群。若主机清单中的主机满足部署边缘集群环境的部署条件,则在部署集群环境时,将该主机加入边缘集群中。若主机清单中的主机不满足部署边缘集群环境的部署条件,则在部署集群环境时,将该主机加入中心集群。97.在步骤s306中,若部署开关处于闭合状态,则在部署集群环境时,部署中心集群。98.通过上述实施例,能够利用ansible,通过相关配置文件的修改,进而提高集群部署效率,实现k8s集群的大规模部署的同时,满足用户个性化需求。99.并且,k8s是一种容器全生命周期管理集群,能够安全可靠高效的利用容器,并且在大规模生产中也可以安全的使用容器,具有高可用,节点数多的特点,进而可以做到多副本安全使用,空间设置较大,从而面对大规模的集群部署时,也可以做到游刃有余。100.基于相同发明构思,本发明还提供一种集群部署装置。101.图4是根据一示例性实施例提出的一种集群部署装置的结构框图。如图4所示,集群部署装置包括第一获取单元401、第二获取单元402和部署单元403。102.第一获取单元401,用于获取用于部署集群环境的配置剧本,配置剧本包括部署边缘集群环境的部署条件。103.第二获取单元402,用于获取主机清单,主机清单包括待部署集群环境的多个主机。104.部署单元403,用于若主机清单中的当前主机满足部署条件,则通过配置剧本将当前主机加入至边缘集群中,以部署边缘集群环境。105.在一实施例中,配置剧本还包括中心集群环境,装置还包括:中心集群部署单元,用于若当前主机不满足部署条件,则通过配置剧本将当前主机加入至中心集群中,以部署边缘集群环境。106.在另一实施例中,部署单元403,包括:第一确定单元,用于读取配置剧本,确定用于部署边缘集群环境的目标角色。第二确定单元,用于根据角色与任务之间的对应关系,确定目标角色对应的目标任务。部署子单元,用于通过执行目标任务,将当前主机加入至边缘集群。107.在又一实施例中,部署子单元,包括:端口获取单元,用于获取当前主机的目标端口。连接单元,用于通过目标端口与当前主机建立连接,以便远程登录当前主机。控制单元,用于通过在当前主机上执行目标任务,将当前主机加入至边缘集群。108.在又一实施例中,端口获取单元,包括:读取单元,用于读取配置剧本中模板的配置文件。端口获取子单元,用于根据配置文件中包括的主机与端口之间的对应关系,获取当前主机的目标端口。109.在又一实施例中,主机与端口之间的对应关系采用下述单元进行确定,包括:提取单元,用于在模板中,通过主机变量参数提取每一个主机的主机ip。配置单元,用于为每一个主机ip配置对应的端口,建立主机与端口之间的对应关系。110.在又一实施例中,主机变量参数包括循环计数内置变量;提取单元,包括:提取子单元,用于通过循环计数内置变量,遍历多个主机的主机ip,提取每一个主机的主机ip。111.上述集群部署装置的具体限定以及有益效果可以参见上文中对于集群部署方法的限定,在此不再赘述。上述各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。112.图5是根据一示例性实施例提出的一种计算机设备的硬件结构示意图。如图5所示,该设备包括一个或多个处理器510以及存储器520,存储器520包括持久内存、易失内存和硬盘,图5中以一个处理器510为例。该设备还可以包括:输入装置530和输出装置540。113.处理器510、存储器520、输入装置530和输出装置540可以通过总线或者其他方式连接,图5中以通过总线连接为例。114.处理器510可以为中央处理器(centralprocessingunit,cpu)。处理器510还可以为其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。115.存储器520作为一种非暂态计算机可读存储介质,包括持久内存、易失内存和硬盘,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本技术实施例中的业务管理方法对应的程序指令/模块。处理器510通过运行存储在存储器520中的非暂态软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述任意一种集群部署方法。116.存储器520可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据、需要使用的数据等。此外,存储器520可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器520可选包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至数据处理装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。117.输入装置530可接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键信号输入。输出装置540可包括显示屏等显示设备。118.一个或者多个模块存储在存储器520中,当被一个或者多个处理器510执行时,执行如图1-图3所示的方法。119.上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,具体可参见如图1-图3所示的实施例中的相关描述。120.本发明实施例还提供了一种非暂态计算机存储介质,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的认证方法。其中,存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)、随机存储记忆体(randomaccessmemory,ram)、快闪存储器(flashmemory)、硬盘(harddiskdrive,缩写:hdd)或固态硬盘(solid-statedrive,ssd)等;存储介质还可以包括上述种类的存储器的组合。121.显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献