ceph集群换盘

2023-11-17

一引言

某地项目运行两年后磁盘批量报错,利用smartctl检测发现出现大量扇区错误,但并未达到彻底无法读写程度,统计下来发现数量接近40块,考虑批次换盘。坏盘期间为了保证不影响业务,需拟定一个较好的方案。

二 方案

在查阅一堆资料后,发现无论采用哪种方案换盘都会出现大量的数据迁移。

上图引用至张鹏博客

由于线上项目数据量巨大,恢复周期长,采取这种方式换盘并不能完全达到我们的需求。因此我们采用了另外一种折中方案,按照以下过程进行换盘:

  1. 停掉对应osd,单副本运行
  2. 整盘拷贝(周期较长,取决于文件大小)
  3. 拷贝结束,更换硬盘上线
  4. 开始做backfill
  5. 恢复完成

按照上述过程更换硬盘,可以最小化迁移数据量并且避免集群调度recovery,按照我们历史经验,集群的内部recovery速度远比不上外部拷贝。但同时这样换盘引入的风险就是单副本运行期间数据的安全性问题,均衡考虑后还是采用此种方案。

三 展望

此次换盘事件让我思索:有没有可能添加热备osd,保证在换盘期间所下线的pg临时转移到热备osd上,在osd量较多的集群内,两块osd上拥有完整副本数据的pg量很少,这样即使整盘换盘也只会有少量数据存在丢失风险,如果能将这部分完整副本数据的pg重新映射到热备osd,那整个换盘过程风险将会降低很多。

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ceph集群换盘 的相关文章

  • akka设计模式系列-Chain模式

    链式调用在很多框架和系统中经常存在 算不得上是我自己总结的设计模式 此处只是简单介绍在Akka中的两种实现方式 我在这边博客中简化了链式调用的场景 简化后也更符合Akka的设计哲学 trait Chained def receive Rec

