CSDN云计算 京东容器数据库系统,管理1800台物理计算节点,生产1W 多MySQL Docker容器实例。架构简单可靠,Docker容器计算平台与MySQL集群管理平台解耦处理。为描述方便,京东容器化数据库系统命名为CDS,底层京东Docker容器计算平台命名为JDOS。 本文重点介绍JDOS如何支持CDS。CDS是更大的话题,后续数据库团队会分享相关实践。 介绍 整体架构 CDS与JDOS解耦,CDS负责管理MySQL主从等集群方式的生命周期管理;京东JDOS负责单个MySQL容器实例生命周期管理。京东Docker容器集群分多Region,多POD部署,且不同集群之间网络互通,有效支持每个MySQL实例可被业务系统直接调用,确保极佳的网络延迟性能。 MySQL集群实例 优先级 配额
监控 告警 数据库cluster自身DB层面的告警由云数据库集群平台提供。涉及到底层计算,网络,存储等资源层面的告警,由底层京东Docker容器平台提供数据给云数据库集群。 JDOS架构 JDOS是京东统一数据中心计算,网络,存储管理平台。除支持CDS外,也支持京东全部的业务系统运行环境。 JDOS系统基于京东扎实的Openstack,Docker等开源技术的持续研发能力,提供稳定,高性能的计算资源平台。每个组件都是独立服务部署,采用MQ互相交互信息,京东重构了主要的核心组件服务,使JDOS平台可以支持更大的集群规模,目前稳定在6K台物理计算节点。重新设计JDOS升级功能,做到平滑无感知,有效支撑长时间运行容器的稳定性。 JDOS控制节点
调度 调度架构简单,负载可扩展。 主要思想是,先一系列filter掉不满足要求的计算节点,然后打分,最后做排序,选择最优并返回调度结果。 资源分区调度 按Region,POD,Zone,物理机等4个层面划分计算区域,调度算法灵活可配确保业务特点与计算硬件环境特点结合适配。如CDS的机器全部是SSD的硬盘,所以JDOS会在每个数据中心提供CDS SSD Zone的tag,把CDS的创建请求优先调度到具有SSD硬盘的计算Zone。 亲和性和反亲和性调度
可扩展性 底层JDOS资源池的扩容性,按使用率,有计划进行扩容底层物理计算资源。CDS每个库使用资源的平滑扩容,比如CPU,内存,网络,磁盘空间均支持平滑扩容功能。采用直接重置修改cgroup的配置,即可达到平滑扩容的目的。结合京东设计的cpu set与cpu share并存的资源隔离策略,提升资源使用率。 性能 主要关注MySQL运行在Docker容器内的实际DB层面的性能。 MySQL实例性能 性能测试环境部署图 测试环境硬件配置 多容器实例基准测试 测试模型 场景描述 基础数据为:8个容器,每个容器基础数据量为1000W(532M),单表加压,每个表10W行记录,同时对多个容器发起相同的请求,测试响应情况,并对比同等线程数下物理机的情况。 容器测试数据 物理机数据 稳定性测试 场景描述 单容器1000W基础数据,单表请求10W数据,8容器并发运行24小时。 性能表现 CPU表现 磁盘表现 网络表现 本文转载于微信公众号: 点滴(hbswdd),更多微信文章请扫描关注公众号: |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|