https://blog.dachary.org/2014/08/02/temporarily-disable-ceph-scrubbing-to-resolve-high-io-load/ In a Ceph cluster with low bandwidth, the root disk of an OpenStack instance became extremely slow during days.When an OSD is scrubbing a placement group,…
作者:吴香伟 发表于 2017/02/19 版权声明:可以任意转载,转载时务必以超链接形式标明文章原始出处和作者信息以及版权声明 简单回顾下Ceph OSD后端存储引擎的历史. 为解决事务原子性问题,最早的FileStore存储引擎引入了Journal机制,一个IO先同步写日志,再异步写文件,这在解决原子性问题的同时也引入了写放大的问题,一次IO两次落盘.NewStore通过Onode索引解耦Object和文件,让IO直接写文件,写成功后更新Onode元数据,从而避免两次落盘问题(特殊情况下还是…
link: http://johnlamansky.com/tech/disable-word-spell-check/ 引用: Word 2010 Click the “File” button Click “Options” on the left Click “Proofing” Check “Hide spelling errors in this document only” and/or “Hide grammar errors in this document only” Clic…
前言 在ceph 的jewel版本以及之前的版本,通过ceph -w命令是可以拿到每秒钟ceph集群的io状态的,现在的版本是ceph -s一秒秒手动去刷,ceph -w也不监控io的状态了,有的时候需要看io是否平滑,或者恢复还剩多少,能够比较直观的去看 实际上通过简单的脚本就可以实现之前差不多的效果 每秒查看状态 [root@lab201 ~]# sh ceph-s.sh Wed Sep 9 10:44:57 CST 2020 192 pgs: 192 active+clean; 1.30G…
文章转载自:https://mp.weixin.qq.com/s?__biz=MzI1MDgwNzQ1MQ==&mid=2247485300&idx=1&sn=aacff9f7be24a68e0dacdebb03809828&chksm=e9fdd280de8a5b961c994219006f73b94b4b754852f30aee0b233507133d8abaa9112b58ef21&scene=178&cur_album_id=160084541737…
IO is a problem difficult to handle in various of systems because it  always becomes a bottleneck in data transfer. in this section, I will introduce some Java classes for two categories of data transfer,  Bytes and Characters, those classes were inc…
经常有开发者在邮件列表中会问到Ceph Snapshot的实现方式,受限于目前有限的实现文档和复杂的代码结构和代码量,弄清楚Ceph Snapshot并不是一件容易的事.正好最近在重构Ceph存储引擎层的DBObjectMap,涉及到处理Snapshot间clone的问题,重新梳理了一次在Ceph IO路径中占了非常大比重的snapshot相关代码流程,在这里并不会重点展现里面的代码或者数据结构,而是从高层设计角度展现Snapshot的实现. 在阅读下文前务必先了解Ceph的基本情况和使用场景.…
Ceph作为一个高可用和强一致性的软件定义存储实现,去使用它非常重要的就是了解其内部的IO路径和存储实现.这篇文章主要介绍在IO路径中最底层的ObjectStore的实现之一FileStore. ObjectStore ObjectStore是Ceph OSD中最重要的概念之一,它封装了所有对底层存储的IO操作.从上图中可以看到所有IO请求在Clieng端发出,在Message层统一解析后会被OSD层分发到各个PG,每个PG都拥有一个队列,一个线程池会对每个队列进行处理. 当一个在PG队列里的I…
转自:https://www.ustack.com/blog/ceph-pg-fenlie/ 1 pg分裂 Ceph作为一个scalable的分布式系统,集群规模会逐渐增大,为了保证数据分布的均匀性,好的做法是在扩容时根据集群规模适当调整pg_num和pgp_num的值. PG作为Ceph数据流过程的中间层,它的数目pg_num和另一个值pgp_num(二者一般是相等的)直接影响集群的数据分布情况.pgp_num决定了多少pg会拿来存放数据,也就是说并不是所有创建出来的pg都会存放数据.理论上来…
When I use security.basic.enabled=false to disable security on a Spring Boot project that has the following dependencies: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId&g…