随机推荐

  • 数学建模--二次规划型的求解的Python实现

    目录 1 算法流程简介 2 算法核心代码 3 算法效果展示 1 算法流程简介 二次规划模型 二次规划我们需要用到函数 Cvxopt solvers qp P q G h A b 首先解决二次规划问题和解决线性规划问题的流程差不多 求解思路如
  • 中文医学知识语言模型:BenTsao

    介绍 BenTsao 原名 华驼 HuaTuo 基于中文医学知识的大语言模型指令微调 本项目开源了经过中文医学指令精调 指令微调 Instruction tuning 的大语言模型集 包括LLaMA Alpaca Chinese Bloom
  • 无法打开这个应用,查看Microsoft store, 了解有关Nahimic的详细信息

    win s 打开搜索框 输入 Nahimic 鼠标右键单击 打开应用设置 点击 修复 重启电脑
  • 计算机图形学:Bezier曲线的绘制

    1 实验目的 掌握Bezier曲线的定义原理及绘制过程 定义 贝塞尔曲线 Bezier curve 又称贝兹曲线或贝济埃曲线 是应用于二维图形应用程序的数学曲线 一般的矢量图形软件通过它来精确画出曲线 贝兹曲线由线段与节点组成 节点是可拖动
  • 什么是千年虫?计算机如何开始处理日期?都有哪些时间日期格式化?

    目录 千年虫 漏洞 Year 2000 Problem 简称 Y2K 计算机是怎么开始处理日期的么 举例1 时间格式化举例 过滤器 举例2 时间格式化 自定义私有过滤器 日期格式化 高性能计数器演示 OLE时间对象 时间的基本用法 千年虫
  • 【Hello Algorithm】二叉树的递归套路

    本篇博客介绍 介绍二叉树的递归套路算法 二叉树的递归套路 递归思路 判断二叉树是否是平衡二叉树 判断二叉树是否是搜索二叉树 返回二叉树节点的最大距离 验证一棵树是否是满二叉树 寻找最大的BST子树 判断二叉树是否是完全二叉树 判断二叉树的最
  • Shell脚本:expect脚本免交互

    Shell脚本 expect脚本免交互 expect脚本免交互 一 免交互基本概述 1 交互与免交互的区别 2 格式 3 通过read实现免交互 4 通过cat实现查看和重定向 5 变量替换 二 expect安装 1 概述 2 作用 3 e
  • RuntimeError: one of the variables needed for gradient computation has been modified by an inplace o

    RuntimeError one of the variables needed for gradient computation has been modified by an inplace operation torch cuda F
  • 牛客每日刷题

    作者简介 我是18shou 一名即将秋招的java实习生 个人主页 18shou 系列专栏 牛客刷题专栏 在线刷题面经模拟面试 目录 题目 思路 题解 题目 给定一个长度为 n 的字符串 请编写一个函数判断该字符串是否回文 如果是回文请返回
  • computed计算属性和data_computed与watched选项的比较

    computed 通过属性计算而得来的属性 1 支持缓存 只有依赖数据发生改变 才会重新进行计算 computed 属性值会默认走缓存 计算属性是基于它们的响应式依赖进行缓存的 也就是基于data中声明过的数据通过计算得到的 2 不支持异步
  • 3.python学习笔记——Python数据类型转换

    有时候 我们需要对数据内置的类型进行转换 数据类型的转换 你只需要将数据类型作为函数名即可 以下几个内置的函数可以执行数据类型之间的转换 这些函数返回一个新的对象 表示转换的值 int x base 将x转换为一个整数 float x 将x
  • Modern C++ for C 程序员 第4部分

    文章目录 面向 C 程序员的 Modern C 系列第4部分 Lambdas 扩展我们的索引器 容器和算法 查找 STL中的查找算法 更多的容器 Boost容器 Boost MultiIndex 总结 这是bert hubert的系列文章
  • opencv3特征检测的配置与使用

    官网下载opencv for Linux 和opencv contrib opencv版本 3 4 1 编译安装 编译选项为 cmake D OPENCV EXTRA MODULES PATH
  • 在colab中运行shell

    只需要在cell单元格第一行加上 shell 然后按运行按钮 就可以将单元格的内容当做shell执行了 参考例子 https colab research google com drive 1N7p0B 7QWEQ9TIWRgYLueW03
  • 背景的偏移与定位和背景固定

    background position背景的偏移 背景图片默认是贴着元素的左上角显示 通过background position可以调整背景图片在元素中的位置 可选值 该属性可以使用 top right left bottom center
  • java resultset 最后一行_Java:删除选定的行ResultSet,从数据库中删除最后一行?

    谢谢 Germann 我解决了它 我将提供解决方案 以便其他人可以从中获得帮助 你是对的resultSet absolute 返回布尔值 但它也将光标移动到其参数resultSet absolute table getSelectedRow
  • html2canvas 绘制海报清晰度

    场景 使用html2canvas绘制海报 生成海报比较模糊 解决方案 方案一 增大dpi dpi DPI是指某些设备分辨率的度量单位 DPI越低 扫描的清晰度越低 DPI越高 清晰度越高 由于受网络传输速度的影响 web上使用的图片都是72
  • springboot整合mybatis时Could not resolve type alias 'xxx'

    注意 不管用下列哪种解决方法 都要在启动类中加入 总结 springboot整合mybatis要扫描三个东西 mapper接口类 映射文件xxxmapper xml 实体类 指定mapper接口类的位置 MapperScan basePac
  • Windows Terminal 配置(Neovim配置)

    Neovim的意义 vim是在linux上非常好用的编辑器 IDE 毕竟高度可配置 如果你是一名linux的开发人员 当切换到windows上时可以通过通过这个快速适应 配置完成后你可以直接在powershell中通过vim的命令进行编辑文
  • ceph集群换盘

    一引言 某地项目运行两年后磁盘批量报错 利用smartctl检测发现出现大量扇区错误 但并未达到彻底无法读写程度 统计下来发现数量接近40块 考虑批次换盘 坏盘期间为了保证不影响业务 需拟定一个较好的方案 二 方案 在查阅一堆资料后 发现无