CN115292283A - 一种基于盘柜的主从高可用切换方法 - Google Patents
一种基于盘柜的主从高可用切换方法 Download PDFInfo
- Publication number
- CN115292283A CN115292283A CN202210926163.7A CN202210926163A CN115292283A CN 115292283 A CN115292283 A CN 115292283A CN 202210926163 A CN202210926163 A CN 202210926163A CN 115292283 A CN115292283 A CN 115292283A
- Authority
- CN
- China
- Prior art keywords
- database
- virtual
- disk
- server
- slave
- 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
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/214—Database migration support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/203—Failover techniques using migration
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种基于盘柜的主从高可用切换方法,包括如下步骤:在主数据库挂载虚拟IP,利用数据库存活监听模块keepalive监听数据库端口状态,对虚拟IP的存活进行监听,并在虚拟IP消失时进行盘柜虚拟磁盘的卸载动作;虚拟IP和数据库存活监听模块根据当前的虚拟IP存活情况做出判断,对目前数据库的运行状态进行监听;当虚拟IP状态异常,判断虚拟IP是否进行切换,若虚拟IP发生切换,则通过对磁盘的重新挂载和数据库重新启动的方式,进行数据库的主从切换;切换后检测虚拟IP的存活状态。本发明的方法高可用实现成本低,可在本地数据库服务器直接部署。适用于老旧系统对数据库高可用需求改造,对程序依赖程度低。
Description
技术领域
本发明属于数据库服务器技术领域,尤其涉及一种基于盘柜的主从高可用切换方法。
背景技术
运维服务主要负责维护并确保整个服务的高可用性,同时不断优化系统架构提升服务的整体服务运行安全等级和有效可用时长。系统需要全天候24不间断运行,则需要相应的冗余机制,以防某台机器宕掉时无法访问,而冗余则可以通过部署至少两台服务器构成一个集群实现服务高可用。作为业务心脏的数据库除了定期备份还需要实现冷热备份和数据冗余,能够在故障期间进行高速有效的冷热服务切换,避免因数据库系统故障导致的业务瘫痪。
目前存在于市面上的业务冷热备份与实时切换的方式有很多,但大多数都是通过多数据副本进行的这种方式的业务高可用有一下几个缺点:
1)主数据库服务器宕机后,可能在与从数据库服务器进行数据同步过程中造成数据不一致或者数据丢失。
2)数据库读写压力大时,主从副本数据差异大,在进行数据库切换后,业务将会有明显的数据差异,造成业务混乱。
3)后续对主从数据库的差异数据进行补全需要浪费大量时间和人工,维护成本高。
4)副本将会占用大量的系统存储空间,安全性与副本数成倍数关系。
5)对外健支持上,性能较差。
6)多个数据库实例对服务器性能要求高,必须使用性能基本相同的服务器,否则性能最差的服务器实例将会成为系统的性能瓶颈。
业内目前常用的核心业务数据库绝大多数均采用基于多副本或多实例的方式进行,官方也提供了类似的解决方案,但带来的代价却是更多的成本支出和更复杂的维护内容,一定程度上加大了维护的难度。
发明内容
针对上述技术问题,本发明公开了一种基于盘柜的主从高可用切换方法,采取软硬件相结合的方式去解决高可用问题。
为达到上述目的,本发明采用的技术方案为:一种基于盘柜的主从高可用切换方法,依托于盘柜的磁盘mount挂载模式,盘柜支持数据库磁盘的通用唯一识别码uuid唯一识别;服务器可根据盘柜提供的uuid进行数据盘的自由挂载或释放;物理态的进行数据的物理迁移。利用物理迁移的高效稳定特点完成数据库的数据迁移,保障了数据的完整性和唯一性,且不会改变数据库系统本生的特性。
对于支持基于通用唯一识别码uuid的磁盘挂载与释放的盘柜,利用san交换机组成盘柜服务器网络,盘柜服务器网络内的服务器能够自由的挂载盘柜中建立的数据磁盘;
在主数据库所在的服务器上创建虚拟IP,利用安装在从数据库服务器的数据库存活监听模块keepalive,对虚拟IP、数据库端口的存活进行监听,并在当数据库端口或虚拟IP任意一处发生异常时,进行数据库服务器的关闭动作和盘柜虚拟磁盘的卸载动作。
keepalive进行虚拟IP的漂移,使得从数据库服务器上快速建立原有虚拟IP,当该动作触发时,从数据库服务器上的keepalive可发现虚拟IP的建立,从而触发盘柜数据盘的挂载和数据库的启动,来完成主从切换动作。
从数据库服务器上的虚拟IP和数据库存活监听模块keepalive根据当前的存活情况做出判断,对目前数据库的运行状态进行监听,在程序出错时确认虚拟IP是否已经完成了漂移,当确认虚拟IP已经被keepalive迁移至从数据库服务器后,数据库存活监听模块将进行磁盘挂载,并启动从数据库服务器上的数据库实例;数据库实例指代为一个具体的数据库可提供数据库服务的通道。
在主数据库出现故障时进行数据存储文件的物理迁移。
进一步的,主数据库服务器keepalive主要承担了主数据库关闭、磁盘释放动作,而该动作会导致原有的正在运行中的数据库端口消失,进而触发从数据库服务器上的数据库存活监听,执行从数据库服务器上的数据库启动动作和盘柜虚拟磁盘的挂载动作,将数据磁盘通过uuid重新挂载到从数据库上,完成了一次物理级别的数据迁移。
当主服务器的keepalive探测到数据库出现故障时,进行服务器的虚拟IP的迁移并触发当前服务器的数据库关闭和数据磁盘卸载动作,主动停止当前在用数据库,释放主数据的磁盘,从数据库服务器上的keepalive,将数据磁盘通过uuid重新挂载到从数据库服务器上,启动从数据库服务器上的数据库。
进一步的,采用脚本监听方式进行系统监听,可根据业务需要调整程序的监听频率。
进一步的,当进行主从切换后,keepalive也会触发告警机制,维护人员便可第一时间进行干预,最大程度上的保证业务的安全运行。
本方法采用脚本监听方式进行系统监听,能够实现根据业务需要调整程序的监听频率,并且keepalive仅仅安装在从数据库服务器上,所以不会影响主数据库的性能,最大程度上的保证了数据库运行的高效性。
本发明的高可用切换方法能够满足系统对数据安全性要求高的需求,能够有效的避免因传统数据库切换而导致的主从数据不一致而造成的数据缺失。降低数据库在高速读写状态下崩溃而导致的数据库丢失。
本发明的高可用切换方法适用于任何形式的在linux操作系统上运行的数据库,且保留原生数据库所有的功能,不对数据库软件和使用生态造成任何影响,可以默认为单机节点的数据库使用。同样适用于单机多实例的数据库部署,其性能瓶颈仅为部署服务器的性能瓶颈和盘柜的读写速度。对于多插件以及修改后的开源数据库一样适用。
本方案提出的发明有以下几个优点:
1、部署简易,维护成本低。
2、适用于任意可提供统一挂载点的网络存储系统。
3、不影响数据库原生功能。
4、高可用实现成本低,可在本地数据库服务器直接部署。
5、适用于老旧系统对数据库高可用需求改造,对程序依赖程度低。
6、对业务端可看作单一数据源进行链接,对业务端需求无特殊要求。
附图说明
图1为本发明实施例的基于盘柜的主从高可用切换方法流程图。
具体实施方式
为了便于本领域技术人员的理解,下面结合实施例与附图对本发明作进一步的说明。
本发明的技术方案适用于通过san交换机进行外接盘柜的数据库服务器,或可提供统一挂载方式的文件存储系统例如NFS、GlusterFS、Ceph。数据文件需储存于盘柜的挂载盘上。用于实现数据库高可用切换,针对性的解决系统对数据安全性要求高,能够有效的避免因传统数据库切换而导致的主从数据不一致而造成的数据缺失。降低数据库在高速读写状态下崩溃而导致的数据库丢失。
实施例:基于盘柜的mysql主从高可用切换方法,采取软硬件相结合的方式去解决高可用问题,如图1所示,具体实现逻辑如下:
1)依托于盘柜的数据高安全性。需要盘柜支持基于uuid的磁盘挂载与释放,利用san交换机组成高性能盘柜服务器网络,该网络内的服务器均可以自由的挂载盘柜中建立的数据磁盘。
2)利用keepalive的触发条件可编写特性对虚拟IP、数据库端口的存活进行监听,并在虚拟IP消失时进行数据库服务器的关闭动作和盘柜虚拟磁盘的卸载动作,因为在同一个脚本内进行动作,所以释放数据磁盘和迁移动作会同时进行,不过更优的处理方式是在脚本内写明先进行磁盘释放挂载动作,再进行其余步骤。
3)从数据库服务器上的虚拟IP和数据库存活监听程序会根据当前的存活情况做出判断,对目前数据库的运行状态进行监听,在程序出错时可以准确的确认虚拟IP是否已经完成了漂移,当确认虚拟IP已经被keepalive迁移至从服务器后,从数据库服务器的keepalive会尝试进行磁盘挂载,并启动从数据库服务器上的数据库实例。
4)监听程序仅安装在从数据库服务器启动,主服务器的数据库切换仅仅依赖于keepalive程序。而从数据库服务器则仅仅是对主服务器出错后的一个服务接替监听程序。这种主从服务相互独立的设计安排是为了尽可能的保障服务的高可用性。两个服务互相独立,确保单方面出错时不影响另一侧的服务器。
5)利用mysql等数据库存储的一切皆文件的特性,在数据库出现故障时仅仅需要对数据存储文件的迁移就可以完成对整体数据的迁移工作。通过主从数据库服务器上对盘柜数据盘的释放与挂载来完成数据库实例的启动,达到数据库数据的迁移和数据一致性的保证。
6)该系统采用脚本监听方式进行系统监听,可根据业务需要调整程序的监听频率。
当进行主从切换后,监听程序也会触发告警机制,维护人员便可第一时间进行干预,最大程度上的保证业务的安全运行。
以上的实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。
Claims (4)
1.一种基于盘柜的主从高可用切换方法,其特征在于:
对于支持基于通用唯一识别码uuid的磁盘挂载与释放的盘柜,利用san交换机组成盘柜服务器网络,盘柜服务器网络内的服务器能够自由的挂载盘柜中建立的数据磁盘;
在主数据库所在的服务器上创建虚拟IP,利用安装在从数据库服务器的数据库存活监听模块keepalive,对虚拟IP、数据库端口的存活进行监听,并在当数据库端口或虚拟IP任意一处发生异常时进行数据库服务器的关闭动作和盘柜虚拟磁盘的卸载动作;
keepalive进行虚拟IP的漂移,使得从数据库服务器上快速建立原有虚拟IP,当该动作触发时,从数据库服务器上的keepalive可发现虚拟IP的建立,从而触发盘柜数据盘的挂载和数据库的启动,来完成主从切换动作;
从数据库服务器上的虚拟IP和数据库存活监听模块keepalive根据当前的存活情况做出判断,对目前数据库的运行状态进行监听,当数据库端口或虚拟IP任意一处发生异常时,确认虚拟IP是否已经完成了漂移,当确认虚拟IP已经被keepalive迁移至从数据库服务器后,keepalive将进行磁盘挂载,并启动从数据库服务器上的数据库实例;
在主数据库出现故障时对进行数据存储文件的物理迁移。
2.根据权利要求1所述的基于盘柜的主从高可用切换方法,其特征在于:
当主服务器的keepalive探测到数据库出现故障时,进行服务器的虚拟IP的迁移并触发当前服务器的数据库关闭和数据磁盘卸载动作,主动停止当前在用数据库,释放主数据的磁盘,从数据库服务器上的keepalive,将数据磁盘通过uuid重新挂载到从数据库服务器上,启动从数据库服务器上的数据库。
3.根据权利要求1所述的基于盘柜的主从高可用切换方法,其特征在于:
采用脚本监听方式进行系统监听,可根据业务需要调整程序的监听频率。
4.根据权利要求1所述的基于盘柜的主从高可用切换方法,其特征在于:
当进行主从切换后,keepalive触发告警机制,维护人员进行干预,最大程度上的保证业务的安全运行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210926163.7A CN115292283A (zh) | 2022-08-03 | 2022-08-03 | 一种基于盘柜的主从高可用切换方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210926163.7A CN115292283A (zh) | 2022-08-03 | 2022-08-03 | 一种基于盘柜的主从高可用切换方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115292283A true CN115292283A (zh) | 2022-11-04 |
Family
ID=83825717
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210926163.7A Pending CN115292283A (zh) | 2022-08-03 | 2022-08-03 | 一种基于盘柜的主从高可用切换方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115292283A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115639969A (zh) * | 2022-11-17 | 2023-01-24 | 广州粤芯半导体技术有限公司 | 一种存储盘主备切换方法、装置、计算机设备 |
CN117424352A (zh) * | 2023-12-19 | 2024-01-19 | 浙江简捷物联科技有限公司 | 储能柜主从自主切换方法及系统 |
-
2022
- 2022-08-03 CN CN202210926163.7A patent/CN115292283A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115639969A (zh) * | 2022-11-17 | 2023-01-24 | 广州粤芯半导体技术有限公司 | 一种存储盘主备切换方法、装置、计算机设备 |
CN117424352A (zh) * | 2023-12-19 | 2024-01-19 | 浙江简捷物联科技有限公司 | 储能柜主从自主切换方法及系统 |
CN117424352B (zh) * | 2023-12-19 | 2024-03-12 | 浙江简捷物联科技有限公司 | 储能柜主从自主切换方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115292283A (zh) | 一种基于盘柜的主从高可用切换方法 | |
CN107111457B (zh) | 跨集群冗余配置中的非间断的控制器替换 | |
CN103077242B (zh) | 一种实现数据库服务器双机热备的方法 | |
WO2017177941A1 (zh) | 主备数据库切换方法和装置 | |
CN106850255B (zh) | 一种多机备份的实现方法 | |
CN111581284A (zh) | 一种数据库高可用性方法、装置、系统和存储介质 | |
CN102467508A (zh) | 提供数据库服务的方法及数据库系统 | |
CN104536971A (zh) | 一种具备高可用性的数据库 | |
US20150254271A1 (en) | Distributed File System and Data Backup Method for Distributed File System | |
CN110727709A (zh) | 一种集群数据库系统 | |
CN103294701A (zh) | 一种分布式文件系统以及数据处理的方法 | |
CN113783765B (zh) | 一种实现云内网和云外网互通的方法、系统、设备和介质 | |
CN108173971A (zh) | 一种基于主备切换的MooseFS高可用方法及系统 | |
CN113254275A (zh) | 一种基于分布式块设备的MySQL高可用架构方法 | |
CN102065138A (zh) | 无盘系统中实现服务器热备份控制的方法 | |
CN107357800A (zh) | 一种数据库高可用零丢失解决方法 | |
CN111240901B (zh) | 分布式块存储系统的节点动态扩展系统、方法及设备 | |
CN115794499A (zh) | 一种用于分布式块存储集群间双活复制数据的方法和系统 | |
CN103036722A (zh) | 无盘系统中实现服务器热备份的方法 | |
CN105323271B (zh) | 一种云计算系统以及云计算系统的处理方法和装置 | |
CN113961397A (zh) | 一种基于备份容灾系统的高可用集群容灾方法 | |
JP2005055995A (ja) | ストレージ制御方法、および、冗長化機能を有するサーバシステム | |
CN107181608B (zh) | 一种恢复服务及性能提升的方法及运维管理系统 | |
CN109218386B (zh) | 一种管理Hadoop命名空间的高可用方法 | |
CN104052799A (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 |