mirror of https://github.com/k3s-io/k3s
![]() Automatic merge from submit-queue (batch tested with PRs 64844, 63176). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Fix discovery/deletion of iscsi block devices This PR modifies the iSCSI attach/detatch codepaths in the following ways: 1) After unmounting a filesystem on an iSCSI block device, always flush the multipath device mapper entry (if it exists) and delete all block devices so the kernel forgets about them. 2) When attaching an iSCSI block device, instead of blindly attempting to scan for the new LUN, first determine if the target is already logged into, and if not, do the login first. Once every portal is logged into, the scan is done. 3) Scans are now done for specific devices, instead of the whole bus. This avoids discovering LUNs that kubelet has no interest in. 4) Additions to the underlying utility interfaces, with new tests for the new functionality. 5) Some existing code was shifted up or down, to make the new logic work. 6) A typo in an existing exec call on the attach path was fixed. Fixes #59946 ```release-note When attaching iSCSI volumes, kubelet now scans only the specific LUNs being attached, and also deletes them after detaching. This avoids dangling references to LUNs that no longer exist, which used to be the cause of random I/O errors/timeouts in kernel logs, slowdowns during block-device related operations, and very rare cases of data corruption. ``` |
||
---|---|---|
.. | ||
aws_ebs | ||
azure_dd | ||
azure_file | ||
cephfs | ||
cinder | ||
configmap | ||
csi | ||
downwardapi | ||
empty_dir | ||
fc | ||
flexvolume | ||
flocker | ||
gce_pd | ||
git_repo | ||
glusterfs | ||
host_path | ||
iscsi | ||
local | ||
nfs | ||
photon_pd | ||
portworx | ||
projected | ||
quobyte | ||
rbd | ||
scaleio | ||
secret | ||
storageos | ||
testing | ||
util | ||
validation | ||
vsphere_volume | ||
BUILD | ||
OWNERS | ||
doc.go | ||
metrics_cached.go | ||
metrics_du.go | ||
metrics_du_test.go | ||
metrics_errors.go | ||
metrics_nil.go | ||
metrics_nil_test.go | ||
metrics_statfs.go | ||
metrics_statfs_test.go | ||
plugins.go | ||
plugins_test.go | ||
volume.go | ||
volume_linux.go | ||
volume_unsupported.go |