版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、技术创新,变革未来MySQL与PostgreSQL数据库高可用分析实践一、 高可用原理 二、 mysql高可用三、 PostgreSQL高可用四、 Cloud高可用与高可用发展目录第一章高可用原理高可用定义系统无中断地执行其功能的能力,代表系统的可用性程度,是进行系统设计的准则之一。无中断 要通过“冗余”来是实现高可用。 一个服务单点故障存储高可用(有状态)计算高可用业务高可用数据库高可用三模块数据同步模块-高可用基础,实现“冗余”和“多副本”高可用管理模块-高可用实现,状态判断,故障切换统一访问模块-高可用接口,对外应用访问透明数据库高可用三模块 数据同步模块数据库功能:- 事务 ACID-
2、 日志系统同步建立:- 日志归档- 同步用户- 建立复制关系数据一致与可用性权衡:- 异步复制- 半同步复制- 同步复制数据库高可用三模块 高可用管理模块节点关系(部署架构)- 集中式- 协商式- 分布式状态判断(发现异常)- 状态检测- 状态存储异常处理(处理异常)- 故障切换过程 failover- 故障恢复过程 failback数据库高可用三模块 统一访问模块应用与数据库的访问方式:直连数据库,通过中间层访问数据库直连数据库- 业务程序与数据库耦合性高- 发生故障切换,业务需调整,必须有手工操作通过中间层访问数据库- 统一入口,对应用透明,故障切换时 endpoint 不发生改变- VI
3、P- DNS- proxy典型通用高可用方案keepalived + haproxy + 服务资源keepalived- vrrp 控制vip的漂移- watch dog- health checkhaproxy- 4层/7层代理,健康检查,负载均衡服务资源- 数据库/web服务器/vip等各种资源- 编写shell脚本(状态脚本,切换脚本等)- 高可用软件定义脚本调用逻辑第二章mysql高可用实践mysql 数据同步日志格式- log_bin- binlog_format=row- server_id主从复制原理- Master - binlog - IO thread - Relay lo
4、g - SQL thread - Slave同步类型- 异步复制 (CHANGE MASTER TO master_connect_info MASER_LOG_FILE MASTER_LOG_POST)- 半同步复制 (主从需安装半同步plugin,开启半同步参数,主事务提交至少有一个slave接收)- GTID 复制(开启GTID参数,简化 CHANGER MASTER)- MGR 复制(依赖Paxos协议,复制组中一半以上的节点通过,事务才能提交)mysql高可用方案之 MHAMHA架构数据同步模块- MySQL异步复制- MySQL半同步复制集群管理模块- MHA Manager集中管
5、理- MHA Node状态交互- failover,online_change脚本统一访问模块- vipmysql高可用方案之 MHAMHA搭建ssh节点互信mysql同步集群所有节点部署 MHA-Node安装配置 MHA- manger,创建脚本 5 添加 vip启动 MHA 服务master故障时,高可用切换实例在线转移角色,切换后恢复MHA高可用管理状态检测监控和故障转移流程- 监测主 - 检测从 - 关闭主 - 应用日 志 - 恢复一个新主 - 激活主 - 恢复从在线切换过程mysql高可用方案之 MySQL Innodb ClusterInnodb Cluster架构数据同步模块-
6、MySQL Group Replication 组复制集群管理模块- MySQL Shell (创建和管理集群)统一访问模块- MySQL Router (负载均衡,故障转移)mysql高可用方案之 MySQL Innodb ClusterInnodb Cluster 搭建 1 操作系统环境准备数据节点安装mysql和mysql-shell数据节点/etc/f 添加组复制参数数据节点初始化mysql实例,搭建组复制 5 数据节点用 mysql-shell 配置实例6 管理节点用 mysql-shell 创建和添加实例 7 管理节点安装和启动 mysql-router8 验证 cluster 集
7、群Innodb Cluster高可用管理数据节点部署 mysql MGR 管理节点部署 mysql router所有节点都部署 mysql shellMGR 建议采用 Single-Primary 模式 注意功能限制mysql高可用方案文档与测试官方文档mysql MHA: /archive/p/mysql-master-ha/ /yoshinorim/mha4mysql-manager /yoshinorim/mha4mysql-nodemysql innodb cluster:/doc/refman/8.0/en/mysql-innodb-cluster-introduction.html
8、第三章PostgreSQL高可用实践PostgreSQL 数据同步日志格式- 日志格式,日志归档,wal_level=logical主从搭建- 复制账号、全量同步、建立复制关系- 异步流复制- 同步流复制- 逻辑复制同步类型- 基于共享存储的同步 (DRBD 或 SAN存储)- WAL日志或流复制同步 (stream replication)- 基于触发器的同步 (Slony 或 Bucardo)- 基于中间件的同步 (pgpool-II 或 Tungsten)PostgreSQL 高可用方案之 pgpool-IIpgpool-II 架构数据同步模块- PostgreSQL异步流复制集群管理模
9、块- pgpool (管理节点,负载均衡,健康检查)统一访问模块- pgpool-II vip (负载均衡,故障转移)PostgreSQL 高可用方案之 pgpool-IIPostgreSQL pgpool-II 搭建 1 操作系统环境准备安装PostgreSQL 12软件搭建PostgreSQL实例异步流复制环境安装配置 pgpool-II- 端口,后端节点,负载均衡- 复制模型,流复制检测- watchdog,vip,故障转移脚本 5 配置PCP管理端口,启动pgpool-II 6 验证 pgpool-II 高可用集群pgpool-II 继承的功能很多,主要有:- 连接池- 只读请求负载均
10、衡- 高可用- 有四种运行模式,一般使用物理流复制 模式,其他三种很少用。需要注意:- 切换脚本主库与备库的数据差异- 性能有一定损失- 主备切换后,需要手工恢复集群状态PostgreSQL 高可用方案之 patroniPG patroni 架构数据同步模块- PostgreSQL异步流复制集群管理模块- etcd/ZK/consul集群 (记录集群状态)- Patroni (管理集群状态)- haproxy (负载均衡)统一访问模块- keepalived vipPostgreSQL 高可用方案之 patroniPostgreSQL patroni 搭建 1 操作系统环境准备2 安装Post
11、greSQL 12并配置流复制 3 安装并配置 etcd 集群安装配置 patroni- 安装python环境- 安装patroni依赖包- 设置patroni配置文件启动patroni,确认集群状态 6 验证 patroni 高可用集群patroni 优势主要有:- 健壮性高- 支持多种方式- 支持主备延迟设置- 自动化程度高- 能避免脑裂需要注意:- 涉及的组件比较多- 处理流程图比较复杂PostgreSQL高可用方案文档与测试官方文档pgpool:https:/ https:/mediawiki/index.php/Documentationpatroni: /zalando/patroni https:/patroni.readthedocs.io/en/latest/第四章Cloud高可用与高可用发展Cloud高可用RDS服务:- 需要 wal_level=logical- 基于流复制的高可用- 基于共享存储的高可用- 高可用切换时间与读、写服务自建高可用性限制:- 无法使用 vip 和 keepalived- RDS服务只有内置slb和proxy- ESC自建proxy + slb高可用发展趋势目标和基本原理- 根本目标基本的三方面原理不变高可用实现方式- 手工需要判断的内容转化为自动内容-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理风险应对的持续质量改进方法
- 呼吸系统急症入院护理指南
- 护理学课件学习软件比较
- 护理人性化服务与护理挑战
- 护理病区护理服务患者教育
- 护理剪指甲技巧全攻略
- 护理心理评估与支持
- 护理员跌倒安全意识
- 护理院护士护理沟通策略培训
- 科学技术法试题及答案
- 2026年河北省中考物理试卷(含答案及解析)
- 2026届贵州省遵义市凤冈县四年级数学下学期期末综合测试试题含解析
- 2026广东深圳市公安局第十四批招聘警务辅助人员考试参考题库及答案详解
- 2026天津市面向甘南籍未就业高校毕业生招聘事业单位40人笔试参考题库及答案详解
- 2026年小学心理专题活动设计方案
- 肩袖损伤规范化诊治临床指南 (2026 版)
- 中国咽炎防治指南2025版
- 2026年省级行业企业职业技能竞赛(家畜(猪)繁殖员)练习题及答案
- 超市进场收费协议书
- 中国CDM能力建设项目培训讲义课件
- 南京大学人工智能学院博士生培养方案
评论
0/150
提交评论