Commit Graph

3846 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
f3498df864 Merge pull request #128522 from huww98/multi-volume-part-0
Cleanups about kubelet/volumemanager
2024-11-07 03:53:28 +00:00
Jan Safranek
8875f4daf0 Describe what the input list of SELinux options is 2024-11-06 11:16:06 +01:00
Jan Safranek
aa8872d7a3 Add SELinux warning controller 2024-11-06 11:16:02 +01:00
Jan Safranek
0d71dc677e Refactor CreateVolumeSpec
Rename old CreateVolumeSpec to CreateVolumeSpecWithNodeMigration that
extracts volume.Spec with node specific CSI migration.

Add CreateVolumeSpec that does the same, only without evaluating node CSI
migration.
2024-11-06 11:15:31 +01:00
huweiwen
f9a9b6f660 rename Gid => GID
according to stylecheck
2024-11-06 11:11:13 +08:00
Kubernetes Prow Robot
b5e6456795 Merge pull request #126806 from carlory/fix-image-volume-mount
Kubelet should honour the VolumeAttributes which are reported by the volume plugin
2024-11-05 23:21:35 +00:00
Kubernetes Prow Robot
08391b3d27 Merge pull request #123549 from carlory/kep-3751-finalizer
A new controller adds/removes finalizer to VAC for protection
2024-11-05 21:45:30 +00:00
carlory
b6c9c2d6fa 1. When the kubelet constructs the cri mounts for the container which references an image volume source type, It passes the missing mount attributes to the CRI implementation, including readOnly, propagation, and recursiveReadOnly. When the readOnly field of the containerMount is explicitly set to false, the kubelet will take the readOnlyas true to the CRI implementation because the image volume plugin requires the mount to be read-only.
2. Fix a bug where the pod is unexpectedly running when the `image` volume source type is used and mounted to `/etc/hosts` in the container.
2024-11-05 19:47:12 +08:00
Kubernetes Prow Robot
5572688cef Merge pull request #128342 from gnufied/recovery-expansion-beta
Move RecoverVolumeExpansionFailure feature to beta
2024-11-04 23:15:36 +00:00
Kubernetes Prow Robot
97c79df18f Merge pull request #127981 from jsafrane/selinux-changepolicy
1710: Implement SELinuxChangePolicy
2024-11-04 22:09:29 +00:00
carlory
8a45986eea clean up tmp kubelet dir 2024-11-04 14:52:41 +08:00
Jan Safranek
09afd667d7 Remove useless comment
seLinuxOptions are copied few lines below during `append()`
2024-11-01 12:46:39 +01:00
Jan Safranek
d7daa688c9 Collect SELinux options only when needed
Remove feature gate check from GetPodVolumeNames and collect SELinux
options only when it's really needed.
2024-11-01 12:46:39 +01:00
Jan Safranek
6e4504685f Fix access mode evaluation
Now that SELinuxMount can support volumes with any access modes, length of
the access modes does not need to be 1. That was requirement for RWOP
volumes only.
2024-11-01 12:46:39 +01:00
Hemant Kumar
2d58d4ef52 Fix unit tests and feature gate stuff 2024-10-30 15:17:59 -04:00
Jordan Liggitt
43fa7c638b Revert "Merge pull request #127669 from olyazavr/fix-probe-race"
This reverts commit 3d00d6e421, reversing
changes made to a7fcc89ac0.
2024-10-30 11:16:47 -04:00
Kubernetes Prow Robot
b8e20b74dd Merge pull request #128382 from carlory/rm-vac
remove unused vac code
2024-10-29 15:25:05 +00:00
Kubernetes Prow Robot
685b8b3ba1 Merge pull request #126981 from kannon92/stable-empty-dir-promotion
KEP-1967: promote size backed memory volumes to stable
2024-10-29 01:00:54 +00:00
carlory
677e5709c9 remove unused vac code 2024-10-28 17:25:28 +08:00
Hemant Kumar
a9d71bd6e6 Move RecoverVolumeExpansionFailure feature to beta 2024-10-25 13:39:43 -04:00
Hemant Kumar
1e7b4406a3 Apply fsGroup when accessMode is ReadWriteOncePod 2024-10-21 17:14:33 -04:00
Kubernetes Prow Robot
1f9038a468 Merge pull request #127919 from carlory/fix-127852
Fix data race in kubelet/volumemanager
2024-10-17 14:57:03 +01:00
Kevin Hannon
1d752200af promote size backed memory volumes to stable 2024-10-16 17:15:02 -04:00
Dr. Stefan Schimanski
33749d0436 volume: fix unit test flake
Signed-off-by: Dr. Stefan Schimanski <stefan.schimanski@gmail.com>
2024-10-15 11:57:57 +02:00
carlory
4c10212d7b Fix data race in kubelet/volumemanager 2024-10-08 16:39:02 +08:00
Kubernetes Prow Robot
3d00d6e421 Merge pull request #127669 from olyazavr/fix-probe-race
fix plugin probe init race causing erroneous volume unmounts
2024-10-07 11:40:21 +01:00
Olga Shestopalova
ea8c1ae9bb undo mutex change
Signed-off-by: Olga Shestopalova <oshestopalova1@gmail.com>
2024-10-04 10:35:31 -04:00
Olga Shestopalova
a13e9f6457 use sync.Once instead of a mutex
Signed-off-by: Olga Shestopalova <oshestopalova1@gmail.com>
2024-10-04 10:24:48 -04:00
Kubernetes Prow Robot
65bc7c0c1a Merge pull request #126924 from carlory/volumelimit
Remove attachable volume limit from node's status capacity
2024-10-04 15:02:41 +01:00
Kubernetes Prow Robot
6c34d13e3b Merge pull request #125147 from alexandrevilain/fix/recycler-client
recyclerclient: fix log message in case of delete pod error
2024-10-04 15:02:27 +01:00
Olga Shestopalova
0746672679 fix plugin probe init race causing erroneous volume unmounts
Signed-off-by: Olga Shestopalova <oshestopalova1@gmail.com>
2024-10-01 11:03:12 -04:00
Matthieu MOREL
f736cca0e5 fix: enable expected-actual rule from testifylint in module k8s.io/kubernetes
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-09-27 07:56:31 +02:00
Matthieu MOREL
27b98be303 fix: enable nil-compare and error-nil rules from testifylint in module k8s.io/kubernetes
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-09-25 06:02:47 +02:00
Kubernetes Prow Robot
211d67a511 Merge pull request #125398 from AxeZhan/pvAffinity
[scheduler] When the hostname and nodename of a node do not match, ensure that pods carrying PVs with nodeAffinity are scheduled correctly.
2024-09-23 21:22:02 +01:00
Kubernetes Prow Robot
f2700895a4 Merge pull request #127422 from srivastav-abhishek/go-vet-fix
Go vet fixes for gotip
2024-09-20 14:37:58 +01:00
Abhishek Kr Srivastav
95860cff1c Fix Go vet errors for master golang
Co-authored-by: Rajalakshmi-Girish <rajalakshmi.girish1@ibm.com>
Co-authored-by: Abhishek Kr Srivastav <Abhishek.kr.srivastav@ibm.com>
2024-09-20 12:36:38 +05:30
Kubernetes Prow Robot
24a447e38f Merge pull request #124317 from hoyho/bugfix/expand_vol_warning
fix warning when using CSI driver to expand volume
2024-09-18 16:02:44 +01:00
carlory
47eed55a66 Remove attachable volume limit from node's status capacity if they exists 2024-09-18 11:09:53 +08:00
cpanato
e09c28ec69 update debian-base and setcap to bookworm-v1.0.4
Signed-off-by: cpanato <ctadeu@gmail.com>
2024-09-05 14:09:04 -06:00
Madhu Rajanna
d644860cfb check usage when VolumeCondition is not supported
The Usage and VolumeCondition are both
optional in the response and kubelet
need to consider returning metrics if
either one is set.
2024-09-02 11:03:26 +02:00
carlory
a9de9a3d07 controller-manager adds a new controller named volumeattributesclass-protection-controller which adds/removes finalizer to VAC for protection 2024-08-30 15:00:46 +08:00
carlory
e1228754f6 csi volume plugin stop watching the volumeattachment object if the object is not found or volume is not attached when kubelet wait for volume attached 2024-08-28 12:47:27 +08:00
Kubernetes Prow Robot
113b12c6fb Merge pull request #124439 from bells17/csi-translation-lib-structured-and-contextual-logging
Migrate k8s.io/csi-translation-lib/.* to structured logging
2024-08-19 18:13:54 -07:00
Hemant Kumar
26798d24c2 Fix linter hints etc 2024-08-14 12:54:40 -04:00
Hemant Kumar
97eddc8f65 commiting uncommited changes on 2024-08-14 12:46:00 -0400 2024-08-14 12:46:00 -04:00
Hemant Kumar
99fc7cc7b1 Use new size returned by nodeExpander for recording in ASOW 2024-08-14 09:24:53 -04:00
Hemant Kumar
de5e4963c1 Use allocatedResources as new size for finishing volume expansion
on the node.

