《专场8.1-斗鱼云原生数据库建设实践-赵闪.pdf》由会员分享,可在线阅读,更多相关《专场8.1-斗鱼云原生数据库建设实践-赵闪.pdf(20页珍藏版)》请在三个皮匠报告上搜索。
1、斗鱼数据库云原生架构实践2武汉斗鱼网络科技有限公司 赵闪1.斗鱼云原生数据库的使用背景2.云原生架构体系实践3.云原生场景下的运维实践4.未来的发展目录斗鱼云原生数据库的使用背景斗鱼云原生数据库的使用背景44业务分散各个业务较为独立混合负载TP类应用和AP类应用资 源 使 用 不 平 衡不同业务负载和场景不同对资源的SLA标准不同业 务 具 有 突 发 性业务存在波峰波谷按量使用资源可用性要求高RTO vs RPO业务单一应用隔离相互无影响云原生架构体系实践云原生架构体系实践云原生架构体系实践云原生架构体系实践1.容器原生8通过自研 Operator 实现Redis,Mysql的云原生化sid
2、ecar备份恢复高可用切换心跳检测核心controller识别规格需求弹性扩缩容版本管理账号权限管理2.服务状态9通过Operator来完成数据库有状态服务的自动化管理,Controller 具有状态服务的数据分布、pod 的异常、副本的复制、状态的恢复等专业运维能力,对研发而言,机器宕机不需要介入运维,数据库自动完成了从有状态服务向无状态服务转变。反亲和性反亲和性对于单可用域的集群,保证单个分片的 pod 调度到不同的 node 节点滚动升级滚动升级资源规格变更,Operator 可以通过对 Statefulset 和 数据库集群的状态控制,实现无缝的资源重建实例故障实例故障Pod 异常后会
3、删除重建,新 Pod 的 IP 会发生变化,Operator 会清理旧的实例信息,然后将新启动的 Pod 作为新的 实例节点加入集群,通过数据复制重建集群分片的数据高可用。3.弹性伸缩10 如根据流量波峰波谷规律,可定期在波峰、波谷到来时对 Proxy 和实例进行扩缩容 根据业务的数据容量规律,可一键对集群扩容缩容和数据均衡。4.高可用11 引入sentine作为ha组件,实现故障切换 客户端可以通过监听哨兵的事件来获取主从配置 基于k8s反亲和性,pod 分布在不同的宿主机,包括2个redis pod(一个pod包含redis容器和redis监控容器),3个哨兵pod k8s集群内应用可通过
4、cluster IP或集群域名访问,集群外应用可采用slb ip或集群外域名访问 redis和sentinel在容器启动时会执行初始化,完成sentinel集群及redis主从架构的部署 slb 根据readniess判断主从关系,并用主库对外提供访问5.高可用切换流程12 主备切换环境检查:参数、延迟、链接禁止写入记录当前快照信息主从角色切换打开读写检查参数和延迟完成切换6.服务形态13 单主 标准版(主从)集群版 Proxy集群版云原生场景下的运维实践云原生场景下的运维实践141.资源创建151.资源创建17一键备份至云端apiVersion: 资源自动回收 运维平台化 即开即用即回收未来发展趋势19内存池化计算-内存-外存”三层资源彻底解耦可分别进行弹性热伸缩 基于内存池实现 HTAP行列混存,OLTP基于行数据实现,AP基于列数据TP和AP SQL引擎分类处理基于AI实现节点弹性伸缩 全场景智能化具备自检测、自诊断、自调优、自运维及自安全的能力,覆盖数据库全生命周期的管理与优化