Qcon北京2018--《MySQL的Docker容器化大规模实践》--王晓波机 制 总体架构 分 布 式 监 控 资源管理|资源调度 复制与迁移|高可用保障|备份恢复 自 动 化 运 维 应用 DB中间件 数据存储 应用 VIP 告警分析 告警发送 指标画图 趋势预测 自定义脚本 Open API 数据校验 实例迁移 秒级监控诊断 慢日志分析 资源池调度 调度规则 容器调度 资源池 容器及实例创建 应用交付 资源申请 IO类型 为了保证MySQL的高可用,需要在Docker容器分配时如何保障主从不在同一宿主机上。我们通过自研 Docker容器调度平台管理所有宿主机和容器,自定义Docker容器的分配算法。实现了MySQL的高密度,隔离 化,高可用化部署。 调度规则: 1.同一复制集群的实例在不同主机上。 2.优先分配CPU、内存、磁盘空间资源最空闲的主机。 3.根据IO需求调度容器创建在不同IO类型的主机。 4.申请新集群时,若IO要求高则按照宿主机的IO情况,优先选择IO最空闲的主机。 ,网 络消耗不会过载。另外目前我们已经在线下尝试结合Ovs+Dpdk的方案实现网络隔离。 容器的调度 •提供两种API: •Docker API的封装,用于创建,删除,修改。 •集群管理API,用于集群管理。 •Scheduler调度:选择最优节点创建容器。 •Agent:用于连接监控模块,上报系统运行状况。 GRPC API Schedule Filter Strategy Docker0 码力 | 32 页 | 7.11 MB | 1 年前3
Kubernetes Operator 实践 - MySQL容器化有状态服务容器化 1. 背景介绍 2. Operator 的基本原理 3. MySQL Operator 设计实践 4. 小结 无状态服务 服务调度 有状态服务集群 服务调度 状态保存 集群管理 有状态服务 服务调度 状态保存 带来的新挑战 服务调度 状态存储 集群管理 成员管理 扩缩容 故障迁移 高可用 CoreOS 提出了 operator Deployment StatefulSet mysql pod-1 … … mysql pod-N NodeN Mysql Operator pod … … mysql Pod-T 0. 创建 CRD 3. 集群管理 2. 调度 pod Ceph MySQL-Operator 主流程 API Server Reflector DeltaFIFO Local Storage Callbacks OnAdd OnUpdate CRD • Spec:配置 & 期望状态 • Status:当前状态 MySQL 配置 • 版本 • 端口 • 存储信息 • 配置文件 集群配置 • 副本数 • 高可用模式 K8s 调度信息 • 资源套餐 • 亲和性信息 • NodeSelector 使用 CRD 2. client-go 配套工具 apiVersion: apiextensions.k8s.io/v1beta10 码力 | 42 页 | 4.77 MB | 1 年前3
MySQL 8.0.17 调优指南(openEuler 20.09)● 对性能进行分析时,要多方面分析系统的资源瓶颈所在,因为系统某一方面性能 低,也许并不是它自己造成的,而是其他方面造成的。如CPU利用率是100%时, 很可能是内存容量太小,因为CPU忙于处理内存调度。 ● 一次只对影响性能的某方面的一个参数进行调整,多个参数同时调整的话,很难 界定性能的影响是由哪个参数造成的。 ● 由于在进行系统性能分析时,性能分析工具本身会占用一定的系统资源,如CPU 对于不同的IO设备,通过在OS层面调整一些IO相关参数配置,可以有效提升服务器性 能。 方法 Linux参数 参数含义 操作 /sys/block/$ {device}/queue/ scheduler 配置IO调度,deadline或者noop更 适用于MySQL数据库场景。命令中 的${device}为数据盘名称,根据实 际磁盘名称进行修改。NVME盘不 支持此操作。 echo deadline > /sys/0 码力 | 11 页 | 223.31 KB | 1 年前3
MySQL高可用 - 多种方案官网的说法,如果系统内核(linux)版本低于 2.6.33,在安装软件之前需要加 载 DRBD 模块,我的内核版本是 2.6.18 的,安装后会自动加载 drbd 模块。安 装命令如下: yum install -y drbd83 kmod-drbd83 安装后使用 lsmod | grep drbd 命令查看是否加载 drbd 模块,如果没有加载需 要手动运行命令加载,命令如下: insmod drbd/drbd0 码力 | 31 页 | 874.28 KB | 1 年前3
MySQL 企业版功能介绍线程池提供了一个高效的线程处理模型,旨在降低客户端连接和语句执行线程的管 理开销。 MySQL 企业级身份验证 MySQL 企业级身份验证提供了随时可用的外部身份验证模块,可轻松集成到现有安全基础架构 中,包括 Linux 可插拔身份验证模块 (PAM) 和 Windows Active Directory。通过 MySQL 企业级安 全性,企业可以实现一次性登录机制,而且可以在集中目录中管理和使用现有安全规则和流程。0 码力 | 6 页 | 509.78 KB | 1 年前3
谈谈MYSQL那点事实时写实 时读,类似种涉及交易的或者动态实时报表统计的都要采 用这种架构模式 弱一致性 如果是弱一致性的话,可以通过在 M2 上面分担一些读压力 和流量,比如一些报表的读取以及静态配置数据的读取模块 都可以放到 M2 上面。比如月统计报表,比如首页推荐商品 业务实时性要求不是很高,完全可以采用这种弱一致性的设 计架构模式。 中间一致性 如果既不是很强的一致性又不是很弱的一致性,那0 码力 | 38 页 | 2.04 MB | 1 年前3
共 6 条
- 1













