版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、移动云数据库RDS的架构和实现技术创新,变革未来移动云数据库RDS 2019年正式立项启动研发,底座基于k8s+容器。2020开始正式上线,能够提供多种类型的数据库服务,支持多 种规格设置。当前已上线11个直管资源+5个省资源池,用效订单 5000+。明年还有2个低成本中心和其他所有省建资源池上线数据 库服务。概述目标12架构设计3关健技术4产品介绍5未来规划目录CONTENTS目标提供那种类型的数据库服务,Aurora架构的数 据库 OR 单机数据库托管上云?两类产品定位是否一致,能否共存移动云主流客户需求(当前主要是政企客户)研发周期团队现状数据库RDS产品定位是什么?便宜好用Aurora
2、 数据库架构RDS 数据库架构架构设计容器应用(云原生)是未来应用的主流趋势虚拟化技术选择容器还是虚拟机? 容器的编排基于k8s,还是自已实现?虚拟机容器启动速度慢,分钟级快,秒级运行形态运行于Hypervisor上直接运行在宿主机内核上并发性一台宿主机上十几个,最多几十个上百个,甚至数百上千个性能逊于宿主机接近宿主机本地进程资源利用率低低高安全性高低自动化部署难容易灰度发布难容易实例扩缩容难容易微服务支持差好架构设计总体技术架构图云数据库RDS采用容器编排管理方式,借助K8S实现弹性能力;为了更好的支撑数据库服务,对K8S进行定制化开发,同时提升数据库监控告警能力,将 其对接K8S故障处理,
3、使得大部分原本需要人为干预的故障,可以自动恢复。K8S基础功能借助API Server、kubelet、etcd等组件实现数据库的弹性和快速部署变更恢复能力AdminServiceAdminService模块统一对外暴露所有数据库服务,以restful API方式暴露RDS Controller新定义一种MySQL资源类型,加载到RDS Controller模块中管理,由该模块根据MySQL活动的具体情况,对接K8S功能RDS Scheduler增加MySQL服务调度算法,为待调度的MySQL服务类的Pod列表上的每一个Pod从Node列表中选择一个最合适的Node;监控告警故障检测恢复新增云
4、数据库监控告警模块,负责云数据库的实例、操作等监控告警,包括MySQL实例、MySQL Operator等。处理流程:API Server接受用户指令(实例的创建、删除、更新等)和必要的数据库参数,并提交给 RDS Controller管理,并根据RDS Scheduler判断调度的节点,最后由Node中的 kubelet具体实施用户指令。故障检测并实施恢复,将由Controller来判断,并根据实际情况向kubelet发出一系列恢 复指令。架构设计处理流程:Reflector通过检测 Kubernetes API 来跟踪该扩展资源类型的变化,一旦发现有变化,就将该Object 存储队列中,I
5、nformer 循环取出该 Object 并将其存入Indexer 进行检索,同时触发 Callback 回调函数,并将变更的 Object Key 信息放入到工作队列中,此时自定义 Controller 里面的 Process Item 就会获取工作队列里面的 Key, 并从 Indexer 中获取 Key 对应的 Object,从而进行相关的业务处理。Reflector:该组件是用来监测指定资源类型的 Kubernetes API,当监测 API 接 收到新资源类型实例变化时,它将通过List API 来获取新创建的 Object,并将其 放入到 Delta Fifo queue中。Inf
6、ormer:该组件是用来将 Delta Fifo queue 中的 Object 循环取出,本地保存Object,方便后面使用索引检索。Indexer:该组件是为 Object 提供索引功能,典型的用例就是通过 Object 的标 签创建索引,并且使用线程安全的数据存储来存储Object 以及它的 Keys。Informer reference:该组件是知道如何使用自定义资源 Object 的 Informer实例的引用,我们需要在自定义Controller 代码中创建适当的 Informer。Indexer reference:该组件是知道如何使用自定义资源 Object 的 Indexer
7、 实例 的引用,我们需要在自定义 Controller 代码中创建适当的 Indexer,并且将使用 该引用处理后续检索 Object。Resource Event Handlers:该组件是当 Informer 要部署 Object 到我们自定 义 Controller时,调用的Callback函数。这些函数可以获取被调度Object的Key, 并将Key 存入工作队列以便进行下一步处理。Work queue:该组件是我们自定义 Controller 中创建用来解耦一个处理中的Object,也是上边 Resource Event Handlers 存储 Key 的地方。Process Ite
8、m:该组件是我们自定义 Controller 中创建用来处理 Work queue 的一些列函数,这些方法通常使用 Indexer reference 并检索该 Object 对应的 Key。RDS Control 架构图移动云数据库类的产品最终架构形态PostgreS QLDMDBRedisSQLServ erMySQLInfluxDBK8S运维 管 理监控管理告警 设置告警 管理云盘对象存储Elasticsearch调度器本地盘管理服务治理统一服务层控 制 器核心插件OP安全网关期望达成的目标:大集群, 划分不同的资源池(每个资源池提供不同的数据库服务)公共服务能力共享,例如 ES,对象,
9、云盘统一服务层,和公有云管理模块解耦引进微服务治理框架,最终往serverless 架 构演进资源超分管理关健技术原生的K8S+docker作为底座,无法很好的支撑我们的数据库服务管理,为了更好的打造 一个适合数据库RDS服务的基础底座,提出一系列措施:引进第三方开源K8S插件,给K8S提供额外的能力引入新硬件,解决性能,或者安全问题改造K8S,使K8S适配更复杂计算场景自主开发相关插件,给K8S提供额外功能关健技术原生k8s 本地盘支持非常差,无法满足我们的要求:无法动态分配PV无法管理磁盘容量无法管理磁盘IOPS不能很好的支持磁盘类型以及位置调度针对本地盘的问题,基于CSI+LVM实现本地
10、盘管理,核心 能力如下:动态实现PV分配支持本地盘快照,以及基于快照恢复PV(快照保存在S3)支持容量超分支持基于物理位置,磁盘类型的调度支持条带支持在线扩容支持不同的文件系统关健技术本地盘相关StorageClass定义,以及PVC定义关健技术快照相关资源定义,以及基于快照创建的PVC定义关健技术本地盘调度器在原生的调度器基础上添加了相应的预选/打 分函数基于容量调度(预选/打分)基于容量超分比调度(预选/打分)基于地理位置调度(预选)支持POD重启调度MYSQL调度器支持灵活配置错误容忍范围,例如跨Region/AZ/机架/物理机均衡每个物理节点主备实例数目,达到资源使用的平衡关健技术引进
11、开源Metallb,基本原理如下:Metallb 会在Kubernetes 内运行,监控服务对象的变化,一旦 察觉有新的LoadBalancer 服务运行,并且没有可申请的负载均 衡器之后,就会完成两部分的工作:地址分配用户需要在配置中提供一个地址池,Metallb 将会在其中选 取地址分配给服务。地址广播根据不同配置,Metallb 会以二层(ARP/NDP)或者BGP 的 方式进行地址的广播。关健技术MySQL 网关,类似HTTP反向代理(开发中)支持黑白名单支持安全审计支持流量管理计算,引进KATA,计划做为Mysql 网关容器安全加固支持不同OS内核待解决的问题本地盘IOPS精准控制当
12、前通过cgroup控制本地盘IOPS,但是无法解决文件系统缓存引入的的问题,cgroup v2能够解决文件系统缓存的 IOPS控制,但是docker 短期内无法整合cgroup v2K8S大规模管理:K8S规模变大以后,ETCD会成为瓶颈,思路有二个,1. 拆分ETCD, 2. 使用postgresql 代替etcd高性能云盘:当前云盘性能和竞争对手有差距,目前正在研发高性能云盘,预估明年Q3提供服务数据库服务外网暴露,当前数据库服务只能通过移动云虚机访问,无法提供外网访问.。产品介绍产品介绍产品介绍未来规划移动云未来规划三类数据库服务,能够全方位覆盖用户使用场景,满足用户的不同使用需求产品架构类型针对业务场景核心竞争力聚焦能力研发能力云数据库MySQL传统数据库托管上 云小规模:数据量小于1TQPS小于5W ,写TPS小于1W并发小于1000高性价比大规模Cluster管理,精细 化的资源隔离,精准的 调度算法基于MySQL自研 云原生数据库类Aurora中规模:数据量100T 以内QPS100W 以内,写TPS小于 5W并发小于5000稳定性,高性能MySQL内核改造 硬件编程基于TiDB联合研发云原 生数据库(正在PingCAP 成立联合实验室)类Spanner大规模:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026黑龙江交易集团面向集团内部选聘牡丹江联合产权交易有限公司副总经理(牡丹江服务中心副主任)建设考试备考题库及答案解析
- 2026天津市消防救援总队水上支队招录政府专职消防员95人建设考试参考题库及答案解析
- 2026江苏徐州市教育局直属学校招聘高层次人才18人建设笔试备考试题及答案解析
- 2026浙江宁波市鄞州人民医院医共体编外人员招聘1人建设笔试备考题库及答案解析
- 2026河南郑州升达经贸管理学院招聘工作人员若干名建设笔试模拟试题及答案解析
- 2026中国中煤能源集团有限公司西南分公司(四川分公司)第四批招聘8人建设笔试备考试题及答案解析
- 2026陕西榆林人力资源服务有限公司招聘12人建设笔试模拟试题及答案解析
- 2026北京市第五十七中学招聘建设考试备考题库及答案解析
- 2026四川九州光电子技术有限公司招聘行政管理岗1人建设考试参考题库及答案解析
- 2026西安医学院第三附属医院招聘(6人)建设笔试备考试题及答案解析
- DB29-296-2021 海绵城市雨水控制与利用工程设计规范
- 资源教室工作方案设计
- 新供应商QSA-QPA审核checklist及审核报告
- 2015版ISO90001标准课件教学
- 溺水自救与施救课件
- GB/T 12451-2023图书在版编目数据
- 年产万吨电铜电解车间的设计
- 无机及分析化学说课
- 家庭装修施工合同
- 2021年湖南省衡阳市国家公务员公共基础知识真题二卷(含答案)
- 物业品质服务提升计划表最终版
评论
0/150
提交评论