ceph学习笔记之七 数据平衡
数据平衡
当在集群中新增一个OSD设备时,整个集群将会发生数据迁移使数据重新分布达到均衡。在Ceph集群中数据迁移的的基本单位是PG。其实在迁移过程中是将PG中的所有对象作为一个整体来进行迁移。
数据迁移触发流程:
1、当新加入一个OSD时,会改变系统的CRUSH Map,从而引起对象映射过程中的变化;
2、PG到OSD的映射关系发生了变化,从而引发数据的迁移。
当ceph集群中出现组件故障时(通常是指OSD,当然也有可能是网络),ceph会将OSD标记为Down,如果在300秒内MON没有收到回复,集群就会进入恢复状态。这个等待时间可以修改ceph配置文件中“mon osd down out interval = xxx”项来调整等待时间。
Peering
当新的OSD启动或者某个OSD失效时,OSD上的主PG会发起一个Peering的过程;Peering过程是指一个PG内的所有副本通过PG日志来达成数据一致的过程,当Peering完成后,PG就可以对外提供读写服务。
Recovery&Backfill
Ceph的Recovery过程是根据在Peering的过程中产生的PG日志推算出的不一致对象列表来修复其他副本上的数据。
Recovery过程的依据是根据PG日志来推测出不一致的对象进行修复;当某个OSD长时间损坏后重新将新的OSD加入集群,它已经无法根据PG日志来修复,这个时候则需要执行Backfill(回填)过程。Backfill过程是通过逐一对比两个PG的对象列表来修复。当新的OSD加入集群产生的数据迁移,也是通过Backfill过程来完成数据一致。
转载于:https://blog.51cto.com/opencloud/1952356
ceph学习笔记之七 数据平衡相关推荐
- mysql没法修改数据_MySQL学习笔记之数据的增、删、改实现方法
本文实例讲述了MySQL学习笔记之数据的增.删.改实现方法.分享给大家供大家参考,具体如下: 一.增加数据 插入代码格式: insert into 表明 [列名-] values (值-) creat ...
- 学习笔记之数据可视化(二)—— 页面布局(下)
续上一章 2.7 地图区域(.map) 2.7.1 实现步骤: 2.8 用户统计模块 2.8.1 布局: 2.8.2 柱状图 2.9 订单模块 2.9.1 订单区域布局 2.9.2 订单区域(orde ...
- 学习笔记之数据可视化(二)——页面布局(中)
续上一章 2.6 监控区域布局 2.6.1 布局结构解析: 2.6.2 样式描述: 2.6.3 HTML结构及CSS样式代码 2.6.3 ### 监控区域-效果 2.6.7 点位区域(point) 2 ...
- 学习笔记之数据可视化(二)——页面布局(上)
~续上一章 2. 项目页面布局 2.1 基础布局 2.1.1 PC端屏幕宽度适配设置 2.1.2 主体容器viewport背景图片 2.1.3 HTML结构 2.1.4 css样式代码 2.2 边框图 ...
- 学习笔记之数据可视化(一)——项目适配方案
目录 最终效果展示 1. 数据可视化适配方案 1.1 项目需求 1.2 PC端适配方案 1.3 使用到的技术 2. 数据可视化项目开发 项目准备 1.1 文件准备 1.2 引入js和css文件 1.3 ...
- mysql分页概念_MySQL学习笔记之数据定义表约束,分页方法总结
本文实例讲述了MySQL学习笔记之数据定义表约束,分页方法.分享给大家供大家参考,具体如下: 1. primary key 主键 特点:主键是用于唯一标识一条记录的约束,一张表最多只能有一个主键,不能 ...
- JPA学习笔记---JPA数据的操作:增加,删除,修改,获取,使用JPQL进行查询
JPA学习笔记---JPA数据的操作:增加,删除,修改,获取,使用JPOL进行查询 创梦技术交流平台:资源下载,技术交流,网络赚钱: 交流qq群:1群:248318056 2群:251572072 技 ...
- Kotlin学习笔记12——数据类和密封类
Kotlin学习笔记12--数据类和密封类 前言 数据类 在类体中声明的属性 复制 componentN 解构声明 密封类 尾巴 前言 上一篇,我们学习了Kotlin中的拓展,今天继续来学习Kotli ...
- Ceph学习笔记2-在Kolla-Ansible中使用Ceph后端存储
环境说明 使用 Kolla-Ansible 请参考<使用 Kolla-Ansible 在 CentOS 7 单节点上部署 OpenStack Pike >: 部署 Ceph 服务请参考&l ...
最新文章
- 求和(dfs序+线段树)
- android系统动态切换输入法,一种动态切换Android系统输入法的弹出模式的方法与流程...
- php数组分开_PHP学习之五:数组(三)合并、拆分、接合和分解数组
- yellow weasel
- js中while死循环语句_Java系列教程day06——循环语句
- ADO学习(九)如何阅读ADO文档
- 大数据、java、python、区块链、人工智能哪个发展前景更好?
- CI项目设计Redis队列
- 用until编写一段shell程序,计算1~10的平方和
- Egret白鹭开发微信小游戏手机震动功能
- 170308、oracle查看被锁的表和解锁
- 【数据结构】可以逃课其它字符串算法的字符串哈希算法
- AFNetwork 作用和使用方法具体解释
- 方案:软件集成测试工作流程指南
- 手机常识——查看手机曾经连接过的wifi密码
- bioRxiv|利用机器智能设计抗新型冠状病毒药物
- 隐藏式超远无线充电,可隔空5~10公分正常充电。
- uv纹理坐标设定与贴图规则
- 每台计算机的ip地址解析,ip地址是什么?【详解】
- 书法人生-纷繁芜杂真的是生活的真相吗?
热门文章
- python语言的单行注释以井号开头_推荐|零基础学习Python基础知识
- Javascript与正则表达式
- Java高并发编程:Callable、Future和FutureTask
- MVC,MVP,MVVM设计模式的比较
- python中的arange函数_Python 中的range,以及numpy包中的arange函数
- 关于HTML两侧留白的解决以及解决过程
- javascript BOM对象详解
- 云服务器apache mysql php_服务器配置教程:阿里云服务器安装PHP环境(附PHP+MySQL+Apache后台小Demo)...
- Kafka:分布式消息队列的抽象模型
- mysql pmm进程_mysql性能监控软件pmm