CN117221092A - 一种云平台虚拟机高可用系统 - Google Patents

一种云平台虚拟机高可用系统 Download PDF

Info

Publication number
CN117221092A
CN117221092A CN202311111128.0A CN202311111128A CN117221092A CN 117221092 A CN117221092 A CN 117221092A CN 202311111128 A CN202311111128 A CN 202311111128A CN 117221092 A CN117221092 A CN 117221092A
Authority
CN
China
Prior art keywords
virtual machine
cloud platform
availability
performance
computing node
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.)
Pending
Application number
CN202311111128.0A
Other languages
English (en)
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.)
709th Research Institute of CSSC
Original Assignee
709th Research Institute of CSSC
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 709th Research Institute of CSSC filed Critical 709th Research Institute of CSSC
Priority to CN202311111128.0A priority Critical patent/CN117221092A/zh
Publication of CN117221092A publication Critical patent/CN117221092A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Hardware Redundancy (AREA)

Abstract

本发明公开了一种云平台虚拟机高可用系统,属于云计算技术领域。本发明中将云平台虚拟机部署在分布式存储架构中,由此利用分布式构架提高云平台虚拟机的容错能力、故障转移能力及冗余备份能力;本发明系统还采用Keepalived技术,使用虚拟机监控服务器监控虚拟机状态,当发现故障虚拟机时,将虚拟IP地址迁移到另一台正常虚拟机上,以确保业务的连续性,进一步提高了虚拟机的可用性;同时,则根据云平台底层计算节点的可用性能和故障虚拟机业务所需资源进行匹配,选择合适的云平台底层计算节点进行故障虚拟机的迁移;由此提高本系统的资源利用率。

Description

