Kubernetes Operator 实践 - MySQL容器化Kubernetes Operator 实践 —— MySQL 容器化 刘林 搜狗资深工程师 关于我 搜狗商业平台研发部 资深开发工程师 l 主要从事商业平台研发工作,在构建高性能、高可用大规模 系统方面有丰富的实践经验 l 目前专注于云计算、DevOps 等相关领域,负责搜狗商业云 平台的设计研发工作 刘林 1. 背景介绍 2. Operator 的基本原理 3. MySQL 有状态服务的需求越来越多 有状态服务容器化 1. 背景介绍 2. Operator 的基本原理 3. MySQL Operator 设计实践 4. 小结 无状态服务 服务调度 有状态服务集群 服务调度 状态保存 集群管理 有状态服务 服务调度 状态保存 带来的新挑战 服务调度 状态存储 集群管理 成员管理 扩缩容 故障迁移 高可用 CoreOS 提出了 operator MySQL Operator 设计实践 4. 小结 MySQL 容器化目标 • 快速部署 MySQL 主从集群 • 支持 MySQL 集群高可用 • 支持 MySQL 集群弹性伸缩 • 支持 MySQL 5.5 & 5.7 Master Slave1 Slave2 MySQL 集群:1 主 2 从 MySQL 容器化系统架构 REST CLI Kubernetes Master0 码力 | 42 页 | 4.77 MB | 1 年前3
Qcon北京2018--《MySQL的Docker容器化大规模实践》--王晓波《MySQL 容器化部署实践》 演讲者/王晓波 背景 ■ 同程旅游早期的数据库都以单库的MySQL。 ■ MySQL的单库,导致TPS最终还是会成为一个瓶颈。 ■ MySQL+DB中间件解决水平拆分问题。 ■ MySQL水平拆分的引入会使数据库实例数量大幅上升,传统运维手段维护成本高,交付能力差。 MySQL数据库为何要Docker化 1.MySQL数据库迅速爆炸式增长后,服务器规模不断增大,快速部署是个问题。 Docker在同程的大规模使用,应用部署环境100%容器化,有Docker丰富的经验 。 让数据库的部署点单化开启 2核4G 4核4G 4核8G 8核8G 8核16G 16核16G 16核64G 32核64G 32核128G 一主一从 分片集群 一主多从 SATA-SSD PCIE-SSD 大容量磁盘SAS 配置 DB架构 硬件选型 机房 A机房 B机房 C机房 D机房 容器化之后的MySQL就是一个私有DB云 总体架构 分 布 式 监 控 资源管理|资源调度 复制与迁移|高可用保障|备份恢复 自 动 化 运 维 应用 DB中间件 数据存储 应用 VIP 告警分析 告警发送 指标画图 趋势预测 自定义脚本 Open API 数据校验 实例迁移 秒级监控诊断 慢日志分析 资源池调度 调度规则 容器调度 资源池 容器及实例创建 应用交付 资源申请 IO类型 配置0 码力 | 32 页 | 7.11 MB | 1 年前3
MySQL高可用 - 多种方案令查看:ipvsadm –ln。 停掉 master 上的 keepalived,看写 VIP 是否会迁移到 backup。 启动 master 上的 mysql,看是否能切换回 master。 启动 master 上的 keepalived,看 VIP 是否会迁移回 master 上。 重启 master 的系统,看看切换过程是否 OK 3 Lvs+ mysql,使用如下命令查看:ipvsadm –ln。 停掉 master 上的 keepalived,看读写 VIP 是否会迁移到 backup 上。 启动 master 上的 mysql,看是否能切换回 master。 启动 master 上的 keepalived,看 VIP 是否会迁移回 master 上。 重启 master 的系统,看看切换过程是否 OK 4 Heartbeat 。 迁移 mysql 的数据到 drdb(假设你的 mysql 已经在该服务器上安装好了) DRBD 已经安装并且能正常同步了,那么我们接下来要做的就是将本机的 已安装的 mysql 的数据迁移到 drbd 上,这里为了简单就不考虑新安装数 据库的情形了,因为新安装的时候只需要将数据目录指定到 drbd 中并将 my.cnf 配置文件放到 drbd 中即可。具体的数据迁移步骤如下: a)0 码力 | 31 页 | 874.28 KB | 1 年前3
MySQL 企业版功能介绍 使用超过 225 个 MySQL 顾问程序实施 MySQL 优秀实践 通过 MySQL Workbench 以可视化方式设计、开发、管理和迁移数据库 使用 MySQL Workbench 迁移向导将数据库迁移至 MySQL Oracle MySQL 服务云 Oracle MySQL 云服务提供了一个安全、经济高效的企业级 MySQL 数据库服务。它基于 供了许多高级工具,可支持数 据库建模和设计、查询开发和测试、服务器配置和监视、用户和安全管理、备份和恢复自动化、 审计数据检查以及向导驱动的数据库迁移。 MySQL Workbench 提供了数据建模、SQL 开发、管理和迁移工具。 5 ORACLE 产品介绍 Oracle 标准支持服务 Oracle 为 MySQL 提供 24x70 码力 | 6 页 | 509.78 KB | 1 年前3
如何用 MySQL 构建全方位高可用应用•单点支持 •通过 VM 重新启动故障实例自动 恢复 •将正在运行的实例实时迁移到新 主机 适用于 MySQL 的 Oracle VM 模板 Oracle VM 服务器 Oracle VM 服务器池 ocfs2 Oracle VM Manager iSCSI / FC-AL Oracle VM 安全实时迁移 (SSL) Oracle VM 自动故障检测和 恢复 4/16/2017 将服务器场中 的服务器组合为一个群集 – 以 Oracle RAC 为核心 •Oracle Cluster 12c 包括 MySQL Server 代理 •对 MySQL 数据库进行计划内迁移 和自动故障转移 – 对使用受管 VIP 的应用程序不可见 – 共享存储,一次 1 个实例 4/16/2017 在 Oracle Clusterware 上部署 MySQL 17 版权所有0 码力 | 40 页 | 2.19 MB | 1 年前3
使用 Docker 建立 MySQL 集群yum install docker-io 第二步 运行 Mariadb 容器 首先要将数据镜像拉下来 docker pull mariadb:latest 注意,如果不加:latest 标签,docker 会把所有的镜像版本都拉下来。 然后我们就可以启动镜像了,参数方面需要注意的有一下几点: 1,-name <给容器取个好记的名称> 2,-e MYSQL_ROOT_PASSWORD =‘<给数据库一个 MYSQL_DATABASE 环境变量可以使容器在 运行时同时创建你所需要的数据库和带有全部权限的用户及其对应密码 6,设定 TERM 环境变量的值可以解决容器不能进入 mysql 控制台的问题。 对于不是自己建立的镜像,建立出来的容器未必能一次达到要求,建议是将 run 命令写成脚本,创建后使用 docker inspect <容器名> 仔细查看容器信息,关注镜像公开的端口和文件目录。如果发现达不到要求,使 不到要求,使 用 docker rm -f <容器名> 删除容器后修改 run 脚本再次运行,直到满意为止。 下面是我的 run 命令: docker run --name mdb1 \ -p 13306:3306 \ -v /home/wonders/docker_mdb1_data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=wondersgroup \ -e0 码力 | 3 页 | 103.32 KB | 1 年前3
MySQL 8.0.17 调优指南(openEuler 20.09)优化目的 Config优化 关闭refcount_full。 idle_balance定制特性 新增STEAL流程,如果idle_balance迁移线程失败会触 发,STEAL流程简化了判断逻辑,会从sd_llc上的任意 overload的cpu迁移进程过来,从而提升cpu利用率。 方法 kernel的优化在openEuler 20.09中默认是关闭的,需要用以下步骤开启: 步骤1 打开/etc/grub2-efi0 码力 | 11 页 | 223.31 KB | 1 年前3
共 7 条
- 1













