摘要:
OSD的内部队列 由于op可能各种各样的原因需要背推迟处理,为此PG内部维护了多种op重试队列,它们的含义下表所示: 队列名称 入队条件 wait_for_map 当收到op时,已经有来自同一个客户端的op存在于此队列中,,或者op携带的Epoch大于PG当前的Epoch waiting_for_p 阅读全文
摘要:
PG相关命令 查询pool中pg的详细信息 ceph pg ls-by-pool default.rgw.buckets.data 阅读全文
摘要:
boost安装 安装boost库 yum install boost yum install boost-devel yum install boost-doc boost编译: ./bootstrap.sh ./b2 sudo ./b2 install 编译生成的库文件安装到了/usr/local 阅读全文
摘要:
Ceph IO, Rados IO 流程解析(读写) CEPH RADOS IO(读写) 处理流程图: CPEH读写顺序保证: 不同对象的并发控制 不同的对象有可能落到同一个pg里,ceph实现里,在OSD的处理线程中就会给PG加锁,一直到queue_transactions里把事务放到bluest 阅读全文
摘要:
稀疏写 我们知道一个文件的逻辑空间上是连续的,但是真正在磁盘上的物理空间分布并不一定是连续的。同时我们也会使用lseek系统调用,使得文件偏移量大于文件的长度,此时再对文件写入,便会在文件中形成一个空洞,这些空洞中的字节都是0。空洞是否占用磁盘空间是有文件系统决定的,不过大部分的文件系统ext4、x 阅读全文