What if kubernetes is occupied when mounting ceph rbd?
Editor to share with you what to do when kubernetes is mounted on ceph rbd. I hope you will get something after reading this article. Let's discuss it together.
When ceph rbd is used as mount storage in kubernetes, when pod exits abnormally, it may be orchestrated to run on another node, while rbd will not unmount from the original node with the offset of pod. You need to unmount it manually, assuming that the test_image image in the data_pool storage pool is occupied.
First unmount
Umount / dev/rbd/data_pool/test_image
De-mapping relationship
Rbd unmap / dev/rbd/data_pool/test_image
Normally, this way the rbd is unoccupied and can be mounted on other nodes.
However, sometimes a busy device error is reported, so it is necessary to force the mapping disconnection in ceph.
First query the currently occupied rbd status
Rbd status data_pool/test_image
Get information similar to the following
Watchers:
Watcher=192.168.1.100:0/4102608192 client.1574653 cookie=3
Add the connection to the blacklist
Ceph osd blacklist add 192.168.1.100:0/4102608192
Check the rbd status again
Rbd status data_pool/test_image
At this time, the rbd should be idle, and all you need to do is delete the exception pod or wait for pod to recover automatically.
After reading this article, I believe you have a certain understanding of "how to be occupied when kubernetes mounts ceph rbd". If you want to know more about it, you are welcome to follow the industry information channel. Thank you for reading!