一种云平台虚拟机高可用系统
技术领域
本发明属于云计算技术领域,更具体地,涉及一种云平台虚拟机高可用系统。
背景技术
目前,云计算作为一种新兴技术,引起了继个人计算机、互联网技术后的第三次信息化技术浪潮。云计算是对包括CPU、内存、硬盘和网络等计算资源的池化,以便通过多租户形式共享给多个消费者,消费者使用云终端设备接入网络并使用云端的计算资源。消费者将本地计算机服务迁移至云端时,考虑最多的就是服务的可用性,其次才是性能。因此,如何保证云平台虚拟机的高可用尤为重要。
OpenStack架构是目前使用最为广泛的开源云操作系统,由七个基本组件和数十个可选组件构成,每个组件对外提供若干个RESTful API服务,组件之间的通信就是通过调用对方的RESTful API服务。OpenStack中通过将服务分为无状态服务和有状态服务,对于无状态服务的高可用,只需要在多个节点中都部署该服务,然后使用类似HaProxy的负载均衡软件来转发请求即可达到高可用。对于有状态的服务,可采用A/A(主/主)或A/P(主/从)方式来搭建高可用。
A/A方式也叫做主/主模式,一般是原生实现的方式,也就是说同时有多个相同的服务在运行,当某个节点上的服务不能提供服务时,其它节点的该服务可以替代它进行服务,从而达到高可用。A/P方式也叫作主/从模式,需要通过第三方软件比如pacemaker来对备份服务进行激活等管理操作,也就是说有一个服务作为主服务在运行,另一个服务作为备份,并未运行,当主服务不能提供服务时,备份服务就会被激活并替代主服务继续提供服务。
现有Openstack架构下虚拟机高可用方案实现上,主要有以下缺点:(1)通常考虑对外业务的虚拟机高可用,未充分考虑云平台管理虚拟机的高可用;(2)通过节点间心跳来确定计算节点的状态,计算节点状态监控和虚拟机状态监控网络未分离,方法并不可靠;(3)集群内虚拟机迁移未考虑业务特点与底层服务器性能的结合,未充分考虑资源性能的合理利用,会出现计算资源浪费或不能很好满足业务性能需求的情况。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种云平台虚拟机高可用系统,其目的在于解决云平台中虚拟机可用性、可靠性以及资源利用率不足的技术问题。
为实现上述目的,本发明提供了一种云平台虚拟机高可用系统,所述系统中包括采用网络分离方式搭建的管理网络和生产网络;所述管理网络中部署有计算节点监控服务器和虚拟机监控服务器,所述生产网络中采用分布式存储构架部署云平台底层计算节点,虚拟机安装在所述云平台底层计算节点中;
所述计算节点监控服务器用于监控云平台底层计算节点状态;所述虚拟机监控服务器用于监控虚拟机状态,并在发现故障虚拟机后根据量化的可用性选择云平台底层计算节点进行故障虚拟机的迁移。
优选的,所述虚拟机监控服务器用于监控虚拟机的心跳状态,当发现虚拟机的心跳状态异常,则控制心跳状态异常的虚拟机进行重启,若重启失败,则根据云平台底层计算节点的可用性能和故障虚拟机业务所需资源进行匹配,选择合适的云平台底层计算节点进行故障虚拟机的迁移。
优选的,当发现故障虚拟机后,采用Keepalived技术将故障虚拟机的IP资源和服务迁移到所选择云平台底层计算节点中的虚拟机上。
优选的,所述虚拟机监控服务器用于根据各云平台底层计算节点硬件网络的利用率量化各云平台底层计算节点的可用性能,利用率越高,可用性能越低。
优选的,故障虚拟机业务所需资源越高,匹配的云平台底层计算节点硬件网络可用性能越高。
优选的,所述可用性能包括CPU可用性能、网络可用性能、内存可用性能以及硬盘可用性能。
优选的,云平台底层计算节点的可用性能和故障虚拟机业务所需资源进行匹配时,匹配的优先级为:CPU可用性能>网络可用性能>内存可用性能>硬盘可用性能。
优选的,所述计算节点监控服务器和虚拟机监控服务器采用双机热备方式部署。
优选的,所述计算节点监控服务器和虚拟机监控服务器部署在管理网中,采用VLAN技术进行隔离。
优选的,所述云平台底层计算节点部署在生产网中,不同云平台底层计算节点采用VLAN技术进行隔离。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下有益效果:
(1)本发明系统中,安装了虚拟机的云平台底层计算节点采用分布式存储构架部署,由此利用分布式构架提高云平台虚拟机的容错能力、故障转移能力及冗余备份能力,还通过分布式构架的共享存储技术,实现云平台虚拟机的热备,使得虚拟机的虚拟磁盘文件可以同时被多个物理主机访问,从而实现了虚拟机在不同物理主机之间的迁移和故障转移;同时采用Keepalived技术,使用虚拟机监控服务器监控虚拟机状态,当发现故障虚拟机时,将虚拟IP地址迁移到另一台正常工作的虚拟机上,以确保业务的连续性,进一步提高了虚拟机的可用性;
(2)本发明系统中,采用网络分离的方式搭建管理网络和生产网络,由部署在管理网络中的计算节点监控服务器和虚拟机监控服务器共同完成系统的监控任务;部署在生产网络中的底层计算节点中安装虚拟机,由虚拟机完成系统的业务任务;由此将监控任务和业务任务在网络上隔离,提高监控任务和业务任务的可靠性,同时避免了云平台虚拟机由于监控错误导致无效迁移造成的系统性能损失;
(3)本发明系统中,若发现故障虚拟机,则对所有云平台底层计算节点的CPU、硬盘、内存和网络可用性能进行量化,若有云平台底层计算节点的可用性能匹配故障虚拟机业务所需资源,则选择该云平台底层计算节点进行故障虚拟机的迁移,由此在实现虚拟机高可用的同时提升系统的底层计算节点资源的利用率。
附图说明
图1是本发明实施例中提供的VRRP协议原理图;
图2是本发明实施例中提供的系统网络总体架构图;
图3是本发明实施例中提供的云平台虚拟机迁移流程图;
图4是本发明实施例中提供的最优计算节点选择方案流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或者两个以上,例如,多个计算节点是指两个或者两个以上的计算节点等。
接下来,对本申请实施例中提供的技术方案进行介绍。
本发明方案的技术原理为:将虚拟机部署在分布式存储构架中,并通过共享存储技术和Keepalived技术来提高可用性。本方案充分利用分布式存储构架的容错、故障转移以及冗余备份能力,通过共享存储技术,实现云平台虚拟机的热备,使得虚拟机的虚拟磁盘文件可以同时被多个物理主机访问,从而实现了虚拟机在不同物理主机之间的迁移和故障转移。
如图1所示,Keepalived是基于虚拟冗余路由协议(VRRP协议)的实现,它工作在多个LVS主机节点上,当前活动的节点为Master,备用节点为Backup,Master不停地向Backup节点以VRRP协议通告自己的心跳。Backup节点一旦接收不到Master的通告信息,它便获取LVS上的VIP及IPVS规则,并于本节点生效,从而替代Master节点。
如图2所示,本发明实施例的总体架构采用网络分离的方式搭建,分为管理网络和生产网络:
计算节点监控服务器和虚拟机监控服务器部署在管理网络,计算节点监控服务器和虚拟机监控服务器之间采用网络交换机VLAN技术隔离;计算节点监控服务器和虚拟机监控服务器采用双机热备方式部署。
多个计算节点部署在生产网络,多个计算节点之间采用网络交换机VLAN技术隔离,每个计算节点上都安装有虚拟机,每个虚拟机都注册到虚拟机监控服务器上。
虚拟机监控服务器用于所有监控虚拟机状态,计算节点监控服务器用于监控所有计算节点状态。通过对计算节点和虚拟机分别进行监控,并结合网络状况分析,定位故障原因,最终决定是否对故障虚拟机进行恢复和迁移。
如图3所示,对云平台虚拟机进行迁移时,遵循以下步骤:
步骤1:虚拟机监控服务器监控计算节点中虚拟机心跳状态,当发现虚拟机心跳状态异常,通知给云平台监控程序进行处理,跳转到步骤2;
步骤2:云平台监控程序收到虚拟机监控服务器报告的虚拟机异常后,需要登录到相应的虚拟机,然后对虚拟机进行重启操作,若启动失败,则跳转步骤3,若启动成功则跳转到步骤1;
步骤3:异常虚拟机重启失败后,云平台监控程序将继续进行监控,并根据设置的故障处理策略,匹配一台最合适的计算节点准备异常虚拟机的迁移,跳转步骤4;
步骤4:对计算节点下的虚拟机进行迁移操作,并对虚拟机进行启动。
如图4所示,如何选择最合适云平台计算节点进行故障虚拟机迁移的步骤如下:
步骤1:量化云平台计算节点的可用性能,使用相同配置的虚拟机运行在不同的计算节点上,统计各计算节点的CPU利用率、硬盘利用率、内存利用率和网络利用率。
根据计算节点网络硬件的利用率量化计算节点的可用性能,利用率越大则可用性能越低,例如:若CPU利用率为50%,则计算节点CPU可用性能为1;若CPU利用率为10%,则计算节点CPU可用性能为5。
同理进行计算节点硬盘可用性能量化、内存可用性能量化和网络可用性能量化。
步骤2:将云平台计算节点按照CPU性能、硬盘性能、内存性能和网络性能划分为不同的集群。
例如,可划分为CPU高可用性能集群、CPU低可用性能集群、硬盘高可用性能集群、硬盘低可用性能集群、内存高可用性能集群、内存低可用性能集群、网络高可用性能集群以及网络低可用性能集群。一个计算节点可以在多个不同性能指标的集群中,但在同一性能指标下只能在一个集群中。例如计算节点1可以在CPU高可用性能集群和硬盘低可用性能集群中,但不能既处于CPU高可用性能集群又处于CPU低可用性能集群。
步骤3:根据故障的虚拟机其业务所需的CPU、硬盘、内存和网络资源,匹配当前云平台中各计算节点资源的可用性能,将虚拟机迁移至合适的计算节点中。
假如故障的虚拟机对CPU资源要求较高,则优先在CPU高可用性能集群中查看是否有计算节点满足要求,没有则再在CPU低可用性能集群中进行寻找,若CPU低可用性能集群中仍找不到满足要求的计算节点,则在CPU高可用性能集群中找到CPU可用性能中最大的计算节点,将故障虚拟机迁移至该计算节点上。同等可用性能要求的情况下,可用性能指标考虑的优先级为CPU>网络>内存>硬盘。
通过对云平台底层计算节点CPU、硬盘、内存和网络可用性能的量化,将计算节点根据可用性能的不同划分到不同的集群中,在故障虚拟机进行迁移时可以选择最优的目标计算节点,从而提升云平台的底层计算节点资源利用率。
可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。
以上内容本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种云平台虚拟机高可用系统,其特征在于,所述系统中包括采用网络分离方式搭建的管理网络和生产网络;所述管理网络中部署有计算节点监控服务器和虚拟机监控服务器,所述生产网络中采用分布式存储构架部署云平台底层计算节点,虚拟机安装在所述云平台底层计算节点中;
所述计算节点监控服务器用于监控云平台底层计算节点状态;所述虚拟机监控服务器用于监控虚拟机状态,并在发现故障虚拟机后根据量化的可用性选择云平台底层计算节点进行故障虚拟机的迁移。
2.根据权利要求1所述的系统,其特征在于,所述虚拟机监控服务器用于监控虚拟机的心跳状态,当发现虚拟机的心跳状态异常,则控制心跳状态异常的虚拟机进行重启,若重启失败,则根据云平台底层计算节点的可用性能和故障虚拟机业务所需资源进行匹配,选择合适的云平台底层计算节点进行故障虚拟机的迁移。
3.根据权利要求2所述的系统,其特征在于,当发现故障虚拟机后,采用Keepalived技术将故障虚拟机的IP资源和服务迁移到所选择云平台底层计算节点中的虚拟机上。
4.根据权利要求2所述的系统,其特征在于,所述虚拟机监控服务器用于根据各云平台底层计算节点硬件网络的利用率量化各云平台底层计算节点的可用性能,利用率越高,可用性能越低。
5.根据权利要求2所述的系统,其特征在于,故障虚拟机业务所需资源越高,匹配的云平台底层计算节点硬件网络可用性能越高。
6.根据权利要求3所述的系统,其特征在于,所述可用性能包括CPU可用性能、网络可用性能、内存可用性能以及硬盘可用性能。
7.根据权利要求6所述的系统,其特征在于,云平台底层计算节点的可用性能和故障虚拟机业务所需资源进行匹配时,匹配的优先级为:CPU可用性能>网络可用性能>内存可用性能>硬盘可用性能。
8.根据权利要求1所述的系统,其特征在于,所述计算节点监控服务器和虚拟机监控服务器采用双机热备方式部署。
9.根据权利要求1所述的系统,其特征在于,所述计算节点监控服务器和虚拟机监控服务器部署在管理网中,采用VLAN技术进行隔离。
10.根据权利要求1所述的系统,其特征在于,所述云平台底层计算节点部署在生产网中,不同云平台底层计算节点采用VLAN技术进行隔离。
CN202311111128.0A 2023-08-29 2023-08-29 一种云平台虚拟机高可用系统 Pending CN117221092A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311111128.0A CN117221092A (zh) 2023-08-29 2023-08-29 一种云平台虚拟机高可用系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311111128.0A CN117221092A (zh) 2023-08-29 2023-08-29 一种云平台虚拟机高可用系统

