日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

删除 Ceph 的image报rbd: error: image still has watchers

發布時間:2024/9/21 编程问答 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 删除 Ceph 的image报rbd: error: image still has watchers 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在Ceph集群日常運維中,管理員可能會遇到有的image刪除不了的情況,有一種情況是由于image下有快照信息,只需要先將快照信息清除,然后再刪除該image即可,還有一種情況是因為該image仍舊被一個客戶端在訪問,具體表現為該image中有watcher,如果該客戶端異常了,那么就會出現無法刪除該image的情況。還有一種情況,就算image沒有watcher了,但是還有mount占用,也可能刪除不了

  watcher是什么? 

  Ceph中有一個watch/notify機制(粒度是object),它用來在不同客戶端之間進行消息通知,使得各客戶端之間的狀態保持一致,而每一個進行watch的客戶端,對于Ceph集群來說都是一個watcher。

  如何查看當前image上的watcher?

  

  因為watch的粒度是object,想要了解一個image上的watcher信息,最簡單的方法就是查看該image的header對象上的watcher信息。

  首先找到image的header對象

  [root@Node62 ~]# rbd info test_img

  rbd image 'test_img':

  size 5000 MB in 1250 objects

  order 22 (4096 kB objects)

  block_name_prefix: rbd_data.fa7b2ae8944a

  format: 2

  features: layering, exclusive-lock, object-map, fast-diff, deep-flatten

  查詢到該image的block_name_prefix為 rbd_data.fa7b2ae8944a那么該image的header對象則為rbd_header.fa7b2ae8944a,然后我們就可以通過命令查看該image的header對象上的watcher信息。

  [root@Node62 ~]# rados listwatchers -p rbd rbd_header.fa7b2ae8944a

  watcher=192.8.8.10:0/1262448884 client.170939 cookie=140096303678368

? ? ? 也可以:

root@ceph01:~/my-cluster# rbd status test-img Watchers:watcher=172.16.71.203:0/52000001 client.134475 cookie=140465230511472

?

? ? 如果image為格式1:

? ? ?[root@nc1 ~]# rbd info hzb-mysql
? ? ?rbd image 'hzb-mysql':
? ? ?size 2048 MB in 512 objects
? ? ?order 22 (4096 kB objects)
? ? ?block_name_prefix: rb.0.11895f.6b8b4567
? ? ?format: 1

? ? ?則用:rados -p rbd listwatchers 'hzb-mysql.rbd

  Ceph集群異常客戶端Watcher處理

  

  剛才查看到test_img這個image上有一個watcher,假設客戶端watcher=192.8.8.10:0/1262448884出現異常,那么我們如何處理呢?其實我們只需要將此異常客戶端設置到OSD的黑名單即可:

  [root@Node62 ~]# ceph osd blacklist add 192.8.8.10:0/1262448884

  blacklisting 192.8.8.10:0/1262448884 until 2017-03-27 02:11:54.206165 (3600 sec)

  此時我們再去查看該image的header對象的watcher信息:

  [root@Node62 ~]# rados listwatchers -p rbd rbd_header.fa7b2ae8944a

  異常客戶端的watcher信息已經不存在了,這個時候我們就可以對該image進行刪除操作了。這種方法不是最推薦的,但是目前還找不到很好的解決方法。

? ? ? ?查詢黑名單列表:

ceph osd blacklist ls

? ? ?從黑名單移出某一個

root@ceph01:~# ceph osd blacklist rm 172.16.71.203:0/2000001 un-blacklisting 172.16.71.203:0/2000001

? ?清空黑名單里面的東西

root@ceph01:~# ceph osd blacklist clearremoved all blacklist entries

?

總結

以上是生活随笔為你收集整理的删除 Ceph 的image报rbd: error: image still has watchers的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。