• Kubernetes Submit Queue's avatar
    Merge pull request #41597 from rootfs/rbd-fencing2 · 4e46ae1d
    Kubernetes Submit Queue authored
    Automatic merge from submit-queue (batch tested with PRs 41597, 42185, 42075, 42178, 41705)
    
    force rbd image unlock if the image is not used
    
    **What this PR does / why we need it**:
    Ceph RBD image could be locked if the host that holds the lock is down. In such case, the image cannot be used by other Pods. 
    
    The fix is to detect the orphaned locks and force unlock.
    **Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #31790
    
    **Special notes for your reviewer**:
    
    Note, previously, RBD volume plugin maps the image, mount it, and create a lock on the image. Since the proposed fix uses `rbd status` output to determine if the image is being used, the sequence has to change to: rbd lock checking (through `rbd lock list`), mapping check (through `rbd status`), forced unlock if necessary (through `rbd lock rm`), image lock, image mapping, and mount.
    
    
    
    
    **Release note**:
    
    ```release-note
    force unlock rbd image if the image is not used
    ```
    4e46ae1d
Name
Last commit
Last update
..
aws_ebs Loading commit data...
azure_dd Loading commit data...
azure_file Loading commit data...
cephfs Loading commit data...
cinder Loading commit data...
configmap Loading commit data...
downwardapi Loading commit data...
empty_dir Loading commit data...
fc Loading commit data...
flexvolume Loading commit data...
flocker Loading commit data...
gce_pd Loading commit data...
git_repo Loading commit data...
glusterfs Loading commit data...
host_path Loading commit data...
iscsi Loading commit data...
nfs Loading commit data...
photon_pd Loading commit data...
portworx Loading commit data...
projected Loading commit data...
quobyte Loading commit data...
rbd Loading commit data...
secret Loading commit data...
testing Loading commit data...
util Loading commit data...
vsphere_volume Loading commit data...
BUILD Loading commit data...
OWNERS Loading commit data...
doc.go Loading commit data...
metrics_cached.go Loading commit data...
metrics_du.go Loading commit data...
metrics_du_test.go Loading commit data...
metrics_errors.go Loading commit data...
metrics_nil.go Loading commit data...
metrics_nil_test.go Loading commit data...
metrics_statfs.go Loading commit data...
metrics_statfs_test.go Loading commit data...
plugins.go Loading commit data...
plugins_test.go Loading commit data...
util.go Loading commit data...
util_test.go Loading commit data...
volume.go Loading commit data...
volume_linux.go Loading commit data...
volume_unsupported.go Loading commit data...