CN111382141B - 主从架构配置方法、装置、设备以及计算机可读存储介质 - Google Patents
主从架构配置方法、装置、设备以及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111382141B CN111382141B CN202010135041.7A CN202010135041A CN111382141B CN 111382141 B CN111382141 B CN 111382141B CN 202010135041 A CN202010135041 A CN 202010135041A CN 111382141 B CN111382141 B CN 111382141B
- Authority
- CN
- China
- Prior art keywords
- host
- slave
- instance
- master
- hosts
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/161—Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/24569—Query processing with adaptation to specific hardware, e.g. adapted for using GPUs or SSDs
-
- 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
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种主从架构配置方法、装置、设备以及计算机可读存储介质,在接收到对待创建内存数据库的配置请求时,获取配置请求携带的待创建内存数据库的规格信息;根据规格信息确定待创建内存数据库的待配置实例的主机集群;根据规格信息从主机集群中确定待创建内存数据库的待配置实例的候选主机;基于候选主机的主机参数从候选主机中确定待创建内存数据库的主实例主机和从实例主机,并按照预设配置流程对主实例主机和从实例主机进行配置。通过规格信息确定主机集群内的主、从实例主机,实现集群内各主机负载程度相当,资源分配均衡,主从实例均匀的分布在各个主机上,避免大规模主从切换的问题,进而提升用户体验。
Description
技术领域
本发明涉及数据库管理技术领域,尤其涉及一种主从架构配置方法、装置、设备以及计算机可读存储介质。
背景技术
Redis(Remote Dictionary Server远程字典服务)是完全开源免费的,其遵守BSD(Berkeley Software Distribution,伯克利软件套件)协议,是一个高性能的key-value数据库。由于其高效的读写性能,Redis常作为key-value类型的数据缓存使用。在实际的生产环境中,Redis的使用方案主要有两种:1、主从集群模式;2、分布式模式。前者侧重数据的读写分离,后者侧重分布式存储数据、负载均衡等方面。其中,在主从集群模式中,Redis主库(主实例)被称为Master,其他从库(从实例)被称为Slave。在一个主从集群中,目前配置为1个master实例和1个Slave实例。
传统的做法是,随机选择一个能容纳申请内存数据库套餐的主机集群,然后再在该主机集群里面随机选择两台能容纳该套餐的主机,再在这两台主机中随机选择一个作为该套餐主实例的主机,另外一个作为该套餐从实例的主机。在不做任何资源选择策略的情况下,各个主机集群、主机的资源都是随机分配的,主从实例分配不均匀,不能有效的利用主机资源,而且未考虑某一主机上的主从节点分布情况,可能会出现某一台主机上全是主实例,一旦该主机出现故障,则会造成大规模主从切换,影响用户体验。
发明内容
本发明的主要目的在于提供一种主从架构配置方法、装置、设备以及计算机可读存储介质,旨在均衡配置主从架构,提升用户体验。
为实现上述目的,本发明提供一种主从架构配置方法,所述主从架构配置方法包括以下步骤:
在接收到对待创建内存数据库的配置请求时,获取所述配置请求携带的所述待创建内存数据库的规格信息;
根据所述规格信息确定所述待创建内存数据库的待配置实例的主机集群;
根据所述规格信息从所述主机集群中确定所述待创建内存数据库的待配置实例的候选主机;
基于所述候选主机的主机参数从所述候选主机中确定所述待创建内存数据库的主实例主机和从实例主机,并按照预设配置流程对所述主实例主机和从实例主机进行配置。
可选地,所述规格信息包括所述待创建内存数据库的运行所需内存和运行所需CPU,所述根据所述规格信息确定所述待创建内存数据库的待配置实例的主机集群的步骤包括:
获取满足预设筛选条件的主机集群,所述预设筛选条件为主机集群中包括主机剩余内存大于所述运行所需内存、主机剩余CPU大于所述运行所需CPU的可用主机,且所述可用主机的数量大于或者等于2;
根据满足所述预设筛选条件的主机集群的数量确定所述待创建内存数据库的待配置实例的主机集群。
可选地,所述根据满足所述预设筛选条件的主机集群的数量确定所述待创建内存数据库的待配置实例的主机集群的步骤包括:
若满足所述预设筛选条件的主机集群的数量等于1,则将满足所述预设筛选条件的主机集群作为所述待创建内存数据库的待配置实例的主机集群;
若满足所述预设筛选条件的主机集群的数量大于1,则将满足所述预设筛选条件的主机集群中可用资源最少的主机集群作为所述待创建内存数据库的待配置实例的主机集群,其中,所述可用资源最少的主机集群为所述可用主机的数量最少的主机集群,和/或,所述可用主机的剩余内存总量最少的主机集群,和/或,所述可用主机的剩余CPU总量最少的主机集群。
可选地,所述候选主机包括候选主实例主机,所述根据所述规格信息从所述主机集群中确定所述待创建内存数据库的待配置实例的候选主机的步骤包括:
对所述待创建内存数据库的待配置实例的主机集群中的主机进行筛选,得到主机剩余内存大于所述运行所需内存,且主机剩余CPU大于所述运行所需CPU的可用主机;
获取所述可用主机的主实例数量,对所述可用主机的主实例数量进行排序;
获取主实例数量最少的可用主机的数量;
若主实例数量最少的可用主机的数量大于或者等于2,则将主实例数量最少的可用主机作为候选主实例主机。
可选地,所述候选主机还包括候选从实例主机,所述基于所述候选主机的主机参数从所述候选主机中确定所述待创建内存数据库的主实例主机和从实例主机的步骤包括:
获取所述候选主实例主机的主机参数,所述主机参数包括主机已用内存、主机已用CPU、主机总内存、主机总CPU;
计算候选主实例主机的主机已用内存与运行所需内存的和,与主机已用CPU与运行所需CPU的和的比值,作为第一比值;
计算候选主实例主机的主机总内存与主机总CPU的比值,作为第二比值;
将所述第一比值与第二比值最接近的候选主实例主机作为主实例主机;
根据所述主实例主机确定候选从实例主机,并从所述候选从实例主机中确定从实例主机。
可选地,所述根据所述主实例主机确定候选从实施例主机的步骤包括:
获取所述可用主机中除所述主实例主机之外的主机的从实例数量,对所述从实例数量进行排序;
获取从实例数量最少的主机的数量;
若从实例数量最少的主机的数量大于或者等于2,则将从实例数量最少的主机作为候选从实例主机。
可选地,所述从所述候选从实施例主机中确定从实施例主机的步骤包括:
获取所述候选从实例主机的主机参数,所述主机参数包括主机已用内存、主机已用CPU、主机总内存、主机总CPU;
计算候选从实例主机的主机已用内存与运行所需内存的和,与主机已用CPU与运行所需CPU的和的比值,作为第三比值;
计算候选从实例主机的主机总内存与主机总CPU的比值,作为第四比值;
将所述第三比值与第四比值最接近的候选从实例主机作为从实例主机。
进一步地,为实现上述目的,本发明还提出一种主从架构配置装置,所述主从架构配置装置包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的主从架构配置程序,所述主从架构配置程序被所述处理器执行时实现如上述所述的主从架构配置方法的步骤。
进一步地,为实现上述目的,本发明还提出一种主从架构配置设备,所述主从架构配置设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的主从架构配置程序,所述主从架构配置程序被所述处理器执行时实现如上所述的主从架构配置方法的步骤。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有主从架构配置程序,所述主从架构配置程序被处理器执行时实现如上所述的主从架构配置方法的步骤。
本发明提出的主从架构配置方法,在接收到对待创建内存数据库的配置请求时,获取所述配置请求携带的所述待创建内存数据库的规格信息;根据所述规格信息确定所述待创建内存数据库的待配置实例的主机集群;根据所述规格信息从所述主机集群中确定所述待创建内存数据库的待配置实例的候选主机;基于所述候选主机的主机参数从所述候选主机中确定所述待创建内存数据库的主实例主机和从实例主机,并按照预设配置流程对所述主实例主机和从实例主机进行配置。通过待创建内存数据库的规格信息筛选出可用资源最少的主机集群,作为待创建内存数据库的待配置实例的主机集群,以实现只有将一个集群可用资源使用完之后才使用另外的可用资源较多的集群,避免集群资源使用的碎片化、无序化;通过规格信息和主机参数确定主机集群内的主实例主机和从实例主机,实现集群内各主机负载程度相当,资源分配均衡,各主机上主从实例的数量分配恰当,主从实例均匀的分布在各个主机上,以避免大规模主从切换的问题,进而提升用户体验。
附图说明
图1为本发明主从架构配置设备实施例方案涉及的设备硬件运行环境的结构示意图;
图2为本发明主从架构配置方法第一示例性实施例的流程示意图;
图3为本发明主从架构配置装置的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例涉及的主从架构配置方法主要应用于主从架构配置设备,该主从架构配置设备可以是PC、便携计算机、移动终端等具有显示和处理功能的设备。
参照图1,图1为本发明实施例方案中涉及的主从架构配置设备的硬件结构示意图。本发明实施例中,主从架构配置设备可以包括处理器1001(例如CPU),通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard);网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口);存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。本领域技术人员可以理解,图1中示出的硬件结构并不构成对本发明的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
继续参照图1,图1中作为一种计算机可读存储介质的存储器1005可以包括操作系统、网络通信模块以及主从架构配置程序。
在图1中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以调用存储器1005中存储的主从架构配置程序,并执行本发明实施例提供的主从架构配置方法。
基于上述硬件结构,提出本发明方法实施例。
主机:在其上可运行一个或多个实例(诸如虚拟机)的计算机被定义为主机。每个实例又可称为虚拟机或客户机或客户操作系统。管理程序通过虚拟操作平台来呈现这些实例,并管理实例的执行,以实现共享虚拟化硬件资源,其中,同一数据库套餐的主实例主机和从实例主机相当于母本和副本的关系,当主实例主机宕机时,切换至对应的从实例主机运行该套餐。
实例(Instance):操作系统中一系列的进程以及为这些进程所分配的内存块,实例是数据库应用的实现不可或缺的一部分。
参照图2,图2为本发明主从架构配置方法第一示例性实施例的流程示意图。该实施例中,所述主从架构配置方法包括以下步骤:
步骤S10,在接收到对待创建内存数据库的配置请求时,获取所述配置请求携带的所述待创建内存数据库的规格信息;
本实施例方法的执行主体可以为手机、平板电脑等用户终端;本实施例中的待创建内存数据库可以为MemCache、SSDB、Cassandra或者Redis等数据库,本实施例不做具体限制。
传统的主从架构配置方法是随机选择一个能容纳申请内存数据库套餐的主机集群,然后再在该主机集群里面随机选择两台能容纳该套餐的主机,再在这两台主机中随机选择一个作为该套餐主实例的主机,另外一个作为该套餐从实例的主机。在不做任何资源选择策略的情况下,各个主机集群、主机的资源都是随机分配的,主从实例分配不均匀,不能有效的利用主机资源,而且未考虑某一主机上主从节点分布情况,可能出现某一台主机全是主实例,一旦该主机出现故障,则会造成大规模主从切换,影响用户体验。
为解决现有技术中主从架构配置不均匀的技术问题,在本发明实施例中,在接收到对待创建内存数据库的配置请求时,获取所述配置请求携带的待创建内存数据库的规格信息,根据该规格信息对待创建内存数据库的主从实例进行均衡配置。
具体地,所述规格信息包括所述待创建内存数据库的运行所需内存和运行所需CPU,当用户需要为待创建内存数据库配置主从实例主机时,可以通过用户终端向主从架构配置设备发送配置请求,该配置请求中包含有待创建内存数据库运行时所需要的运行所需内存和运行所需CPU,其中,内存指的是运行内存,CPU指的CPU核数。
步骤S20,根据所述规格信息确定所述待创建内存数据库的待配置实例的主机集群;
主从架构配置设备在获取到待创建内存数据库的规格信息后,即可根据规格信息确定待创建内存数据库的待配置实例的主机集群,具体地,获取所有满足预设筛选条件的主机集群,所述预设筛选条件为该主机集群中存在主机剩余内存大于所述运行所需内存,且主机剩余CPU大于所述运行所需CPU的可用主机,且这些可用主机的数量大于或者等于2,以保证该主机集群能够至少提供一个主实例主机和一个从实例主机,主实例主机和从实例主机为同一集群中的不同主机,其中,主机剩余内存为主机剩余可用内存,主机剩余CPU为主机剩余可用CPU核数。
进而获取满足预设筛选条件的所有主机集群的数量,根据该数量确定待创建内存数据库的待配置实例的主机集群,具体地,判断该数量是否大于1;若满足预设筛选条件的主机集群的数量小于1,说明没有能运行该待创建内存数据库的主机集群,则拒绝该配置请求,并向发起该配置请求的用户终端发送拒绝提示;若满足预设筛选条件的主机集群的数量等于1,说明满足预设筛选条件的主机集群只有一个,无需进一步筛选,可直接将该满足预设筛选条件的主机集群作为待创建内存数据库的待配置实例的主机集群。
若满足预设筛选条件的主机集群的数量大于1,无法直接确定待创建内存数据库的待配置实例的主机集群,需要对满足预设筛选条件的主机集群进行进一步筛选,具体为从满足预设筛选条件的主机集群中筛选出可用资源最少的主机集群,作为待创建内存数据库的待配置实例的主机集群,以实现按需投产,只有将一个集群可用资源使用完之后才使用另外的可用资源较多的集群,避免集群资源使用的碎片化、无序化。其中,可用资源最少的主机集群为包含可用主机的数量最少的主机集群,和/或,包含的所有可用主机的剩余内存总量最少的主机集群,和/或,包含的所有可用主机的剩余CPU总量最少的主机集群,其中,可用主机指的是主机剩余内存大于所述运行所需内存,且主机剩余CPU大于所述运行所需CPU的主机,另外,运维人员可根据需要选择可用资源最少的主机集群的限制条件,可以是上述三种限制条件中的一种,也可以是其中两种的组合,还可以是三种的组合,本实施例不做具体限定。
步骤S30,根据所述规格信息从所述主机集群中确定所述待创建内存数据库的待配置实例的候选主机;
在主机集群确定后,需要从该主机集群的众多主机中确定待创建内存数据库的待配置实例的候选主机,而候选主机包括候选主实例主机和候选从实例主机,由于只有在主实例主机宕机时,待创建内存数据库才会切换至从实例主机运行,故而主实例主机的优先级要高于从实例主机,因此首先从步骤S20中确定的主机集群中确定候选主实例主机,而候选从实例主机则要在主实例主机确定之后再进行确定。
具体地,对从步骤S20中确定的主机集群中的主机进行筛选,得到主机剩余内存大于所述运行所需内存,且主机剩余CPU大于所述运行所需CPU的可用主机,以保证筛选出的主机能够正常运行申请内存数据库套餐;然后获取这些可用主机各自的主实例数量,对这些可用主机的主实例数量按照大小进行排序,以获取主实例数量最少的可用主机,然后判断主实例数量最少的可用主机的数量是否大于或者等于2;若主实例数量最少的可用主机的数量大于或者等于2,则将主实例数量最少的可用主机都作为候选主实例主机,以供主从架构配置设备进一步从候选主实例主机中筛选出主实例主机;若主实例数量最少的可用主机的数量等于1,则直接将该主实例数量最少的可用主机作为主实例主机。在本实施例中,将主实例数量最少的可用主机作为候选主实例主机能够避免出现某一台主机上全是主实例,一旦该主机出现故障,则会造成大规模主从切换的情况。
步骤S40,基于所述候选主机的主机参数从所述候选主机中确定所述待创建内存数据库的主实例主机和从实例主机,并按照预设配置流程对所述主实例主机和从实例主机进行配置。
在候选主实例主机确定后,由于候选主实例主机的数量有多个,需要从多个候选主实例主机中确定主实例主机,具体地,获取所述候选主实例主机的主机参数,所述主机参数包括主机已用内存、主机已用CPU、主机总内存、主机总CPU;计算候选主实例主机的主机已用内存与运行所需内存的和,与主机已用CPU与运行所需CPU的和的比值,作为第一比值,即(主机已用内存+最大所需内存)/(主机已用CPU+最大所需CPU);计算候选主实例主机的主机总内存与主机总CPU的比值,作为第二比值,即主机总内存/主机总CPU;第一比值与第二比值的越接近,说明该主机的主机CPU和内存的使用率越均衡,即资源分配越均衡,为解决现有技术中主从架构配置不均匀的技术问题,因此,将所述第一比值与第二比值最接近的候选主实例主机作为主实例主机。其中,主机总内存指的是主机总的运行内存,主机总CPU指的主机总的CPU核数。
进一步地,在主实例主机确定后,根据主实例主机确定候选从实例主机,并从所述候选从实例主机中确定从实例主机,再按照预设配置流程对所述主实例主机和从实例主机进行配置。
另外,对主实例主机和从实例主机的预设配置流程可参照现有技术,本实施例在此不再赘述。
本实施例公开的主从架构配置方法,在接收到对待创建内存数据库的配置请求时,获取所述配置请求携带的所述待创建内存数据库的规格信息;根据所述规格信息确定所述待创建内存数据库的待配置实例的主机集群;根据所述规格信息从所述主机集群中确定所述待创建内存数据库的待配置实例的候选主机;基于所述候选主机的主机参数从所述候选主机中确定所述待创建内存数据库的主实例主机和从实例主机,并按照预设配置流程对所述主实例主机和从实例主机进行配置。通过待创建内存数据库的规格信息筛选出可用资源最少的主机集群,作为待创建内存数据库的待配置实例的主机集群,以实现只有将一个集群可用资源使用完之后才使用另外的可用资源较多的集群,避免集群资源使用的碎片化、无序化;通过规格信息和主机参数确定主机集群内的主实例主机和从实例主机,实现集群内各主机负载程度相当,资源分配均衡,各主机上主从实例的数量分配恰当,主从实例均匀的分布在各个主机上,以避免大规模主从切换的问题,进而提升用户体验。
进一步地,基于本发明主从架构配置方法第一示例性实施例,提出本发明主从架构配置方法第二实施例,上述根据主实例主机确定候选从实例主机的步骤包括:
步骤S50,获取所述可用主机中除所述主实例主机之外的主机的从实例数量,对所述从实例数量进行排序;
在本实施例中,从实例主机与主实例主机在同一主机集群内,且为保证正常的主从切换,从实例主机与主实例主机为不同的主机,因此,在主实例主机确定后,候选从实例主机需从主实例主机所在的主机集群除主实例主机以外的可用主机中确定。
步骤S60,获取从实例数量最少的主机的数量;
具体确定方法为获取除主实例主机以外的可用主机的从实例数量,对这些可用主机的从例数量按照大小进行排序,以获取从实例数量最少的可用主机,然后判断从实例数量最少的可用主机的数量是否大于或者等于2;若从实例数量最少的可用主机的数量等于1,则直接将该从实例数量最少的可用主机作为从实例主机。
步骤S70,若从实例数量最少的主机的数量大于或者等于2,则将从实例数量最少的主机作为候选从实例主机。
若从实例数量最少的可用主机的数量大于或者等于2,则将主实例数量最少的可用主机都作为候选主实例主机,以供主从架构配置设备进一步从候选主实例主机中筛选出主实例主机。
在本实施例中,将从实例数量最少的可用主机作为候选从实例主机或者将从实例数量最少的可用主机作为从实例主机,能够避免出现某一台主机上全是从实例,在主实例主机正常运行时,该主机资源闲置、浪费的情况,从而提升主机的资源利用率。
进一步地,上述从所述候选从实例主机中确定从实例主机的步骤包括:
步骤S80,获取所述候选从实例主机的主机参数,所述主机参数包括主机已用内存、主机已用CPU、主机总内存、主机总CPU;
在候选从实例主机确定后,由于候选从实例主机的数量有多个,需要从多个候选从实例主机中确定从实例主机,具体地,获取这些候选从实例主机的主机参数,所述主机参数包括主机已用内存、主机已用CPU、主机总内存、主机总CPU。其中,主机总内存指的是主机总的运行内存,主机总CPU指的主机总的CPU核数。
步骤S90,计算候选从实例主机的主机已用内存与运行所需内存的和,与主机已用CPU与运行所需CPU的和的比值,作为第三比值;
计算候选从实例主机的主机已用内存与运行所需内存的和,与主机已用CPU与运行所需CPU的和的比值,作为第三比值,即(主机已用内存+最大所需内存)/(主机已用CPU+最大所需CPU);
步骤S100,计算候选从实例主机的主机总内存与主机总CPU的比值,作为第四比值;
计算候选从实例主机的主机总内存与主机总CPU的比值,作为第四比值,即主机总内存/主机总CPU;
步骤S110,将所述第三比值与第四比值最接近的候选从实例主机作为从实例主机。
第三比值与第四比值的越接近,说明该主机的主机CPU和内存的使用率越均衡,即资源分配越均衡,为解决现有技术中主从架构配置不均匀的技术问题,因此,将第三比值与第四比值最接近的候选从实例主机作为从实例主机。
此外,本发明实施例还提供一种主从架构配置装置。
本发明主从架构配置装置为虚拟装置存储于图1所示主从架构配置设备的存储器1005中,用于实现主从架构配置程序的所有功能;主从架构配置装置的各模块被处理器1001执行时,可实现从配置请求中获取规格信息,并根据规格信息确定主机集群、候选主机和确定主从实例主机等处理。
具体的,参照图3,图3为本发明主从架构配置装置第一实施例的功能模块示意图。
本实施例中,所述主从架构配置装置包括:
信息获取模块10,用于在接收到对待创建内存数据库的配置请求时,获取所述配置请求携带的所述待创建内存数据库的规格信息;
第一确定模块20,用于根据所述规格信息确定所述待创建内存数据库的待配置实例的主机集群;
第二确定模块30,用于根据所述规格信息从所述主机集群中确定所述待创建内存数据库的待配置实例的候选主机;
第三确定模块40,用于基于所述候选主机的主机参数从所述候选主机中确定所述待创建内存数据库的主实例主机和从实例主机,并按照预设配置流程对所述主实例主机和从实例主机进行配置。
进一步的,所述规格信息包括所述待创建内存数据库的运行所需内存和运行所需CPU,所述第一确定模块20包括:
第一筛选单元,用于获取满足预设筛选条件的主机集群,所述预设筛选条件为主机集群中包括主机剩余内存大于所述运行所需内存、主机剩余CPU大于所述运行所需CPU的可用主机,且所述可用主机的数量大于或者等于2;
第二筛选单元,用于根据满足所述预设筛选条件的主机集群的数量确定所述待创建内存数据库的待配置实例的主机集群。
进一步的,所述第二筛选单元包括:
作为子单元,用于若满足所述预设筛选条件的主机集群的数量等于1,则将满足所述预设筛选条件的主机集群作为所述待创建内存数据库的待配置实例的主机集群;
筛选子单元,用于若满足所述预设筛选条件的主机集群的数量大于1,则将满足所述预设筛选条件的主机集群中可用资源最少的主机集群作为所述待创建内存数据库的待配置实例的主机集群,其中,所述可用资源最少的主机集群为所述可用主机的数量最少的主机集群,和/或,所述可用主机的剩余内存总量最少的主机集群,和/或,所述可用主机的剩余CPU总量最少的主机集群。
进一步的,所述候选主机包括候选主实例主机,所述第二确定模块30包括:
可用主机筛选单元,用于对所述待创建内存数据库的待配置实例的主机集群中的主机进行筛选,得到主机剩余内存大于所述运行所需内存,且主机剩余CPU大于所述运行所需CPU的可用主机;
排序单元,用于获取所述可用主机的主实例数量,对所述可用主机的主实例数量进行排序;
获取单元,用于获取主实例数量最少的可用主机的数量;
候选主实例主机获取单元,用于若主实例数量最少的可用主机的数量大于或者等于2,则将主实例数量最少的可用主机作为候选主实例主机。
进一步的,所述第三确定模块40包括:
参数获取单元,用于获取所述候选主实例主机的主机参数,所述主机参数包括主机已用内存、主机已用CPU、主机总内存、主机总CPU;
第一计算单元,用于计算候选主实例主机的主机已用内存与运行所需内存的和,与主机已用CPU与运行所需CPU的和的比值,作为第一比值;
第二计算单元,用于计算候选主实例主机的主机总内存与主机总CPU的比值,作为第二比值;
比值接近单元,用于将所述第一比值与第二比值最接近的候选主实例主机作为主实例主机;
从实例确定单元,用于根据所述主实例主机确定候选从实例主机,并从所述候选从实例主机中确定从实例主机。
进一步的,所述从实例确定单元还包括:
排序子单元,用于获取所述可用主机中除所述主实例主机之外的主机的从实例数量,对所述从实例数量进行排序;
数量获取子单元,用于获取从实例数量最少的主机的数量;
候选从实例确定子单元,用于若从实例数量最少的主机的数量大于或者等于2,则将从实例数量最少的主机作为候选从实例主机。
进一步的,所述从实例确定单元还包括:
参数获取子单元,用于获取所述候选从实例主机的主机参数,所述主机参数包括主机已用内存、主机已用CPU、主机总内存、主机总CPU;
第三比值计算子单元,用于计算候选从实例主机的主机已用内存与运行所需内存的和,与主机已用CPU与运行所需CPU的和的比值,作为第三比值;
第四比值计算子单元,用于计算候选从实例主机的主机总内存与主机总CPU的比值,作为第四比值;
从实例确定子单元,用于将所述第三比值与第四比值最接近的候选从实例主机作为从实例主机。
其中,上述主从架构配置装置中各个模块的功能实现与上述主从架构配置方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
此外,本发明实施例还提出一种计算机可读存储介质。所述计算机可读存储介质上存储有主从架构配置程序,所述主从架构配置程序被处理器执行时实现如上所述的主从架构配置方法的步骤。
由于本主从架构配置程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本发明每个实施例的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种主从架构配置方法,其特征在于,所述主从架构配置方法包括以下步骤:
在接收到对待创建内存数据库的配置请求时,获取所述配置请求携带的所述待创建内存数据库的规格信息;
根据所述规格信息确定所述待创建内存数据库的待配置实例的主机集群;
根据所述规格信息从所述主机集群中确定所述待创建内存数据库的待配置实例的候选主机;
基于所述候选主机的主机参数从所述候选主机中确定所述待创建内存数据库的主实例主机和从实例主机,并按照预设配置流程对所述主实例主机和从实例主机进行配置;
其中,所述根据所述规格信息确定所述待创建内存数据库的待配置实例的主机集群的步骤包括:
获取满足预设筛选条件的主机集群,所述预设筛选条件为主机集群中包括主机剩余内存大于运行所需内存、主机剩余CPU大于运行所需CPU的可用主机,且所述可用主机的数量大于或者等于2;
若满足所述预设筛选条件的主机集群的数量等于1,则将满足所述预设筛选条件的主机集群作为所述待创建内存数据库的待配置实例的主机集群;
若满足所述预设筛选条件的主机集群的数量大于1,则将满足所述预设筛选条件的主机集群中可用资源最少的主机集群作为所述待创建内存数据库的待配置实例的主机集群,其中,所述可用资源最少的主机集群为所述可用主机的数量最少的主机集群,和/或,所述可用主机的剩余内存总量最少的主机集群,和/或,所述可用主机的剩余CPU 总量最少的主机集群。
2.如权利要求1所述的主从架构配置方法,其特征在于,所述规格信息包括所述待创建内存数据库的运行所需内存和运行所需CPU。
3.如权利要求1所述的主从架构配置方法,其特征在于,所述候选主机包括候选主实例主机,所述根据所述规格信息从所述主机集群中确定所述待创建内存数据库的待配置实例的候选主机的步骤包括:
对所述待创建内存数据库的待配置实例的主机集群中的主机进行筛选,得到主机剩余内存大于所述运行所需内存,且主机剩余CPU大于所述运行所需CPU的可用主机;
获取所述可用主机的主实例数量,对所述可用主机的主实例数量进行排序;
获取主实例数量最少的可用主机的数量;
若主实例数量最少的可用主机的数量大于或者等于2,则将主实例数量最少的可用主机作为候选主实例主机。
4.如权利要求3所述的主从架构配置方法,其特征在于,所述候选主机还包括候选从实例主机,所述基于所述候选主机的主机参数从所述候选主机中确定所述待创建内存数据库的主实例主机和从实例主机的步骤包括:
获取所述候选主实例主机的主机参数,所述主机参数包括主机已用内存、主机已用CPU、主机总内存、主机总CPU;
计算候选主实例主机的主机已用内存与运行所需内存的和,与主机已用CPU与运行所需CPU的和的比值,作为第一比值;
计算候选主实例主机的主机总内存与主机总CPU的比值,作为第二比值;
将所述第一比值与第二比值最接近的候选主实例主机作为主实例主机;
根据所述主实例主机确定候选从实例主机,并从所述候选从实例主机中确定从实例主机。
5.如权利要求4所述的主从架构配置方法,其特征在于,所述根据所述主实例主机确定候选从实施例主机的步骤包括:
获取所述可用主机中除所述主实例主机之外的主机的从实例数量,对所述从实例数量进行排序;
获取从实例数量最少的主机的数量;
若从实例数量最少的主机的数量大于或者等于2,则将从实例数量最少的主机作为候选从实例主机。
6.如权利要求5所述的主从架构配置方法,其特征在于,所述从所述候选从实施例主机中确定从实施例主机的步骤包括:
获取所述候选从实例主机的主机参数,所述主机参数包括主机已用内存、主机已用CPU、主机总内存、主机总CPU;
计算候选从实例主机的主机已用内存与运行所需内存的和,与主机已用CPU与运行所需CPU的和的比值,作为第三比值;
计算候选从实例主机的主机总内存与主机总CPU的比值,作为第四比值;
将所述第三比值与第四比值最接近的候选从实例主机作为从实例主机。
7.一种主从架构配置装置,其特征在于,所述主从架构配置装置包括:
信息获取模块,用于在接收到对待创建内存数据库的配置请求时,获取所述配置请求携带的所述待创建内存数据库的规格信息;
第一确定模块,用于根据所述规格信息确定所述待创建内存数据库的待配置实例的主机集群;
第二确定模块,用于根据所述规格信息从所述主机集群中确定所述待创建内存数据库的待配置实例的候选主机;
第三确定模块,用于基于所述候选主机的主机参数从所述候选主机中确定所述待创建内存数据库的主实例主机和从实例主机,并按照预设配置流程对所述主实例主机和从实例主机进行配置;
所述第一确定模块,还用于获取满足预设筛选条件的主机集群,所述预设筛选条件为主机集群中包括主机剩余内存大于运行所需内存、主机剩余CPU大于运行所需CPU的可用主机,且所述可用主机的数量大于或者等于2;
若满足所述预设筛选条件的主机集群的数量等于1,则将满足所述预设筛选条件的主机集群作为所述待创建内存数据库的待配置实例的主机集群;
若满足所述预设筛选条件的主机集群的数量大于1,则将满足所述预设筛选条件的主机集群中可用资源最少的主机集群作为所述待创建内存数据库的待配置实例的主机集群,其中,所述可用资源最少的主机集群为所述可用主机的数量最少的主机集群,和/或,所述可用主机的剩余内存总量最少的主机集群,和/或,所述可用主机的剩余CPU 总量最少的主机集群。
8.一种主从架构配置设备,其特征在于,所述主从架构配置设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的主从架构配置程序,所述主从架构配置程序被所述处理器执行时实现如权利要求1至6中任一项所述的主从架构配置方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有主从架构配置程序,所述主从架构配置程序被处理器执行时实现如权利要求1至6中任一项所述的主从架构配置方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010135041.7A CN111382141B (zh) | 2020-02-29 | 2020-02-29 | 主从架构配置方法、装置、设备以及计算机可读存储介质 |
PCT/CN2020/118494 WO2021169287A1 (zh) | 2020-02-29 | 2020-09-28 | 主从架构配置方法、装置、设备以及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010135041.7A CN111382141B (zh) | 2020-02-29 | 2020-02-29 | 主从架构配置方法、装置、设备以及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111382141A CN111382141A (zh) | 2020-07-07 |
CN111382141B true CN111382141B (zh) | 2023-05-26 |
Family
ID=71218668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010135041.7A Active CN111382141B (zh) | 2020-02-29 | 2020-02-29 | 主从架构配置方法、装置、设备以及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111382141B (zh) |
WO (1) | WO2021169287A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111382141B (zh) * | 2020-02-29 | 2023-05-26 | 平安科技(深圳)有限公司 | 主从架构配置方法、装置、设备以及计算机可读存储介质 |
CN112486679A (zh) * | 2020-11-25 | 2021-03-12 | 北京浪潮数据技术有限公司 | 一种kubernetes集群的pod调度方法、装置及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326002A (zh) * | 2015-07-10 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 资源调度方法、装置及设备 |
CN107008002A (zh) * | 2015-11-24 | 2017-08-04 | 富士通株式会社 | 非暂态计算机可读存储介质、评估方法和评估装置 |
CN110764788A (zh) * | 2019-09-10 | 2020-02-07 | 武汉联影医疗科技有限公司 | 云存储部署方法、装置、计算机设备和可读存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8849977B2 (en) * | 2012-03-09 | 2014-09-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and a control node in an overlay network |
CN105338028B (zh) * | 2014-07-30 | 2018-12-07 | 浙江宇视科技有限公司 | 一种分布式服务器集群中主从节点选举方法及装置 |
US10241840B2 (en) * | 2016-09-30 | 2019-03-26 | Vmware, Inc. | Resource based virtual computing instance scheduling |
CN111382141B (zh) * | 2020-02-29 | 2023-05-26 | 平安科技(深圳)有限公司 | 主从架构配置方法、装置、设备以及计算机可读存储介质 |
-
2020
- 2020-02-29 CN CN202010135041.7A patent/CN111382141B/zh active Active
- 2020-09-28 WO PCT/CN2020/118494 patent/WO2021169287A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326002A (zh) * | 2015-07-10 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 资源调度方法、装置及设备 |
CN107008002A (zh) * | 2015-11-24 | 2017-08-04 | 富士通株式会社 | 非暂态计算机可读存储介质、评估方法和评估装置 |
CN110764788A (zh) * | 2019-09-10 | 2020-02-07 | 武汉联影医疗科技有限公司 | 云存储部署方法、装置、计算机设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021169287A1 (zh) | 2021-09-02 |
CN111382141A (zh) | 2020-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10558498B2 (en) | Method for scheduling data flow task and apparatus | |
US9983899B2 (en) | Network resource configuration for a virtual machine | |
US20190281503A1 (en) | Management Method, Management Unit, and System | |
US10686728B2 (en) | Systems and methods for allocating computing resources in distributed computing | |
EP4002115A1 (en) | Resource allocation method and resource offloading method | |
CN105791254B (zh) | 网络请求处理方法、装置及终端 | |
CN109960575B (zh) | 一种计算能力共享方法、系统及相关设备 | |
CN111382141B (zh) | 主从架构配置方法、装置、设备以及计算机可读存储介质 | |
EP3817255A1 (en) | Data verification method and apparatus, and storage medium | |
US10102098B2 (en) | Method and system for recommending application parameter setting and system specification setting in distributed computation | |
US11438271B2 (en) | Method, electronic device and computer program product of load balancing | |
US20150006459A1 (en) | Alarm Correlation Analysis Method, Apparatus and System | |
WO2020108337A1 (zh) | 一种cpu资源调度方法及电子设备 | |
CN111459676A (zh) | 一种节点资源管理方法、装置及存储介质 | |
CN109587068B (zh) | 流量切换方法、装置、设备及计算机可读存储介质 | |
CN109033184B (zh) | 数据处理方法及装置 | |
CN114116173A (zh) | 动态调整任务分配的方法、装置和系统 | |
CN113672368A (zh) | 任务调度方法及系统 | |
CN111767126A (zh) | 分布式批量处理的系统和方法 | |
CN110851166A (zh) | 用户无感知的应用程序更新方法、装置及计算机设备 | |
CN116450290A (zh) | 计算机资源的管理方法、装置、云服务器及存储介质 | |
US10528397B2 (en) | Method, device, and non-transitory computer readable storage medium for creating virtual machine | |
US20150189013A1 (en) | Adaptive and prioritized replication scheduling in storage clusters | |
CN115221041A (zh) | 多设备的测试方法、装置、电子设备及存储介质 | |
KR20230063015A (ko) | 가상화 서버에서 가상머신 cpu 자원을 관리하는 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40032331 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |