@dyj2017
2017-10-30T02:38:52.000000Z
字数 1073
阅读 978
ceph ceph实验 pg
[root@node1 ~]# echo "this is test! " >>test.txt[root@node1 ~]# rados -p testpool ls[root@node1 ~]# rados -p testpool put test.txt test.txt[root@node1 ~]# rados -p testpool lstest.txt
[root@node1 ~]# ceph osd map testpool test.txtosdmap e76 pool 'testpool' (2) object 'test.txt' -> pg 2.8b0b6108 (2.8) -> up ([1,2,0], p1) acting ([1,2,0], p1)
[root@node2 ~]# systemctl stop ceph-osd@1[root@node1 ~]# systemctl stop ceph-osd@0[root@node2 ~]# ceph osd map testpool test.txtosdmap e88 pool 'testpool' (2) object 'test.txt' -> pg 2.8b0b6108 (2.8) -> up ([2], p2) acting ([2], p2)[root@node1 ~]# ceph pg dump_stuck|grep ^2.82.8 undersized+degraded+peered [2] 2 [2] 2
此时访问该对象毫无反应,因为pg peered是不能够响应io请求的。但是此时该pg仍有一个副本,却不能够访问了,这是因为testpool的min_size=2,也就是只能允许有一个osd out,如果超过就无法响应io。
[root@node1 ~]# ceph osd pool set testpool min_size 1set pool 2 min_size to 1[root@node1 ~]# ceph pg dump_stuck|grep ^2.82.8 active+undersized+degraded [2] 2 [2] 2[root@node2 ~]# rados -p testpool get test.txt test[root@node2 ~]# cat testthis is test!
可以看到pg的状态由peered变为了degraded,可以正常访问该对象。