Also add new tests for node only expansion modes
2024-08-14 09:24:48 -04:00
Kubernetes Prow Robot
ceb58a4dbc Merge pull request #126323 from saschagrunert/image-volume-runtime-panic
Fix runtime panic in imagevolume `CanSupport` method
2024-07-24 04:57:06 -07:00
Sascha Grunert
a43cc08ffb Fix runtime panic in imagevolume CanSupport method
The following tests are failing right now:

- ci-kubernetes-e2e-ec2-alpha-enabled-default
- ci-kubernetes-e2e-gci-gce-alpha-enabled-default

Because of:

```
goroutine 347 [running]:
k8s.io/apimachinery/pkg/util/runtime.logPanic({0x33092b0, 0x4d6ed00}, {0x296a7e0, 0x4c20c10})
        k8s.io/apimachinery/pkg/util/runtime/runtime.go:107 +0xbc
k8s.io/apimachinery/pkg/util/runtime.handleCrash({0x33092b0, 0x4d6ed00}, {0x296a7e0, 0x4c20c10}, {0x4d6ed00, 0x0, 0x1000000004400a5?})
        k8s.io/apimachinery/pkg/util/runtime/runtime.go:82 +0x5e
k8s.io/apimachinery/pkg/util/runtime.HandleCrash({0x0, 0x0, 0xc000517be8?})
        k8s.io/apimachinery/pkg/util/runtime/runtime.go:59 +0x108
panic({0x296a7e0?, 0x4c20c10?})
        runtime/panic.go:770 +0x132
k8s.io/kubernetes/pkg/volume/image.(*imagePlugin).CanSupport(0xc00183d140?, 0xc0006a2600?)
        k8s.io/kubernetes/pkg/volume/image/image.go:52 +0x3
k8s.io/kubernetes/pkg/volume.(*VolumePluginMgr).FindPluginBySpec(0xc0008a1388, 0xc000f7ddb8)
        k8s.io/kubernetes/pkg/volume/plugins.go:637 +0x208
k8s.io/kubernetes/pkg/kubelet/volumemanager/cache.(*desiredStateOfWorld).AddPodToVolume(0xc000517bc0, {0xc000e94a50, 0x24}, 0xc00172b208, 0xc000f7ddb8, {0xc0017892a0, 0xe}, {0xc000a4d6ec, 0x3}, {0xc000978af0, ...})
        k8s.io/kubernetes/pkg/kubelet/volumemanager/cache/desired_state_of_world.go:270 +0xf2
k8s.io/kubernetes/pkg/kubelet/volumemanager/populator.(*desiredStateOfWorldPopulator).processPodVolumes(0xc0003e6700, 0xc00172b208, 0xc00183ddd8)
        k8s.io/kubernetes/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go:319 +0x685
k8s.io/kubernetes/pkg/kubelet/volumemanager/populator.(*desiredStateOfWorldPopulator).findAndAddNewPods(0xc0003e6700)
        k8s.io/kubernetes/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go:204 +0x2dc
k8s.io/kubernetes/pkg/kubelet/volumemanager/populator.(*desiredStateOfWorldPopulator).populatorLoop(0xc0003e6700)
        k8s.io/kubernetes/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go:173 +0x18
k8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1(0xc000905eb0?)
        k8s.io/apimachinery/pkg/util/wait/backoff.go:226 +0x33
k8s.io/apimachinery/pkg/util/wait.BackoffUntil(0xc00183df70, {0x32d7340, 0xc000a7be60}, 0x1, 0xc0000b2660)
        k8s.io/apimachinery/pkg/util/wait/backoff.go:227 +0xaf
k8s.io/apimachinery/pkg/util/wait.JitterUntil(0xc000f8bf70, 0x5f5e100, 0x0, 0x1, 0xc0000b2660)
        k8s.io/apimachinery/pkg/util/wait/backoff.go:204 +0x7f
k8s.io/apimachinery/pkg/util/wait.Until(...)
        k8s.io/apimachinery/pkg/util/wait/backoff.go:161
k8s.io/kubernetes/pkg/kubelet/volumemanager/populator.(*desiredStateOfWorldPopulator).Run(0xc0003e6700, {0x32e3228, 0xc000b3faa0}, 0xc0000b2660)
        k8s.io/kubernetes/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go:158 +0x1a5
created by k8s.io/kubernetes/pkg/kubelet/volumemanager.(*volumeManager).Run in goroutine 335
        k8s.io/kubernetes/pkg/kubelet/volumemanager/volume_manager.go:286 +0x14f
```

Fixes https://github.com/kubernetes/kubernetes/issues/126317

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2024-07-24 09:54:03 +02:00
carlory
c4851c64a0 remove volumeoptions from VolumePlugin and BlockVolumePlugin 2024-07-24 14:07:02 +08:00