随着云计算技术的不断发展,云原生成为了一种新兴的技术趋势。美团作为中国领先的互联网企业之一,也在积极探索云原生技术。本文将详细介绍美团分布式数据库Blade的云原生探索与实践,以及其在美团业务中的应用和未来展望。

一、Blade简介

Blade是美团自研的一款分布式关系型数据库,基于开源TiDB构建,同时兼容MySQL协议。Blade的核心特性包括高可用、易扩展、强一致和高度兼容MySQL协议,能够支持海量数据的分布式存储和计算。

二、运维架构演进

在Blade 1.0版本中,基于开源TiDB构建,使用基于虚拟化的资源隔离,解决了部分RDS场景下业务痛点。然而,随着业务需求的不断增长,Blade 1.0的运维架构已经无法满足需求。因此,美团开始研发Blade 2.0版本,全面拥抱云原生。

三、云原生挑战和实践

在云原生环境下,Blade面临着诸多挑战,如有状态服务的资源调度、大规模集群自动化运维等。为了解决这些问题,美团进行了以下实践:

  1. 有状态的资源调度:设计上计算节点近乎无状态服务,可以更自由的横向扩展和转移;针对存储状态和网络远端存储性能的挑战,采用本地存储和逻辑状态的管理方式。

  2. 大规模集群自动化运维:建设了逻辑运维实例隔离能力,使用标签选择的方式为业务CRD分组,基于OwnerReference机制在各Controller、Webhook中实现底层资源的动态逻辑分组隔离。

  3. 服务感知体系:弃用TidbMonitor资源,基于开源VictoriaMetrics搭建分布式高可用监控体系,支持采集端、存储端双维度数据冗余和监控数据备份。

  4. SQL追踪能力建设:复用TiDB上游计算层基础追踪能力,BladeKV存储内核实现基于日志的追踪数据采集及上报,支持自动在服务Pod中注入各类辅助应用。

  5. 跨地域的集群迁移及容灾:基于Placement Rule实现了支持地域优先的调度和数据迁移能力,定制Blade集群发现服务,实现基于地域标识的域名解析能力。

四、现状及展望

目前,Blade已经为美团多个业务线提供线上服务,数据总量达到PB级。在宿主机器资源利用率超过45%的同时保障业务端到端可用率高于99.995%。未来,美团将继续优化Blade,包括全面实现自研2.0替换开源1.0,设计实现计算、存储资源隔离的多租户公共集群方案,探索基于网络存储的低成本小规模集群,应用智能网卡卸载内核网络中断,深化云原生服务感知挖掘,完成支持流量亲和的常态跨地域容灾集群部署架构等。

总之,美团分布式数据库Blade的云原生探索与实践,不仅提升了数据库的性能和可靠性,也为美团的业务发展提供了强有力的支持。未来,美团将继续探索云原生技术,为用户提供更加优质的服务。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