10月 202017
 

rbd vs rbd-nbd

两者功能一样,效果也没啥差别,只是实现方式有所不同; 前者使用内核的rbd模块访问ceph存储,当ceph较新(内核较旧)时,可能会有一些image的feature内核不支持,就不能map;后者使用librbd来访问ceph存储,基本不会存在feature不支持的情况。

同一个rbd image可以同时在一台服务器上map多次;但是只能mount一次,因为多次挂载后设备的uuid是同一个,文件系统不允许同时挂载两个相同uuid的设备的

同一个rbd image可以同时挂载到多个服务器上;

也就是说,ceph的image是可以作为共享存储使用的。

注意:

  1. 即使在两个不同的mnt名字空间,也不能同时分别mount同一个设备,依然有uuid冲突的问题
  2. 即使分别在不同的mnt名字空间执行rbd map,设备的uuid也都是一样的
  3. 即使在不同的服务器上执行rbd map,设备的uuid也都是一样的

 

 Posted by at 下午 12:11

ceph 之osd 分类(class)

 ceph  ceph 之osd 分类(class)已关闭评论
9月 272017
 
  1. ceph不能自动识别磁盘类型
  2. 设置osd分类前osd需要是未分类的,即:修改osd分类的做法是,先移除原有的分类,在添加新的分类:

     
  3. 操作osd分类使用的不是ceph osd crush class *
  4. 根据磁盘分类查看osd:

     
  5. 然后参考ceph osd crush rule 来创建自己的规则,如只存放在hdd上,或只存放在ssd上的规则,然后对pool设置响应的规则

 

参考: http://docs.ceph.com/docs/master/rados/operations/crush-map/

 Posted by at 下午 2:03

openstack ceph 集成

 ceph, openstack  openstack ceph 集成已关闭评论
9月 222017
 

遇到的问题:

ceph 版本: 12.2.0

glance-api 机器上的 librados2 版本太老(0.94),导致connect ceph cluster超时

升级glance-api 机器上的 librados2  为12.2.0 后,问题解决, 注意: 升级后重启glance-api

 Posted by at 下午 12:14

ceph osd 操作

 ceph  ceph osd 操作已关闭评论
5月 132017
 

ceph  osd down $id: 将osd $id 标记为down(mark down),达到不再访问的效果,并不真正停止进程,(仍然参与hash?),ceph osd tree 查看的时候,依然可能是up的状态

ceph osd out $id: 将weight 设置为0(零), 达到不再访问的效果,(不参与hash?)

ceph osd lost $id: 删除该osd上的所有数据,该操作比较危险,需要明确指定 –yes-i-really-mean-it, 如:

ceph osd rm $id: 从集群中彻底删除该osd;如果要删除某osd,必须先停止进程,仅仅标记为down(ceph osd down $id) 是不够的,如:

停止指定osd进程:

仅仅rm掉osd还是可以在ceph osd tree中看到,如下:

需要从crush中移除:

然而,依然删除的不够干净,如 auth中还有相关信息:

删除:

查看所有osd:

 

 

 Posted by at 下午 3:58