CN111371579B - 云平台部署方法、装置、服务器及存储介质 - Google Patents
云平台部署方法、装置、服务器及存储介质 Download PDFInfo
- Publication number
- CN111371579B CN111371579B CN201811599579.2A CN201811599579A CN111371579B CN 111371579 B CN111371579 B CN 111371579B CN 201811599579 A CN201811599579 A CN 201811599579A CN 111371579 B CN111371579 B CN 111371579B
- Authority
- CN
- China
- Prior art keywords
- role
- control node
- migrated
- roles
- deployment
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0876—Aspects of the degree of configuration automation
- H04L41/0886—Fully automatic configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
- H04L41/122—Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5048—Automatic or semi-automatic definitions, e.g. definition templates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/0816—Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
- H04L41/0897—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities by horizontal or vertical scaling of resources, or by migrating entities, e.g. virtual resources or entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5054—Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开一种云平台部署方法、装置、服务器及存储介质,该方法包括:获取部署指令;根据所述部署指令,以及设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点。其中角色属性包括节点类型属性和/或角色聚合属性,便于直接根据角色所支持的节点类型完成角色到目标控制节点组的自动部署,或根据角色的角色聚合属性完成角色的迁移和聚合,可以简化云平台的部署难度和复杂度,提高云平台的部署灵活性。
Description
技术领域
本发明涉及对云计算集群技术,尤其涉及一种云平台部署方法、装置、服务器及存储介质。
背景技术
云计算集群环境,也称云平台的部署,通常是指将云计算管理系统的相关服务、组件在服务器上完成安装、激活的过程。
相关技术中,上述安装过程通常是面向云计算管理系统整体,也即将整个云计算管理系统的管理服务作为一个整体来完成部署安装,如此,部署复杂度较高,且部署完成后扩展和改配难度大,从而灵活性较差,难以满足云计算管理系统的性能扩展需求。
发明内容
为解决现有存在的技术问题,本发明实施例提供一种易于快速部署、且灵活性高的云平台部署方法,装置、服务器及存储介质。
为达到上述目的,本发明实施例的技术方案是这样实现的:
一种云平台部署方法,包括:获取部署指令;根据所述部署指令,以及设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点。
一种云平台部署装置,包括:获取模块,用于获取部署指令;部署模块,用于根据所述部署指令,以及设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点。
一种服务器,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,所述处理器用于运行所述计算机程序时,执行本申请实施例所述的云平台部署方法。
一种存储介质,所述存储介质中存储有可执行指令,所述可执行指令被处理器执行时实现本申请实施例所述的云平台部署方法。
上述实施例所提供的云平台部署方法、装置、服务器及存储介质,根据设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点,其中,通过设置角色属性包括节点类型属性和/或角色聚合属性,基于节点类型属性可以确定相应角色所支持的节点类型,和/或基于角色聚合属性可以确定相应角色关联的子角色,如此,便于直接根据角色所支持的节点类型完成角色到目标控制节点的自动部署,或者便于根据角色的角色聚合属性完成角色的迁移和聚合,从而可以简化云平台的部署难度和复杂度,提高部署灵活性。
附图说明
图1为本申请一实施例中云平台的物理组网环境的示意图;
图2为本申请一实施例中云平台部署方法的流程示意图;
图3为本申请一实施例中预定义角色的示意图;
图4为本申请一实施例中云平台部署方法中将角色部署至控制节点的示意图;
图5为本申请一实施例中云平台部署方法中角色迁移的示意图;
图6为本申请另一实施例中云平台部署方法的流程示意图;
图7为本申请又一实施例中云平台部署方法的流程示意图;
图8为本申请一实施例中云平台部署装置的结构示意图;
图9为本申请一实施例中服务器的结构示意图。
具体实施方式
以下结合说明书附图及具体实施例对本发明技术方案做进一步的详细阐述。除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
在以下的描述中,涉及到“一些实施例”的表述,其描述了所有可能实施例的子集,但是应当理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
对本发明进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1)、云平台(Cloud platform),也称为云计算管理系统,是指通过构建基础设施即服务(Iaas)、平台即服务(Paas)和软件即服务(SaaS)来实现全服务周期的一站式服务,形成多层级、全方位的云计算管理系统。其中,基础设施即服务是指用户通过网络可以从完善的计算机基础设施获得服务;平台即服务是指将软件研发的平台作为一种服务,以SaaS的模式提交给用户;软件即服务是指通过网络提供软件的模式,用户无需购买软件,而可以向提供商租用基于Web的软件来管理上云企业的经营活动。
2)、角色,是指基于云计算管理系统包含的相关服务、组件进行的分组定义,如可以将一个特定的服务组合定义为特定的角色,每一角色可以用于表征一组服务的抽象。
3)、高可用性集群(High Availability,HA)服务运行模式,是指一般有两个或两个以上的节点,且分为主用节点及备用节点。通常把正在执行业务的称为主用节点,而作为主用节点的一个备份的则称为备用节点。当主用节点出现问题,导致正在运行的业务(任务)不能正常运行时,备用节点此时就会侦测到,并立即接续主用节点来执行业务,从而实现业务的连续性。
4)、负载均衡集群(Load Balance,LB)服务运行模式,是指基于分发服务器(Director Server)实现共享存储的集群架构,当用户的请求过来时,会直接发送到Director Server上,通过Director Server把用户的请求根据预先设置好的算法,智能均衡地分发到后端的真正服务器(real server)上,通过共享存储资源,以保证所有用户请求的数据是一样的。
相关技术中,云平台部署过程中,相关服务、组件在服务器上安装过程通常是面向云计算管理系统整体,以OpenStack云计算管理系统部署为例,通常的安装过程包括如下步骤:
S1,基础硬件配置,包括服务器BIOS(Basic Input/Output System,服务器的引导及配置工具)配置、网络及存储设备基础配置;
S2,安装服务器的操作系统(OS),并完成OS基础配置;
S3,在控制节点主机上安装控制节点相关的软件及服务;
S4,如果是双控或三控环境,逐一完成各服务器的软件安装;
S5,完成相关服务的HA(High Availability,高可用)、LB(Load Balance,负载均衡)配置及OpenStack云计算管理系统业务相关配置;
S6,在计算节点主机上安装计算相关服务,计算节点和控制节点可以合一部署,即计算相关服务可以在控制节点部署;
S7,随着控制节点管理的计算节点规模逐步增加,需要在原有双控或三控环境上增加控制节点,将部分服务迁移到新的控制节点上,通过增加控制节点数量的方式扩展云计算管理系统的服务规模。
上述部署过程是将整个云计算管理系统的管理服务作为一个整体来完成部署安装,这种方式导致的后果是安装后的扩展和改配难度大,无法支持大规模部署场景。
为了解决上述问题,本申请发明人在研究中发现,可以在部署云计算管理系统时对控制节点、计算节点上运行的服务做一定的划分,比如以OpenStack为例,将在控制节点上运行的服务定义为控制角色,将一些公共服务比如镜像管理、认证管理、数据库、消息服务器等分别定义为相应服务角色,如此可以灵活控制云计算管理服务在服务器上的落地和运行,同时,在控制节点扩容的场景下,也支持有限的扩展能力,比如将不同角色分布在不同的服务器上,以增加云管理系统的处理能力。然而,在大规模云计算管理系统部署时,由于涉及的控制节点数量比较多,该部署方案仍然会存在以下几点问题:
第一、将控制节点的主要服务定义为一个控制角色,在大规模场景下控制角色中出现有瓶颈的服务时无法灵活的调整服务部署;目前业界通常的解决方案是将这类服务独立出来在部署工具中预定义为单独角色,这种方式会导致角色过多,部署方案复杂;
第二、在大规模云环境场景下,控制节点数量普遍达到或超过6台,目前业界通常的操作方式是将角色拖动到控制节点主机上或在角色下选择对应落地的控制节点主机,无论是哪种方式,操作的重复动作都比较多,导致部署复杂度增加。
基于此,本申请通过基于角色的角色属性中增加节点类型属性和/或角色聚合属性,根据角色属性将待部署角色对应部署到目标控制节点,根据角色属性中节点类型属性进行部署,便于直接根据角色所支持的节点类型完成角色到目标控制节点的自动部署,而根据角色属性中角色聚合属性进行部署,便于根据角色的角色聚合属性完成角色的迁移和聚合,均可以简化云平台的部署难度和复杂度,提高部署灵活性。其次,可以预先定义包含多个控制节点的控制节点组,角色的部署按照控制节点组操作,可以确保服务在所运行节点上配置的一致性,可以简化云平台的部署难度和复杂度,且支持不同控制节点组中控制节点主机数量不同的场景,提高部署灵活性。
请参阅图1,为本申请一实施例所提供的云平台的物理组网环境的结构示意图,包括部署节点(Deployment Node)、控制节点(Control Node)、计算节点(Compute Node)以及存储资源(Storage Resource)。其中,所述部署节点可以包括一个或者多个物理服务器(Deployment Node1),用于实现本申请实施例所提供的云平台部署方法。所述控制节点可以包括一个或者多个控制节点组,如Control Group1、Control Group2、...Control GroupN,每一控制节点组包括一个或者多个控制节点主机,用于运行特定的服务组合。所述部署节点和所述控制节点可以合并,也即,所述部署节点用于实现的本申请实施例所提供的云平台部署方法可以作为一种服务由所述控制节点执行。所述计算节点用于提供虚拟资源,可以将虚拟资源进行分组并对应包括多个计算节点,如Computer Node 1、Computer Node2、...Computer Node M。所述存储资源包括一个或多个物理存储设备(Storage),用于为所述控制节点、计算节点的运行提供对应的存储资源。
请参阅图2,为本申请一实施例提供的云平台部署方法的流程示意图,可应用于如图1所示云平台中的部署节点或控制节点,该方法包括如下步骤:
步骤101,获取部署指令;
这里,部署指令是指触发云平台部署的相关指令,所述云平台部署可以包括角色部署、服务激活、扩容部署等一个或者多个部署阶段,相应的部署指令可以包括用于触发执行角色部署的相关指令、用于触发执行服务激活的相关指令、用于触发执行扩容部署的相关指令。
所述部署指令可以是基于软件应用界面接收到的一个或者多个人机交互操作而获取到的,其中对于获取部署指令的人机交互操作的形式并不限制。以部署指令为触发执行角色部署的相关指令为例,可以是通过软件应用界面提供的角色部署虚拟按键,通过接收到针对所述角色部署虚拟按键的触控操作而获取到所述部署指令;以部署指令为触发执行服务激活的相关指令为例,可以是通过软件应用界面提供的参数配置窗口接收符合设定要求的参数的输入操作、并通过软件应用界面提供的服务激活虚拟按键接收到对应的触控操作而获取到所述部署指令;或者,以部署指令为触发执行扩容部署的相关指令为例,可以是通过软件应用界面提供的角色迁移虚拟按键接收对应的触控操作、并通过软件应用界面提供的角色列表接收到对待迁移角色的选定操作而获取到所述部署指令。
步骤103,根据所述部署指令,以及设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点。
这里,角色是指基于云计算管理系统包含的相关服务、组件进行的分组定义,如可以将一个特定的服务组合定义为特定的角色,每一角色可以用于表征一组服务的抽象。属性是指对一个对象的抽象方面的描述,是对象的性质与对象之间关系的统称。角色属性是指对角色的抽象方面的描述,用于表征角色的性质与角色之间的关系。其中,节点类型属性用于表征角色对应所支持的节点类型,如控制节点和/或计算节点。角色聚合属性用于表征角色为聚合角色或者非聚合角色,其中同一聚合角色可以包括多个指定的子角色,通过定义聚合角色可以简化角色列表的配置,以简化部署复杂度。
本申请上述实施例中,根据设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点,其中,通过设置角色属性包括节点类型属性和/或角色聚合属性,基于节点类型属性可以确定相应角色所支持的节点类型,和/或,基于角色聚合属性可以确定相应角色关联的子角色,如此,便于直接根据角色所支持的节点类型完成角色到目标控制节点的自动部署,或者根据角色的角色聚合属性完成角色的迁移和聚合,简化云平台的部署难度和复杂度,提高部署灵活性。
在一些实施例中,将待部署角色部署到控制节点时可以是按照控制节点组操作,所述将待部署角色对应部署到目标控制节点,包括:
将待部署角色对应部署到目标控制节点组;其中,所述目标控制节点组包括多个控制节点。
这里,控制节点组是指将控制节点按组定义,每一控制节点组包括指定数量的控制节点主机。通过将待部署角色对应部署到目标控制节点组,使得角色的操作均可以基于控制节点组而不是单个控制节点,以保证同一控制节点组内所有控制节点的服务配置相同,降低配置错误概率,减少配置操作次数。
本申请上述实施例中,角色的部署是按照控制节点组操作,可以确保服务在所运行节点上配置的一致性,从而可以简化云平台的部署难度和复杂度,且支持不同控制节点组中控制节点主机数量不同的场景,提高部署灵活性。
请参阅图3,为本申请一实施例提供的角色的示意图,以OpenStack云平台为例,基于特定的服务组合定义角色,可以包括如下角色:
1)Identity,鉴权认证服务
2)Image,镜像管理服务
3)network_L2,以太网L2服务
4)network_L3,以太网L3服务
5)RabbitMQ,消息服务
6)MariaDB,数据库管理系统服务
7)MangoDB,NoSQL的数据库服务
8)Controller,控制节点服务,其中该角色为聚合角色,包括如下子角色:
8.1)Controller_nova,用于为单个用户或使用群组管理虚拟机实例的整个生命周期,根据用户需求来提供虚拟服务。可以用于负责虚拟机创建、开机、关机、挂起、暂停、调整、迁移、重启、销毁等操作,配置CPU、内存等信息规格。
8.2)Controller_cinder,为运行实例提供稳定的数据块存储服务,它的插件驱动架构有利于块设备的创建和管理,如创建卷、删除卷,在实例上挂载和卸载卷。
8.3)Controller_neutron,提供云计算的网络虚拟化技术,为OpenStack其他服务提供网络连接服务。为用户提供接口,可以定义网络(Network)、子网络(Subnet)、路由器(Router),配置动态主机设置协议(DHCP)、域名系统(DNS)、负载均衡、以太网(L3)服务,网络支持通用路由封装协议(GRE)、虚拟局域网(VLAN)。
8.4)Controller_ironic,部署物理机跟部署虚拟机都是nova通过创建虚拟机的方式来触发,只是底层调度器(nova-scheduler)和守护进程(nova-compute)的驱动不一样。其中,虚拟机的底层驱动采用的虚拟化管理平台应用程序接口(libvirt)的虚拟化技术,而物理机是采用Ironic技术,Ironic可以看成一组中间软件层应用程序接口(Hypervisor API)的集合,其功能与libvirt类似。
8.5)Controller_heat,提供了一种通过模板定义的协同部署方式,实现云基础设施软件运行环境(计算、存储和网络资源)的自动化部署。
8.6)Controller_backup,提供数据备份服务。
8.7)Controller_telemetry,远程的从物理设备或虚拟设备上高速采集数据的技术。设备通过推模式(Push Mode)主动向采集器上送设备数据信息,提供更实时更高速的数据采集功能。
8.8)Other Controller Roles and Services,其它控制角色集服务,为示例,其它服务不一一列举。
9)Other Common Roles and Services,其它公共服务,为示例,其它服务不一一列举。
请参阅图4,为本申请一实施例提供的角色部署至控制节点的示意图,仍以OpenStack云平台为例,基于特定的服务组合定义角色Service Roles,所述角色ServiceRoles包括Identity、Image、network_L2、network_L3、RabbitMQ、MariaDB、MangoDB、Controller、Other Common Roles and Services,定义控制节点组Controller Group 1包括多个控制节点,如Controller Node 1、Controller Node 2、Controller Node 3,将所述角色Service Roles统一一次部署到该目标控制节点组Controller Group 1内,保证该目标控制节点组Controller Group 1内所有控制节点Controller Node 1、Controller Node2和Controller Node 3的服务配置相同,降低配置错误概率和减少配置操作次数。
在一些实施例中,所述根据所述部署指令,以及所述角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点,包括:
在所述角色属性包括节点类型属性的情况下,根据所述节点类型属性确定待部署角色所支持的节点类型为控制节点时,将所述待部署角色对应部署到所述目标控制节点。
节点类型属性是指角色支持的节点类型,如控制节点和/或计算节点。控制节点的标识信息是指用于唯一表征控制节点身份的相关信息,如控制节点的编号、地址、名称地址等。这里,所述部署指令可以是指携带有目标控制节点的标识信息的角色配置参数,用户可以通过输入控制节点的标识信息,根据节点类型属性确定角色所支持的节点类型为控制节点时,可以自动将相应角色部署到目标控制节点。其中,根据角色所支持的节点类型将待部署角色对应部署到目标控制节点时,也可以是按控制节点组进行操作,所述获取部署指令为获取目标控制节点组的标识信息,在云平台部署时,用户可以预先定义包含多个控制节点的控制节点组并予以标识,通过输入待进行部署的控制节点组的标识信息作为目标控制节点组,以将指定的角色统一一次部署到该目标控制节点组内。其中,所述指定的角色可以根据角色属性中的节点类型属性确定,根据节点类型属性确定角色所支持的节点类型为控制节点时,可以自动将相应角色部署到目标控制节点组。
请再次参阅图4,仍以OpenStack云平台为例,用户可以预先定义控制节点组Controller Group 1,并预先定义角色Service Roles中所有角色的角色属性中的节点类型属性支持的节点类型为控制节点,在云平台部署时,用户可以通过输入控制节点组Controller Group 1对应的标识信息而获取到部署指令;或者当目标控制节点组唯一确定的前提下通过触发部署按键而获取到部署指令,触发将角色Service Roles中所有角色自动部署到该控制节点组,不需要用户的复杂配置,从而提升部署效率和易用性。
在一些实施例中,所述将所述待部署角色对应部署到所述目标控制节点之前,包括:
根据所述角色属性中的依赖属性确定相应角色对应的依赖角色及资源,生成角色依赖关系数据;
根据所述角色依赖关系数据,获取携带有依赖角色及资源的标识信息的角色配置参数;
所述将所述待部署角色对应部署到所述目标控制节点之后,包括:
根据所述角色依赖关系数据确定部署时序,按照所述部署时序根据所述角色配置参数对所述角色进行激活。
依赖属性是指角色对应的依赖角色及资源。某一角色的部署可能需要依赖其它角色如组件、服务,或者依赖其它资源如数据库,将所需要依赖的其它角色或其它资源通过依赖属性表征,用于在部署节点生成角色依赖关系数据,以形成完整的部署时序。其中,角色依赖关系数据可以是列表形式,对应形成为角色依赖关系列表;或者也可以是树图形式,对应形成为角色依赖关系树。依赖角色及资源的标识信息是指用于唯一表征对应的角色及资源身份的信息,如表征角色的身份信息可以是服务器地址、表征资源身份的信息可以是数据库标识等。通过根据角色属性中的依赖属性生成角色依赖关系数据,在云平台部署时,根据角色的依赖属性定义确定该角色对应的依赖角色及资源,在将待部署角色部署到目标控制节点之前,可以基于人机交互方式相应获取符合该依赖角色及资源定义的角色配置参数,如,根据相应依赖属性定义获取数据库、消息服务器的标识信息的角色配置参数。其中,获取角色配置参数可以通过人机交互的方式获取,如,可以是通过软件应用界面提供的参数配置窗口接收符合该依赖角色及资源定义的角色配置参数;或者,也可以是通过软件应用界面提供的参数选择列表页面接收对页面中显示的依赖角色及资源的选定的角色配置参数等。
所述角色依赖关系数据用于表征角色部署时所需依赖的角色及资源的依赖关系。所述根据所述角色依赖关系数据确定部署时序,按照所述部署时序根据所述角色配置参数对所述角色进行激活,可以包括:根据角色依赖关系数据中每一角色所需依赖的角色及资源的依赖关系,确定各角色的部署时序并形成角色依赖树,通过遍历所述角色依赖树,依次对所述角色调用角色激活接口进行激活。如,角色A的依赖属性定义该角色A对应的依赖角色为角色B,也即角色A的部署需要依赖角色B先完成部署,从而根据角色A的依赖属性所形成的角色依赖关系数据可以确定角色B的部署时序应先于角色A,依次类推,可以形成所有角色的完整的部署时序。
本申请实施例中,通过根据角色属性中的依赖属性定义,相应获取符合所述依赖属性定义的依赖角色及资源的标识信息的角色配置参数,便于将待部署角色拖动到目标控制节点或者目标控制节点组后,如,根据角色的节点类型属性将相应角色自动拖动到目标控制节点组后,根据所述角色依赖关系数据所确定的部署时序,按照所述部署时序并根据对应的角色配置参数调用角色的激活应用程序接口(API)进行角色激活,完成将所述待部署角色对应部署到目标控制节点。
在一些实施例中,所述将所述待部署角色对应部署到所述目标控制节点之前,还包括:
获取携带有浮动互联网协议地址IP的地址信息作为所述待部署角色的角色配置参数。
依赖角色及资源的标识信息,即浮动IP,是指公开的、可以路由到的IP地址,并且不会自动分配给实体设备。通常,实体设备可以有自动分配的静态IP用于内部网间设备的通讯,这个内部网使用私有地址,这些私有地址不能被路由到,通过浮动IP使得内部网实体设备的服务才能被外网识别和访问。通过浮动IP的设置,可以实现内部网的实体设备之间无延迟替换并对外提供服务。其中,获取浮动IP地址的角色配置参数可以通过人机交互的方式获取,如,可以是通过软件应用界面提供的参数配置窗口接收输入的浮动IP地址的角色配置参数;或者,也可以是通过软件应用界面提供的参数选择列表页面接收对浮动IP地址的选定的角色配置参数等。
需要说明的是,在云平台部署时,可以首先包括角色部署阶段,也即基于角色的节点类型属性将角色拖动到目标控制节点或控制节点组,再进一步包括服务激活阶段,也即通过人机交互的方式获取配置参数,以适应于不同的个性化角色而形成符合角色要求的参数列表。本实施例中,配置参数包括为待部署角色配置的对应的依赖角色及资源的标识信息、以及为所述待部署角色配置的对应的IP的地址信息,以便于基于所述配置参数对角色进行激活后满足各角色的不同性能需求。其中,通过人机交互的方式获取到相应的配置参数可以视为获取到执行服务激活的部署指令,从而实现将待部署角色拖动到目标控制节点或者目标控制节点组后遍历所述角色依赖关系数据,调用角色对应的激活应用程序接口(Application Programming Interface,API)并基于上述参数列表进行角色激活,完成将所述待部署角色对应部署到目标控制节点或者目标控制节点组。
在一些实施例中,所述按照所述部署时序根据所述角色配置参数对所述角色进行激活,包括:
按照所述部署时序,根据所述角色配置参数以及所述角色属性中的角色操作属性调用对应的角色激活接口,对所述角色进行激活。
角色操作属性是指角色对应的一组角色操作方法,包括激活、迁移、去激活等API接口及其相应数据参数定义。通过定义角色操作属性,便于根据角色属性相应执行角色的指定操作,实现快速部署。在云平台部署时,通过将待部署角色拖动到目标控制节点或者目标控制节点组后,通过人机交互的方式获取符合角色要求的配置参数,根据角色属性生成角色依赖关系数据以确定部署时序,并遍历该角色依赖关系数据以根据所述部署时序调用角色对应的激活API并基于相应的参数列表传递参数进行角色激活,完成将所述待部署角色对应部署到目标控制节点或者目标控制节点组。
在一些实施例中,将待部署角色对应部署到控制节点时是按照控制节点组操作,所述将待部署角色对应部署到目标控制节点组之前,包括:
获取控制节点主机的选取指令;
根据所述选取指令将对应的所述控制节点主机形成控制节点组。
这里,每一控制节点组可以相应包括指定数量的控制节点主机。获取控制节点主机的选取指令,可以是通过软件应用界面提供的参数输入窗口接收输入的控制节点主机标识,而相应获取到控制节点主机的选取指令;或者,也可以是通过软件应用界面提供的控制节点主机列表页面,接收对页面中显示的控制节点主机的选取操作而相应获取到的控制节点主机的选取指令。根据控制节点主机的选取指令而相应定义控制节点组。
请参阅图5,为本申请一实施例提供的控制节点扩容场景下角色迁移的示意图,其中控制节点组包括分别包含不同控制节点主机的控制节点组Controller Group 1和控制节点组Controller Group 2。控制节点组Controller Group 1包括控制节点ControllerNode 1、Controller Node 2和Controller Node 3,控制节点组Controller Group 2包括控制节点Controller Node 4、Controller Node 5和Controller Node 6。在云平台部署时,可以通过选取控制节点Controller Node 1、Controller Node 2和Controller Node 3定义形成控制节点组Controller Group 1,通过选取控制节点Controller Node 4、Controller Node 5和Controller Node 6定义形成控制节点组Controller Group 2,可以基于控制节点组按组进行部署操作,支持不同控制节点组中包含不同主机数量不同的场景,在服务分布式部署时简化部署复杂度。
在一些实施例中,所述获取部署指令包括:获取携带有待迁移角色的标识信息的角色迁移指令;
所述根据所述部署指令、以及设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点,包括:
在所述角色属性包括角色聚合属性的情况下,基于所述角色迁移指令,根据设所述角色聚合属性确定所述待迁移角色为聚合角色且所述待迁移角色为部分迁移;
展开所述待迁移角色关联的子角色列表信息,基于所述子角色列表信息选定待迁移子角色迁移到目标控制节点。
角色聚合属性是指表征角色为包括多个子角色的聚合角色或者为非聚合角色。通过增加角色聚合属性,可以将具有特定关联的多个角色进行关联定义形成聚合角色,其中,聚合角色内包括的多个角色相应称为子角色。待迁移角色的标识信息是指能够唯一表征待迁移角色身份的相关信息。这里,所述部署指令是指携带有待迁移角色的标识信息的角色迁移指令。通过根据所述角色迁移指令,确定对应的待迁移角色为聚合角色时,展开待迁移角色关联的子角色列表信息,通过获取对子角色列表信息的选定指令而将相应的待迁移子角色迁移到目标控制节点,相应实现针对聚合角色的部分迁移。
所述获取携带有待迁移角色的标识信息的角色迁移指令,可以包括但不限于如下几种方式:第一,通过软件应用界面提供的角色列表页面,接收对角色列表页面中显示的待迁移角色的选定并拖动操作而获取到的携带有所述待迁移角色的标识信息的角色迁移指令;第二、通过软件应用界面提供的角色信息窗口,接收输入的待迁移角色的标识信息并确认操作而获取到的携带有所述待迁移角色的标识信息的角色迁移指令;第三、通过软件应用界面提供的与各角色对应的角色迁移虚拟按键,接收对所述角色迁移虚拟按键的触控操作,而获取到的携带有对应的所述待迁移角色的标识信息的角色迁移指令;第四,通过软件应用界面提供的角色迁移虚拟按键,接收角色迁移的触发指令,并基于角色列表页面接收待迁移角色的选定操作或基于角色信息窗口接收输入的待迁移角色的标识信息,从而获取到的携带有对应的所述待迁移角色的标识信息的角色迁移指令。
本申请实施例中,角色属性中增加角色聚合属性,以支持多角色聚合形成聚合角色,而相应支持针对聚合有多个角色的聚合角色执行迁移部署操作,在云平台部署时,可以针对聚合角色整体部署,从而实现对聚合角色包含的子角色整体一次部署,也可以根据不同实际需求展开聚合角色所关联的子角色,针对部分子角色进行选定和部署。如此,通过支持角色聚合并采用聚合角色实现整体或者部分迁移,不仅能够满足不同需求的部署目的,而且可以减少部署操作,实现灵活的服务迁移和扩展,简化部署复杂度和提升部署效率。
其中,根据角色聚合属性将待迁移角色迁移到目标控制节点时,也可以是按控制节点组进行操作,所述根据所述选定指令将所述待迁移子角色迁移到目标控制节点,可以是根据所述选定指令将所述待迁移子角色迁移到目标控制节点组。
请再次参阅图5,仍以OpenStack云平台为例,在云平台部署时,可以支持在控制节点扩展场景下针对聚合角色Controller进行部分迁移。首先,根据控制节点ControllerNode 1、Controller Node 2和Controller Node 3定义形成控制节点组Controller Group1。初次部署完成后,比如基于各角色的角色属性中的节点类型属性进行自动部署完成后,控制节点组Controller Group 1中各控制节点Controller Node 1、Controller Node 2和Controller Node 3分别部署有相同的角色Service Roles,角色Service Roles包括如下子角色:Identity、Image、network_L2、network_L3、RabbitMQ、MariaDB、MangoDB、Controller、Other Common Roles and Services。出于扩容的需求,新加入控制节点Controller Node 4、Controller Node 5和Controller Node 6并定义形成新的控制节点组Controller Group 2。通过获取携带有聚合角色Controller的角色迁移指令,展开聚合角色Controller关联的子列表信息,基于所述子列表信息获取对待迁移子角色Controller_nova、Controller_cinder、Controller_neutron、Controller_ironic的选定指令,并根据所述选定指令将待迁移子角色Controller_nova、Controller_cinder、Controller_neutron、Controller_ironic迁移到目标控制节点组Controller Group 2,实现针对聚合角色Controller的部分迁移。
在一些实施例中,所述根据子角色列表信息选定待迁移子角色迁移到所述目标控制节点之后,包括:
在所述待迁移子角色所在原控制节点调用对应的角色去激活接口,对所述待迁移子角色进行去激活;
在所述目标控制节点调用对应的角色激活接口,对所述待迁移子角色进行激活。
去激活是指终止激活状态的操作。在云平台部署时,针对角色进行迁移的方案中,将对应的待迁移子角色拖动到对应的目标控制节点后,还包括对迁移后的角色根据角色聚合属性进行重新聚合,对聚合角色进行更新。将对应的待迁移子角色拖动到对应的目标控制节点后,还包括在待迁移角色所在原控制节点进行去激活、以及在所述待迁移角色迁移后的目标控制节点进行激活。其中选定待迁移子角色迁移到目标控制节点的迁移操作,所述迁移操作将生成并携带相应迁移参数,所述迁移参数包括所述待迁移子角色所在原控制节点的标识信息和迁移至的目标控制节点的标识信息,可以根据所述迁移参数,相应在所述待迁移子角色所在原控制节点调用对应的角色去激活接口(Application ProgrammingInterface,API),对所述待迁移子角色进行去激活;然后在所述目标控制节点调用对应的角色激活接口,对所述待迁移子角色进行激活,从而完成角色迁移。
其中,根据角色聚合属性将待迁移子角色迁移到目标控制节点时,也可以是按控制节点组进行操作。相应的,将对应的待迁移子角色拖动到对应的目标控制节点组后,对待迁移子角色的去激活和激活操作也是按控制节点组进行操作,具体包括:在待迁移子角色所在原控制节点组进行去激活、以及在所述待迁移子角色迁移后的目标控制节点组进行激活。相应迁移操作对应的迁移参数包括所述待迁移子角色所在原控制节点组的标识信息和迁移至的目标控制节点组的标识信息。
在一些实施例中,所述根据所述部署指令、以及设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点,还包括:
在所述角色属性包括角色聚合属性的情况下,根据所述角色聚合属性确定所述待迁移角色为非聚合角色;或者,根据所述角色聚合属性确定所述待迁移角色为聚合角色且所述待迁移角色为整体迁移;
将所述待迁移角色对应迁移到目标控制节点。
角色聚合属性是指表征角色为包括多个子角色的聚合角色或者为非聚合角色。通过增加角色聚合属性,可以将具有特定关联的多个角色进行关联定义形成聚合角色,其中,聚合角色内包括的多个角色相应称为子角色。通过根据所述角色迁移指令,确定对应的待迁移角色为非聚合角色时,则将所述待迁移角色对应迁移到目标控制节点。或者,通过根据所述角色迁移指令,确定对应的待迁移角色为聚合角色且所述待迁移角色为整体迁移时,则将所述待迁移角色对应迁移到目标控制节点。
其中,根据角色聚合属性将待迁移角色迁移到目标控制节点时,也可以是按控制节点组进行操作。也即,将所述待迁移角色对应迁移到目标控制节点可以是将所述待迁移角色对应迁移到目标控制节点组。
请再次参阅图5,仍以OpenStack云平台为例,在云平台部署时,可以支持在控制节点扩展场景下针对非聚合角色network_L2、network_L3进行按控制节点组迁移。云平台初次部署时,首先根据控制节点Controller Node 1、Controller Node 2和Controller Node3定义形成控制节点组Controller Group 1。初次部署完成后,比如基于各角色的角色属性中的节点类型属性进行自动部署完成后,控制节点组Controller Group 1中各控制节点Controller Node 1、Controller Node2和Controller Node 3分别部署有相同的角色Service Roles,角色Service Roles包括如下子角色:Identity、Image、network_L2、network_L3、RabbitMQ、MariaDB、MangoDB、Controller、Other Common Roles andServices。出于扩容的需求,新加入控制节点Controller Node 4、Controller Node 5和Controller Node 6并定义形成新的控制节点组Controller Group 2。通过获取携带有非聚合角色network_L2、network_L3的角色迁移指令,将所述非聚合角色network_L2、network_L3迁移到目标控制节点组Controller Group 2,实现针对非聚合角色network_L2、network_L3的直接迁移。需要说明的是,针对聚合角色的整体迁移与所述非聚合角色的迁移方式相同,通过获取携带有聚合角色Controller的整体迁移的角色迁移指令,将所述聚合角色Controller迁移到目标控制节点组Controller Group 2,实现针对聚合角色Controller的直接整体迁移。
本申请实施例中,在云平台部署时,根据角色迁移指令确定当前待进行迁移的角色为待迁移角色,判断所述待迁移角色为非聚合角色时,将所述待迁移角色迁移到对应的目标控制节点或目标控制节点组;判断所述待迁移角色为聚合角色时,则进一步判断待迁移角色为整体迁移或者部分迁移,当所述待迁移角色为整体迁移时,则将所述迁移角色迁移到对应的目标控制节点或目标控制节点组;当待迁移角色为部分迁移时,则展开所述聚合角色中包含的子角色列表信息,基于所述子角色列表信息获取对子角色的选定指令,并根据选定指令将子角色迁移到对应的目标控制节点或目标控制节点组。如此,通过在角色属性中增加角色聚合属性支持云平台部署时角色的定义和操作,在大规模场景下支持聚合角色展开从而实现灵活的角色部署,在其它场景应用也支持采用聚合角色整体部署,简化角色定义的复杂度,提升部署效率。
在一些实施例中,所述将所述待迁移角色对应迁移到目标控制节点之后,包括:
在所述待迁移角色所在原控制节点调用对应的角色去激活接口,对所述待迁移角色进行去激活;
在所述目标控制节点调用对应的角色激活接口,对所述待迁移角色进行激活。
去激活是指终止激活状态的操作。在云平台部署时,针对角色进行迁移的方案中,将对应的待迁移角色拖动到对应的目标控制节点后,还包括对迁移后的角色进行重新聚合。其中,对应的待迁移角色可以是指聚合角色整体、非聚合角色或子角色。将对应的待迁移角色拖动到对应的目标控制节点后,还包括在待迁移角色所在的原控制节点进行去激活操作、以及在所述待迁移角色迁移后的目标控制节点进行激活操作。其中,将所述待迁移角色对应迁移到目标控制节点的迁移操作完成后,所述迁移操作对应的待迁移角色将携带相应迁移参数,所述迁移参数包括所述待迁移角色所在原控制节点的标识信息和迁移至的目标控制节点的标识信息,将所述待迁移角色对应迁移到目标控制节点后,可以根据所述迁移参数相应在所述待迁移角色所在原控制节点调用对应的角色去激活接口,对所述待迁移角色进行去激活;并在所述目标控制节点调用对应的角色激活接口,对所述待迁移角色进行激活,从而完成角色迁移。
其中,根据角色聚合属性将待迁移角色迁移到目标控制节点时,也可以是按控制节点组进行操作。相应的,将对应的待迁移角色拖动到对应的目标控制节点组后,对待迁移角色的去激活和激活操作也是按控制节点组进行操作,具体包括:在待迁移角色所在原控制节点组进行去激活、以及在所述待迁移角色迁移后的目标控制节点组进行激活。相应迁移操作对应的迁移参数包括:所述待迁移角色所在原控制节点组的标识信息和迁移至的目标控制节点组的标识信息。
在一些实施例中,所述方法还包括:预先定义云平台中的角色及所述角色对应的角色属性,所述角色属性包括如下至少其中一种:节点类型属性、角色聚合属性。其中,所述角色属性包括身份属性、依赖属性、服务属性、节点类型属性、角色聚合属性和角色操作属性。
角色是指基于云计算管理系统包含的相关服务、组件进行的分组定义,如可以将一个特定的服务组合定义为特定的角色,每一角色可以用于表征一组服务的抽象。角色属性是指对角色的抽象方面的描述,用于表征角色的性质与角色之间的关系。节点类型属性是指角色支持的节点类型,如控制节点和/或计算节点。角色聚合属性是指用于表征角色为聚合角色或者非聚合角色,其中同一聚合角色可以包括多个指定的关联子角色。身份属性是指用于表征角色身份的相关信息,如角色名称及描述信息。依赖属性是指用于表征角色对应的依赖角色及资源,如表征相应角色部署所需要依赖的其它角色的标识信息或其它资源的标识信息。服务属性是指角色所包含的服务列表及服务运行模式,其中服务运行模式主要包括高可用性集群(High Availability,HA)服务运行模式或负载均衡集群(LoadBalance,LB)服务运行模式。角色操作属性是指用于表征角色对应的一组角色操作方法,包括激活、迁移、去激活等API接口及其相应数据参数定义。
本申请实施例中,通过定义角色及角色属性,其中角色属性包括节点类型属性,基于节点类型属性可以确定相应角色所支持的节点类型,便于直接根据角色所支持的节点类型完成角色到目标控制节点或者目标控制节点组的自动部署;角色属性包括角色聚合属性,基于角色聚合属性可以确定相应角色关联的子角色,便于根据角色的角色聚合属性完成聚合角色的整体迁移或部分迁移、以及迁移后的重新聚合;角色属性包括角色操作属性,基于角色操作属性可以确定角色对应的一组操作方法,如激活、迁移、去激活操作方法,确定相应执行所述操作方法所需API接口及相应参数定义。在云平台部署时,针对不同场景下部分角色存在瓶颈时,可以扩容控制节点,并基于角色属性确定角色类型并按相应方法迁移角色,针对非聚合角色,可以直接从原控制节点组迁移至目标控制节点组;针对聚合角色,如果是整体迁移,则可以直接从原控制节点组迁移至目标控制节点组;如果是部分迁移,则展开聚合角色,将需要迁移的角色迁移至目标控制节点组,迁移后再原控制节点组和目标控制节点组根据角色的角色聚合属性重新聚合。
为了能够对本申请实施例所提供的云平台部署方法的实现流程能够进一步具体的了解,下面分别结合典型场景下的云平台部署方法以及控制节点扩容场景下云平台部署方法进行举例性说明,请参阅图6,云平台部署方法包括如下步骤:
步骤S61,预定义控制节点组;其中,可以选择控制节点主机,如根据环境实际情况选择1~3台服务器定义为云平台控制节点组Controller Group 1。
步骤S62,预定义角色和角色属性;其中,可以根据云平台中组件、服务进行分组定义,将特定的服务组合分别相应定义为角色。以OpenStack云平台为例,请再次参阅图3,定义角色Service Roles可以包括:Identity、Image、network_L2、network_L3、RabbitMQ、MariaDB、MangoDB、Controller、Other Common Roles and Services。其中,Controller为聚合角色,对应关联的子角色包括:Controller_nova、Controller_cinder、Controller_neutron、Controller_ironic、Controller_heat、Controller_backup、Controller_telemetry、Other Controller Roles and Services。
步骤S63,根据角色的节点类型属性将对应角色自动拖动到目标控制节点组;其中,可以基于部署指令执行所述根据角色的节点类型属性将对应角色自动拖动到目标控制节点组的操作。部署指令可以是指基于软件应用界面提供的部署虚拟按键,通过人机交互接收到的针对部署虚拟按键的触控操作而获取到的部署指令;或者,也可以是指基于软件应用界面提供的输入窗口接收输入的目标控制节点组的标识信息并确认而获取到的部署指令。以OpenStack云平台为例,请再次参阅图4,根据控制节点组的定义以及角色定义,角色Service Roles中所有角色的节点类型属性均包括支持控制节点,将角色Service Roles中所有角色自动部署到控制节点组Controller Group 1。
步骤S64,根据角色属性中依赖属性生成角色依赖关系列表,扫描全部角色的依赖资源生成依赖关系树;其中,依赖关系树是指以角色、资源等为节点并通过节点之前的连线表征节点之间依赖关系所形成的树图。通过形成依赖关系树,便于后续根据依赖关系树遍历执行角色激活操作,形成完整部署时序关系。
步骤S65,获取角色配置参数,所述角色配置参数包括但不限于:目标控制节点组的标识信息、对应的依赖角色及资源的标识信息以及浮动IP的地址信息;其中,目标控制节点组的标识信息可以是指对应待部署角色落地的主机组及主机列表。对应的依赖角色及资源的标识信息可以是指对应待部署角色的依赖属性定义中所需要的依赖角色和依赖资源,如数据库、消息服务器对应的配置信息。这里,通过人机交互方式获取角色配置参数,可以将获取到对应的角色配置参数作为在云平台部署过程中执行角色激活操作的部署指令。
步骤S66,调用角色激活接口激活角色;其中,根据待部署角色对应的角色属性,调用对应的角色激活接口,并传递上述角色配置参数,遍历依赖关系树完成角色激活。
上述实施例所提供的云平台部署方法,主要适用于典型场景下的云平台的服务部署过程,通过角色属性中增加节点类型属性,根据节点类型属性直接将对应角色拖动到控制节点组,基于角色节点类型属性实现统一部署,可以提升部署效率和易用性;且所有角色的操作均基于控制节点组进行,可以保证控制节点组内所有的主机的角色配置相同,简化部署复杂度。
控制节点扩容场景下云平台部署方法主要包括在控制节点扩容场景下角色迁移方案,可以是基于已初始部署完成的云平台架构,如采用图6所示的云平台部署方法初始部署完成的云平台架构上基于控制节点扩容需求下执行,请参阅图7,云平台部署方法如下步骤:
步骤S71,定义新的控制节点组Controller Group 2;其中,可以是选择新加入的节点定义新的控制节点组,因所有角色的操作均基于控制节点组,选择新加入节点完成控制节点组定义,以为后续角色操作做好准备。
步骤S72,判断待迁移角色是否为聚合角色,若是,则执行步骤S73,若否,则执行步骤S76;这里,待迁移角色可以理解为是角色迁移方案中的待部署角色。其中,待迁移角色的确定可以根据不同的角色迁移指令而触发,如,可以是基于角色列表页面直接选定待迁移角色并拖动操作,基于所述选定和拖动操作而获取到携带有该待迁移角色的标识信息的角色迁移指令;可以是基于角色迁移按键的触控操作获取到迁移指令,并基于该迁移指令接收待迁移角色的选定操作或者接收输入的待迁移角色的标识信息,从而相应获取到携带有待迁移角色的标识信息的角色迁移指令;可以是基于角色列表页面接收待迁移角色的选定操作以及角色迁移按键的触控操作,从而获取到携带有待迁移角色的标识信息的角色迁移指令。
步骤S73,拖动待迁移角色到目标控制节点组,相应生成迁移参数;其中,迁移参数包括待迁移角色所在原控制节点组及主机列表、以及待迁移角色迁移至目标控制节点组及主机列表。
步骤S74,在待迁移角色的原控制节点组调用对应的去激活接口,对所述待迁移角色执行去激活操作;
步骤S75,在待迁移角色的目标控制节点组内调用对应的激活接口,对所述待迁移角色执行激活操作;
步骤S76,确定待迁移角色为聚合角色时,判断待迁移角色为整体迁移或者部分迁移,如果是整体迁移,则返回执行步骤S73,如果是部分迁移,则执行步骤S77;
步骤S77,展开聚合角色关联的子角色列表信息;
步骤S78,拖动待迁移子角色至目标控制节点组,相应生成迁移参数;其中,迁移参数包括待迁移子角色所在原控制节点组及主机列表、以及待迁移子角色迁移至目标控制节点组及主机列表。
步骤S79,在待迁移子角色的原控制节点组调用对应的去激活接口,对所述待迁移角色执行去激活操作;
步骤S710,在待迁移子角色的目标控制节点组内调用对应的激活接口,对所述待迁移角色执行激活操作。
上述实施例所提供的云平台部署方法,主要适用于控制节点扩容场景下云平台的服务部署过程中角色迁移方案,通过角色属性中增加角色聚合属性,在大规模场景下支持聚合角色展开从而实现灵活的角色部署,在典型场景应用时采用聚合角色部署而降低角色配置复杂度;同时,将控制节点分组管理,所有角色的操作均基于控制节点组进行,保证同一控制节点组内所有主机的角色配置相同,简化环境部署复杂度,提升易用性。
请参阅图8,本申请实施例另一方面提供一种云平台部署装置,包括获取模块11,用于获取部署指令;部署模块13,用于根据所述部署指令,以及设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点。
其中,所述部署模块13,具体用于在所述角色属性包括节点类型属性的情况下,根据所述节点类型属性确定待部署角色所支持的节点类型为控制节点时,将所述待部署角色对应部署到所述目标控制节点。
其中,所述部署模块13,还用于根据所述角色属性中的依赖属性确定相应角色对应的依赖角色及资源,生成角色依赖关系数据;所述获取模块11,还用于根据所述角色依赖关系数据,获取携带有依赖角色及资源的标识信息的角色配置参数;所述装置还包括激活模块15,所述激活模块15用于根据所述角色依赖关系数据确定部署时序,按照所述部署时序根据所述角色配置参数对所述角色进行激活。
其中,所述获取模块11,具体用于获取携带有待迁移角色的标识信息的角色迁移指令;所述部署模块13,具体用于在所述角色属性包括角色聚合属性的情况下,基于所述角色迁移指令,根据所述角色聚合属性确定所述待迁移角色为聚合角色且所述待迁移角色为部分迁移;展开所述待迁移角色关联的子角色列表信息,基于所述子角色列表信息选定待迁移子角色迁移到目标控制节点。
其中,所述装置还包括去激活模块16和激活模块15,所述去激活模块16用于在所述待迁移子角色所在原控制节点调用对应的角色去激活接口,对所述待迁移子角色进行去激活;所述激活模块15,用于在所述目标控制节点调用对应的角色激活接口,对所述待迁移子角色进行激活。
其中,所述部署模块13,还用于在所述角色属性包括角色聚合属性的情况下,根据所述角色聚合属性确定所述待迁移角色为非聚合角色;或者,根据所述角色聚合属性确定所述待迁移角色为聚合角色且所述待迁移角色为整体迁移;将所述待迁移角色对应迁移到目标控制节点。
其中,所述装置还包括去激活模块16和激活模块15,所述去激活模块16,用于在所述待迁移角色所在原控制节点调用对应的角色去激活接口,对所述待迁移子角色进行去激活;所述激活模块15,用于在所述目标控制节点调用对应的角色激活接口,对所述待迁移角色进行激活。
其中,所述部署模块13,具体用于将待部署角色对应部署到目标控制节点组;其中,所述目标控制节点组包括多个控制节点。
其中,所述装置还包括节点定义模块10,用于获取控制节点主机的选取指令;根据所述选取指令将对应的所述控制节点主机形成控制节点组。
其中,所述装置还包括角色定义模块12,用于预先定义云平台中的角色及所述角色对应的角色属性,所述角色属性包括如下至少其中一种:节点类型属性、角色聚合属性。
上述实施例提供的云平台部署装置在进行云平台部署时,仅以上述各程序模块的划分进行举例说明,在实际应用中,可以根据需要而将上述步骤分配由不同的程序模块完成,即可以将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的云平台部署装置与云平台部署方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本发明实施例另一方面还提供一种服务器,该服务器可以归属于云平台中的部署节点或控制节点,请参阅图9,该服务器包括处理器201以及用于存储能够在处理器201上运行的计算机程序的存储介质202,其中,所述处理器201用于运行所述计算机程序时,执行本申请任一实施例所提供的云平台部署方法的步骤。这里,处理器201和存储介质202并非指代对应的数量为一个,而是可以为一个或者多个。其中,该服务器还包括内存203、网络接口204以及将处理器201、内存203、网络接口204及存储介质202连接的系统总线205。存储介质202中存储有操作系统和用于实现本发明实施例所提供的云平台部署方法的云平台部署装置,该处理器201用于提高计算和控制能力,支撑整个服务器的运行。该内存203用于为存储介质202中的内存缓存管理方法的运行提供环境,网络接口204用于其它节点进行网络通信。
本发明实施例还提供了一种计算机存储介质,例如包括存储有计算机程序的存储器,该计算机程序可以由处理器执行,以完成本发明任一实施例所提供的云平台部署方法的步骤。该计算机存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、Flash Memory、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。本发明的保护范围应以所述权利要求的保护范围以准。
Claims (12)
1.一种云平台部署方法,其特征在于,包括:
获取部署指令;
根据所述部署指令,以及设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点,所述角色是指基于云平台包含的相关服务、组件进行的分组定义;
所述将待部署角色对应部署到目标控制节点,包括:
将待部署角色对应部署到目标控制节点组;其中,所述目标控制节点组包括多个控制节点。
2.如权利要求1所述的方法,其特征在于,所述根据所述部署指令,以及所述角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点,包括:
在所述角色属性包括节点类型属性的情况下,根据所述节点类型属性确定待部署角色所支持的节点类型为控制节点时,将所述待部署角色对应部署到所述目标控制节点。
3.如权利要求2所述的方法,其特征在于,所述将所述待部署角色对应部署到所述目标控制节点之前,包括:
根据所述角色属性中的依赖属性确定相应角色对应的依赖角色及资源,生成角色依赖关系数据;
根据所述角色依赖关系数据,获取携带有依赖角色及资源的标识信息的角色配置参数;
所述将所述待部署角色对应部署到所述目标控制节点之后,包括:
根据所述角色依赖关系数据确定部署时序,按照所述部署时序根据所述角色配置参数对所述角色进行激活。
4.如权利要求1所述的方法,其特征在于,所述获取部署指令包括:
获取携带有待迁移角色的标识信息的角色迁移指令;
所述根据所述部署指令、以及设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点,包括:
在所述角色属性包括角色聚合属性的情况下,基于所述角色迁移指令,根据所述角色聚合属性确定所述待迁移角色为聚合角色且所述待迁移角色为部分迁移;
展开所述待迁移角色关联的子角色列表信息,基于所述子角色列表信息选定待迁移子角色迁移到目标控制节点。
5.如权利要求4所述的方法,其特征在于,所述根据所述子角色列表信息选定待迁移子角色迁移到目标控制节点之后,包括:
在所述待迁移子角色所在原控制节点调用对应的角色去激活接口,对所述待迁移子角色进行去激活;
在所述目标控制节点调用对应的角色激活接口,对所述待迁移子角色进行激活。
6.如权利要求4所述的方法,其特征在于,所述根据所述部署指令、以及设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点,还包括:
在所述角色属性包括角色聚合属性的情况下,根据所述角色聚合属性确定所述待迁移角色为非聚合角色;或者,根据所述角色聚合属性确定所述待迁移角色为聚合角色且所述待迁移角色为整体迁移;
将所述待迁移角色对应迁移到目标控制节点。
7.如权利要求6所述的方法,其特征在于,所述将所述待迁移角色对应迁移到目标控制节点之后,包括:
在所述待迁移角色所在原控制节点调用对应的角色去激活接口,对所述待迁移角色进行去激活;
在所述目标控制节点调用对应的角色激活接口,对所述待迁移角色进行激活。
8.如权利要求7所述的方法,其特征在于,所述将待部署角色对应部署到目标控制节点组之前,包括:
获取控制节点主机的选取指令;
根据所述选取指令将对应的所述控制节点主机形成控制节点组。
9.如权利要求1至7中任一项所述的方法,其特征在于,还包括:
预先定义云平台中的角色及所述角色对应的角色属性,所述角色属性包括如下至少其中一种:节点类型属性、角色聚合属性。
10.一种云平台部署装置,其特征在于,包括:
获取模块,用于获取部署指令;
部署模块,用于根据所述部署指令,以及设置角色的角色属性中的节点类型属性和/或角色聚合属性,将待部署角色对应部署到目标控制节点。
11.一种服务器,其特征在于,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,所述处理器用于运行所述计算机程序时,执行权利要求1至9中任一项所述云平台部署方法。
12.一种存储介质,其特征在于,所述存储介质中存储有可执行指令,所述可执行指令被处理器执行时实现权利要求1至9中任一项所述云平台部署方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811599579.2A CN111371579B (zh) | 2018-12-26 | 2018-12-26 | 云平台部署方法、装置、服务器及存储介质 |
PCT/CN2019/126679 WO2020135228A1 (zh) | 2018-12-26 | 2019-12-19 | 云平台部署方法、装置、服务器及存储介质 |
EP19902781.4A EP3905588A4 (en) | 2018-12-26 | 2019-12-19 | METHOD AND DEVICE FOR DEPLOYING A CLOUD PLATFORM, SERVER AND STORAGE MEDIUM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811599579.2A CN111371579B (zh) | 2018-12-26 | 2018-12-26 | 云平台部署方法、装置、服务器及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111371579A CN111371579A (zh) | 2020-07-03 |
CN111371579B true CN111371579B (zh) | 2023-04-07 |
Family
ID=71129142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811599579.2A Active CN111371579B (zh) | 2018-12-26 | 2018-12-26 | 云平台部署方法、装置、服务器及存储介质 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP3905588A4 (zh) |
CN (1) | CN111371579B (zh) |
WO (1) | WO2020135228A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114006815B (zh) * | 2020-07-13 | 2024-01-26 | 中移(苏州)软件技术有限公司 | 云平台节点的自动化部署方法、装置、节点及存储介质 |
CN112783668B (zh) * | 2020-12-30 | 2023-09-01 | 宁波智能成型技术创新中心有限公司 | 基于RabbitMQ的海量智能制造设备的数据采集处理方法 |
CN113407197B (zh) * | 2021-05-21 | 2024-05-07 | 北京达佳互联信息技术有限公司 | 服务部署方法、装置、电子设备以及存储介质 |
CN113900809A (zh) * | 2021-10-09 | 2022-01-07 | 江苏安超云软件有限公司 | 云计算管理平台实施复杂度评估的方法及应用 |
CN114089721A (zh) * | 2021-11-17 | 2022-02-25 | 东方红卫星移动通信有限公司 | 基于云平台的控制系统构建方法及控制系统 |
CN114116066B (zh) * | 2021-11-30 | 2024-05-07 | 湖南麒麟信安科技股份有限公司 | 一种云平台集群控制方法、系统及存储介质 |
CN114244836B (zh) * | 2021-12-17 | 2023-12-05 | 杭州视洞科技有限公司 | 一种混合云场景中服务器批量管理方法 |
CN115225628A (zh) * | 2022-06-23 | 2022-10-21 | 中国电子科技集团公司第十五研究所 | 基于轻量容器云环境下的预热式镜像加载方法 |
CN115225635A (zh) * | 2022-06-30 | 2022-10-21 | 浪潮云信息技术股份公司 | 一种多云纳管方法及装置 |
CN115314381B (zh) * | 2022-10-11 | 2023-03-24 | 统信软件技术有限公司 | 一种自动部署方法、装置与计算设备 |
CN117270888B (zh) * | 2023-11-24 | 2024-04-16 | 之江实验室 | 一种云端应用部署方法、系统、装置及计算机设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109067877A (zh) * | 2018-08-03 | 2018-12-21 | 平安科技(深圳)有限公司 | 一种云计算平台部署的控制方法、服务器及存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103346974B (zh) * | 2013-06-03 | 2015-04-08 | 华为技术有限公司 | 一种业务流程的控制方法及网络设备 |
CN104679608A (zh) * | 2015-02-09 | 2015-06-03 | 广州杰赛科技股份有限公司 | 一种基础设施虚拟化平台构建方法及其镜像管理结构 |
US9954949B2 (en) * | 2015-04-30 | 2018-04-24 | Hewlett Packard Enterprise Development Lp | Cloud images |
CN106878334A (zh) * | 2015-05-13 | 2017-06-20 | 西安三星电子研究有限公司 | 云的自动化部署系统和方法 |
CN105100267B (zh) * | 2015-08-24 | 2018-12-14 | 用友网络科技股份有限公司 | 大企业私有云的部署装置和方法 |
CN106506636A (zh) * | 2016-11-04 | 2017-03-15 | 武汉噢易云计算股份有限公司 | 一种基于OpenStack的云平台集群方法及系统 |
US10338981B2 (en) * | 2016-12-06 | 2019-07-02 | Vmware, Inc | Systems and methods to facilitate infrastructure installation checks and corrections in a distributed environment |
US10454977B2 (en) * | 2017-02-14 | 2019-10-22 | At&T Intellectual Property I, L.P. | Systems and methods for allocating and managing resources in an internet of things environment using location based focus of attention |
CN108134690B (zh) * | 2017-12-13 | 2021-07-27 | 中盈优创资讯科技有限公司 | 网络业务部署流程控制方法、装置及系统 |
-
2018
- 2018-12-26 CN CN201811599579.2A patent/CN111371579B/zh active Active
-
2019
- 2019-12-19 EP EP19902781.4A patent/EP3905588A4/en active Pending
- 2019-12-19 WO PCT/CN2019/126679 patent/WO2020135228A1/zh unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109067877A (zh) * | 2018-08-03 | 2018-12-21 | 平安科技(深圳)有限公司 | 一种云计算平台部署的控制方法、服务器及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111371579A (zh) | 2020-07-03 |
EP3905588A4 (en) | 2022-01-19 |
WO2020135228A1 (zh) | 2020-07-02 |
EP3905588A1 (en) | 2021-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111371579B (zh) | 云平台部署方法、装置、服务器及存储介质 | |
CN109194506B (zh) | 区块链网络部署方法、平台及计算机存储介质 | |
US10944621B2 (en) | Orchestrator for a virtual network platform as a service (VNPAAS) | |
US10303450B2 (en) | Systems and methods for a policy-driven orchestration of deployment of distributed applications | |
US9246765B2 (en) | Apparatus and methods for auto-discovery and migration of virtual cloud infrastructure | |
WO2018024059A1 (zh) | 一种虚拟化网络中业务部署的方法和装置 | |
US9596302B2 (en) | Migrating applications between networks | |
CN108255497B (zh) | 一种应用的部署方法及装置 | |
CN111782232A (zh) | 集群的部署方法、装置、终端设备及存储介质 | |
CN102567075B (zh) | 一种云计算环境中虚拟机上下文设置方法 | |
JP2021518018A (ja) | 関数チェックポイントを使用したサービスハブのための関数移植性 | |
US11496414B2 (en) | Interoperable cloud based media processing using dynamic network interface | |
US10142346B2 (en) | Extension of a private cloud end-point group to a public cloud | |
WO2012069064A1 (en) | Technique for resource creation in a cloud computing system | |
US11221866B2 (en) | Accelerator loading method, system, and apparatus | |
WO2017185303A1 (zh) | 一种nfv mano策略描述符的管理方法及装置 | |
CN109144485B (zh) | 一种微服务的部署方法、装置、设备及可读存储介质 | |
EP3442201B1 (en) | Cloud platform construction method and cloud platform | |
US11416267B2 (en) | Dynamic hardware accelerator selection and loading based on acceleration requirements | |
CN104781783A (zh) | 在现有计算环境中部署的集成计算平台 | |
CN106663023A (zh) | 对云应用中的虚拟机进行分组 | |
CN115604120B (zh) | 一种多云集群资源共享方法、装置、设备及存储介质 | |
US11650859B2 (en) | Cloud environment configuration based on task parallelization | |
US11095532B2 (en) | Configuration and/or deployment of a service based on location information and network performance indicators of network devices that are to be used to support the service | |
US11050794B2 (en) | Generating security policies for end-user devices using group rankings and partial policy determinations |
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 |