我是靠谱客的博主 搞怪毛巾,最近开发中收集的这篇文章主要介绍ceph存储之查找对象,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

对象存储(而非块存储):

要把对象存入ceph集群,客户端必须做到:

  1、指定对象名

  2、指定存储池

Ceph客户端检出最新集群运行图,客户端用CRUSH算法动态地计算出如何把对象映射到归置组、然后计算如何把归置组分配到OSD。要定位对象,只需要对象名和存储池名字即可。例如:

  ceph osd map {poolname} {object-name}

练习:定位某个对象

  1、先创建一个对象,有rados put 命令加上对象名、一个有数据的测试文件路径、并制定存储池。

      echo  {Test-data} > testfile.txt

      rados put {object-name} {file-path}  --pool=data

      rados put test-object-1  testfile.txt  --pool=data

    确认Ceph存储集群存储了此对象:

      rados -p data ls

 1 root@u18:~# rados lspools
 2 data
 3 metadata
 4 rbd
 5 kvm
 6 libvirt-pool
 7 template
 8 root@u18:~# echo "Hello World" > testfile.txt
 9 root@u18:~# rados put test-object-1  testfile.txt --pool=data
10 root@u18:~# rados -p data ls
11 test-object-1
12 root@u18:~# 

  2、定位对象:

    ceph  osd  map  {pool-name}  {object-name}

    ceph  osd  map  data   test-object-1

    Ceph应该输入对象位置,例如: 

1 root@u18:~# ceph osd map data test-object-1
2 osdmap e862 pool 'data' (0) object 'test-object-1' -> pg 0.74dc35e2 (0.22) -> up ([1,0], p1) acting ([1,0], p1)
3 root@u18:~# 

   rados  rm可删除此测试对象,例如:

    rados  rm  test-object-1   --pool=data

1 root@u163:/var/www# rados -p rbd listwatchers myimage.rbd
2 root@u163:/var/www# rbd info  myimage
3 rbd image 'myimage':
4     size 2000 MB in 500 objects
5     order 22 (4096 kB objects)
6     block_name_prefix: rb.0.5e948.238e1f29
7     format: 1

查看前缀对应的pg:

root@u163:/var/www# ceph osd map rbd rb.0.5e948.238e1f29
osdmap e303 pool 'rbd' (2) object 'rb.0.5e948.238e1f29' -> pg 2.e65f431a (2.1a) -> up ([1,0], p1) acting ([1,0], p1)

 

最后

以上就是搞怪毛巾为你收集整理的ceph存储之查找对象的全部内容,希望文章能够帮你解决ceph存储之查找对象所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(35)

评论列表共有 0 条评论

立即
投稿
返回
顶部