IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 炫“库“行动-人大金仓有奖征文-基于故障注入的数据库高可用测试 -> 正文阅读

[大数据]炫“库“行动-人大金仓有奖征文-基于故障注入的数据库高可用测试

【本文正在参加炫“库”行动-人大金仓有奖征文】

https://marketing.csdn.net/p/98bd30353e7cb998b6070a89e8b91edb

数据库集群的高可用性是指集群内一个服务器发生如网络故障、硬件故障、数据库进程宕机等异常情况时,其他的服务器能够尽快地对外提供服务,减少停机时间。即高可用集群实现了自动侦测故障、自动切换/故障转移和自动恢复的功能。目前常见的高可用方案包括:共享存储,双机高可用,主从高可用等。

共享存储:指多个数据库资源共享存储,其中一个数据库为主,其它的为备用数据库,当主数据库故障时,由资源转移功能进行应用的切换,以继续提供服务。

双机高可用:指使用两台服务器,互相备份,共同执行同一服务,一台服务器作为主库,另一台服务器作为备库,当主库故障后,备库作为读写库,原主库恢复后作为备库。

主从高可用:指使用两台或两台以上服务器,一台服务器作为主库,剩下的服务器作为备库;主库故障后,剩余备库经过竞选后,其中一台服务器升主,备库升为主库,原主库恢复后作为备库。

人大金仓KES也是采用以上的架构实现集群的高可用。上述的几种架构中,当正在提供服务的机器发生故障时,通过对故障的自动处理来保证集群的高可用性。因此,对于高可用产品来说,提前模拟出各种各样的故障,针对故障给与解决方案,就显得尤为重要,并且可以更进一步地保证系统的可靠性与可用性。KES的高可用集群使用Chaosblade作为故障场景的模拟工具,来测试和验证集群高可用性的各项功能。

ChaosBlade是阿里巴巴开源的一款遵循混沌工程原理和混沌实验模型的实验注入工具,并结合了集团各业务的最佳创意和实践,提供了丰富的故障场景实现。Chaosblade 的客户端工具是 blade,下载或编译后可直接使用,且使用简单、扩展性强。

KES集群使用Chaosblade提供的命令模拟状态变化类、网络类、资源耗尽类等故障。

状态变化类故障指:进程hang住,进程被杀死等。

网络类故障指:网络中断,网络丢包,网络延迟,端口占用等。

资源耗尽类故障指:CPU利用率高,磁盘满,内存使用率高等。

下面以具体的测试用例,说明基于Chaosblade模拟的故障进行集群高可用的测试。

场景:高并发业务背景下,一主两备集群,主库存在节点网络异常,集群可自动故障转移与恢复。

使用到的Chaosblade命令:

./blade create network loss --percent 100 --interface xxx --timeout xxx

此命令表示:创建网络中断故障,即让机器的整个网卡不可访问,不可访问的时间为xxx秒。xxx秒后,故障自动销毁。若在timeout时间内故障未自动销毁,可使用下面的命令,手动将其销毁。

./blade destroy uid

其中uid是故障创建成功返回的结果中uid的值。

场景步骤:

  1. 搭建一主两备的集群,集群采用默认的参数配置;
  2. 业务通过连接vip执行多表并发insert语句;
  3. 使用Chaosblade模拟主机网络中断故障,命令如下:

./blade create network loss --percent 100 --interface ens192 --timeout 120

  1. 主机网络恢复后,集群状态恢复正常后,停止业务;
  2. 检查业务执行情况;
  3. 检查集群主备机之间数据的一致性。

测试结果:

  1. 当主机发生网络故障后,备机上的监控程序检测到与主机连接异常,并尝试多次重新连接主机,此时业务中断;
  2. 所有备机确定与主机已失联;
  3. 通过竞选规则,在备机中选出新主;
  4. 备机成为集群的新主后,业务恢复;
  5. 网络故障超时后,主机网络恢复,新主去恢复原主机;
  6. 同时作为新主的备机,让其他的备机重新加入集群,集群状态恢复正常;
  7. 集群状态正常后停止业务,查看集群主备之间的数据是一致的。

上述测试结果表明:使用Chaosblade模拟网络中断故障后,KES集群能够自动监测故障,并进行故障的转移,主备切换,自动恢复集群及业务,并保证主备的数据一致性。

【本文正在参加炫“库”行动-人大金仓有奖征文】

https://marketing.csdn.net/p/98bd30353e7cb998b6070a89e8b91edb

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-16 19:42:31  更:2021-10-16 19:43:36 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 0:55:10-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码