搜索

pdf文档 Qcon北京2018--《MySQL的Docker容器化大规模实践》--王晓波

7.11 MB 32 页 3 下载 101 浏览 0 评论 0 收藏
所属分类: 数据库 / MySQL
语言 格式 评分
中文(简体)
.pdf
3
摘要
文档介绍了同程旅游在MySQL数据库容器化部署中的大规模实践。早期使用单库MySQL,后引入水平拆分导致实例数量激增,传统运维成本高。为解决快速部署、扩容不便、资源浪费等问题,基于Docker实现数据库容器化。容器镜像包括MariaDB、MySQL5.7等。资源隔离方面,CPU最大超卖3倍,通过cpu-period和cpu-quota限制;内存不超卖,结合MySQL参数控制;IO通过挂载本地磁盘实现,高IO实例使用PCIE-SSD;网络采用host模式,线下测试Ovs+DPDK方案。调度平台自研,规则包括:同一复制集群实例不在同一宿主机,优先分配空闲资源,根据IO需求调度,VIP集群主从端口一致等。磁盘挂载采用本地宿主机磁盘,IO性能最佳但容量估算困难,计划测试分布式存储。
AI总结
同程旅游在MySQL容器化大规模实践中,主要解决了传统数据库运维成本高、部署慢、资源浪费等问题。核心观点如下: 1. **背景与动因**:早期使用单库MySQL,随着业务增长,引入水平拆分导致实例数量激增,传统运维方式难以为继。容器化旨在解决快速部署、扩容不便、资源浪费和标准化运维需求。 2. **资源隔离与调度**: - **CPU**:允许CPU最大超卖3倍,使用`cpu-period`和`cpu-quota`灵活限制,避免绑定核心。 - **内存**:不超卖,通过`--memory`限制并结合MySQL内部参数(如`buffer_pool`)控制,配合lxcfs增强隔离性。 - **磁盘**:采用宿主机本地磁盘挂载,IO性能最佳,但容量难以估算,空间不足时需迁移扩容。高IO实例使用PCIE-SSD。正计划测试分布式存储方案。 - **网络**:使用host模式,无法隔离但通过10G接入和控制密度避免过载。线下尝试Ovs+DPDK方案。 3. **高可用调度平台**:自研Docker调度平台,核心规则是**同一主从集群的实例必须分布在不同宿主机上**。调度优先选择资源最空闲、IO最空闲的主机,并依据IO需求分配不同磁盘类型。 4. **核心组件与功能**: - **镜像**:包含MariaDB、MySQL 5.7、监控、HA管理、实例迁移等多种镜像。 - **自动化运维**:提供Open API、数据校验、实例迁移、秒级监控、慢日志分析等功能。 - **资源池调度**:用户可“点单式”选择配置(CPU/内存)、架构(一主一从/多从)、硬件(SATA/PCIE-SSD)和机房。 5. **实践经验**:容器化实现了MySQL的高密度、隔离化和高可用部署,但需注意Docker在隔离性(如/proc信息)上的缺陷,并通过lxcfs等技术增强。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 25 页请下载阅读 -
文档评分
请文明评论,理性发言.