如何查看rbd镜像存放osd的位置

这篇文章给大家分享的是有关如何查看rbd镜像存放osd的位置的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

创建1G大小块镜像

# rados mkpool testpool  
# rbd create testpool/test --size 1024
# rbd info testpool/test
	rbd image 'test':
	size 1024 MB in 256 objects 
	order 22 (4096 kB objects) 
	block_name_prefix: rb.0.fbe4e.2ae8944a 
	format: 1

查看镜像映射位置

# ceph osd map testpool rb.0.fbe4e.2ae8944a.000000000000    //块设备首地址
	osdmap e50 pool 'testpool' (15) object 'rb.0.fbe4e.2ae8944a.00000000' ->
	pg 15.5cf0bd7d (15.3d) -> up ([1,0], p1) acting ([1,0], p1)

说明:数据存放目录为15.3d._head primary osd=1 replicate osd=0

进入osd.1数据存放目录

# cd /var/lib/ceph/osd/ceph-1/current/15.3e_head ;ll
  -rw-r--r-- 1 root root 4194304 Mar 12 14:14 rb.0.fbe4e.2ae8944a.000000000000__head_3154DE7E__f

一个文件默认为4M,对象的命名方式会在深入分析rbd文章中讲到,敬请期待

##向testpool/test里面压10M数据

# dd if=/dev/zero of=/dev/rbd/testpool/test bs=1M count=10

查看pool:testpool下的对象

# rados ls -p 
	rb.0.fbe4e.2ae8944a.000000000000
	rb.0.fbe4e.2ae8944a.00000000002c
	rb.0.fbe4e.2ae8944a.000000000038
	rb.0.fbe4e.2ae8944a.000000000073

感谢各位的阅读!关于“如何查看rbd镜像存放osd的位置”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!