高可用架构
一、什么是高可用
- 高可用性指的是通过尽量缩短因日常维护操作和突发的系统崩溃所导致的停机时间,以提高系统和应用的可用性。
二、导致系统不可用的因素
- 服务器磁盘空间耗尽 ,备份或者各种查询日志突增导致的储存空间被沾满。mysql由于无法记录二进制日志,无法处理新的请求而产生的系统不可用的故障。
- 性能糟糕的sql
- 表结构和索引没有优化
- 主从数据不一致
- 人为的操作失误
三、解决方案
-
建立完善的监控及报警系统
-
对备份数据进行恢复测试
-
正确配置数据库环境
-
对不需要数据进行归档和清理
-
避免单点故障(单点故障是指在一个系统中提供相同功能的组件只有一个,如果这个组件失效了,就会影响整个系统功能的正常使用,组成应用系统的各个组件都可能成为单点。)
四、如何避免mysql单点故障
-
利用sun共享储存drdb磁盘复制解决mysql单点故障。
-
利用集群或dnb集群来解决mysql单点故障。
-
利用mysql主从复制来解决mysql单点故障。
-
主从切换及故障转移