Publications (1)

Publication Number Publication Date
CN117221092A true CN117221092A (zh) 2023-12-12

Family

ID=89043487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311111128.0A Pending CN117221092A (zh) 2023-08-29 2023-08-29 一种云平台虚拟机高可用系统

Country Status (1)

Country Link
CN (1) CN117221092A (zh)

Similar Documents

Publication Publication Date Title
US11360854B2 (en) Storage cluster configuration change method, storage cluster, and computer system
US10983880B2 (en) Role designation in a high availability node
US7225356B2 (en) System for managing operational failure occurrences in processing devices
US8862928B2 (en) Techniques for achieving high availability with multi-tenant storage when a partial fault occurs or when more than two complete faults occur
US7814364B2 (en) On-demand provisioning of computer resources in physical/virtual cluster environments
US20180018244A1 (en) Node system, server apparatus, scaling control method, and program
US10826812B2 (en) Multiple quorum witness
US8082344B2 (en) Transaction manager virtualization
CN110224871A (zh) 一种Redis集群的高可用方法及装置
WO2016022405A1 (en) Providing higher workload resiliency in clustered systems based on health heuristics
CN111130835A (zh) 数据中心双活系统、切换方法、装置、设备及介质
WO2012097588A1 (zh) 数据存储方法、设备和系统
CN111935244B (zh) 一种业务请求处理系统及超融合一体机
CN111400285A (zh) mySQL数据分片处理方法、装置、计算机设备和可读存储介质
US8621260B1 (en) Site-level sub-cluster dependencies
CN112887367B (zh) 实现分布式集群高可用的方法、系统及计算机可读介质
CN112073499A (zh) 一种多机型云物理服务器的动态服务方法
US20240036997A1 (en) Methods and systems to improve input/output (i/o) resumption time during a non-disruptive automatic unplanned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system
CN117221092A (zh) 一种云平台虚拟机高可用系统
US20230094937A1 (en) Control plane configuration
US20240028611A1 (en) Granular Replica Healing for Distributed Databases
JP5353378B2 (ja) Haクラスタシステムおよびそのクラスタリング方法
US20240184610A1 (en) Path selection method based on an active-active configuration for a hyperconverged infrastructure storage environment
KR101588715B1 (ko) 클러스터링 알고리즘 중심의 의료정보시스템 메커니즘 설계 방법
CN112965790B (zh) 一种基于pxe协议的虚拟机启动方法及电子设备

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