Commit Graph

269 Commits

Author SHA1 Message Date
Jan Safranek
5b69362ff0 Skip unused volumes in VolumeManager
DesiredStateOfWorldPopulator should skip a volume that is not used in any
pod. "Used" means either mounted (via volumeMounts) or used as raw block
device (via volumeDevices).

Especially when block feature is disabled, a block volume must not get into
DesiredStateOfWorld, because it would be formatted and mounted there.
2019-08-15 10:48:38 +02:00
Jan Safranek
8d580262f9 Refactor makeMountsMap into GetPodVolumeNames
The function will be handy in subsequent patches. Also change custom maps
into sets.String.
2019-08-15 10:48:38 +02:00
Kubernetes Prow Robot
345e58b434 Merge pull request #75071 from mkimuram/issue/74552e2e
Fix volume reconstruction and add e2e tests
2019-08-06 06:05:55 -07:00
Jan Safranek
c744385804 Add limit of stored errors
There should be a limit so the set of errors does not grow too much in
case of some bug in the populator.
2019-08-05 10:06:44 +02:00
Lee Verberne
b5d592e735 Simplify VisitContainers pattern in volumemanager populator 2019-08-03 14:13:46 +00:00
Masaki Kimura
c130b77a48 Move nil check for mapperPlugin earlier in reconstructVolume 2019-08-01 20:36:21 +00:00
Jan Safranek
bab81b809b Don't create mounter when reconstructing block volume
CSI mounter will create a new directory + json for a filesystem volume,
leading to even more orphaned files/directories.
2019-08-01 20:04:10 +00:00
Lee Verberne
7bce18b0ce Generated code for Ephemeral Containers in kubelet 2019-07-24 16:25:52 +00:00
Lee Verberne
ea212d5d49 Add support for ephemeral containers to the kubelet 2019-07-24 16:24:26 +00:00
Jan Safranek
af0c2fe572 Fix some error messages 2019-07-22 10:54:33 +02:00
Jan Safranek
17be780651 Add events to dswp 2019-07-19 17:46:21 +02:00
Kubernetes Prow Robot
2501a9083d Merge pull request #68513 from codenrhoden/mount-refactor
Refactor util/mount interface in prep for moving out of k/k
2019-06-28 13:57:28 -07:00
Mario Valderrama
a44b754405 Refactor online volume resize unit tests 2019-06-17 18:24:22 +02:00
Travis Rhoden
be7da5052f Refactor pkg/util/mount to be more reusable
This patch refactors pkg/util/mount to be more usable outside of
Kubernetes. This is done by refactoring mount.Interface to only contain
methods that are not K8s specific. Methods that are not relevant to
basic mount activities but still have OS-specific implementations are
now found in a mount.HostUtils interface.
2019-06-14 09:35:18 -06:00
Hemant Kumar
0f62e3fbe8 Make language of error msgs and func names consistent: ExpandVolumeInUse
change feature flag
Fix the e2e test for online and offline expansion
2019-06-03 12:26:56 -04:00
Robert Krawitz
38753efcc7 Set sizeLimit to the smaller of the ephemeral storage limit and the emptydir limit (if set) 2019-05-29 15:17:47 -04:00
Robert Krawitz
f8661d6240 Use xfs_quota command to apply quotas 2019-05-29 15:12:28 -04:00
Robert Krawitz
448e0c44c6 Apply quotas via syscalls using cgo. 2019-05-29 15:12:28 -04:00
Andrew Kim
c919139245 update import of generic featuregate code from k8s.io/apiserver/pkg/util/feature -> k8s.io/component-base/featuregate 2019-05-08 10:01:50 -04:00
Hemant Kumar
15e2421f90 Add jan and msau42 as approver for volumemanager 2019-05-03 13:34:50 -04:00
Xing Yang
000ab86788 Move CSIDriver Lister to the controller 2019-04-05 12:20:11 -07:00
Kubernetes Prow Robot
428a8e04d4 Merge pull request #75458 from jingxu97/March/raceofActualDesiredState
Fix race condition between actual and desired state in kublet volume manager
2019-03-25 13:24:51 -07:00
Jing Xu
7cb5df6728 Fix race condition between actual and desired state in kublet volume
manager

This PR fixes the issue #75345. This fix modified the checking volume in
actual state when validating whether volume can be removed from desired state or not. Only if volume status is already mounted in actual state, it can be removed from desired state.
For the case of mounting fails always, it can still work because the
check also validate whether pod still exist in pod manager. In case of
mount fails, pod should be able to removed from pod manager so that
volume can also be removed from desired state.
2019-03-18 17:08:48 -07:00
caiweidong
92aee22646 Remove the unused variabe: syncDuration in volumemanager 2019-03-15 10:04:41 +08:00
Hemant Kumar
89d1de9eb9 Rename ExandFS to NodeExpand
Handle resize error in online resizing
Use NodeExpandable plugin to mark volumes that require node expansion
2019-03-08 09:21:44 -05:00
Yecheng Fu
8940976602 Distinguish volume path with mount path 2019-02-27 19:31:26 +08:00
Kubernetes Prow Robot
a684bd5eb1 Merge pull request #73556 from msau42/triage-72931
Mark volume as in use even when node status didn't change
2019-02-12 17:29:05 -08:00
Michelle Au
80a2698a02 Add unit tests for volumesinuse during node status update 2019-02-12 13:46:30 -08:00
Roy Lenferink
b43c04452f Updated OWNERS files to include link to docs 2019-02-04 22:33:12 +01:00
Kubernetes Prow Robot
ca1336957e Merge pull request #73404 from tsmetana/fix-kubelet-volume-test
Kubelet: Fix volumemanager test race
2019-02-04 06:21:11 -08:00
Kubernetes Prow Robot
6fb69d3967 Merge pull request #71648 from houjun41544/20181203-volume
Fix an error in comment
2019-02-03 12:02:45 -08:00
danielqsj
cf1fb8a1cd fix format issue 2019-01-31 22:01:13 +08:00
Daniel (Shijun) Qian
e72b32558c Merge branch 'master' into keymutex 2019-01-31 20:50:57 +08:00
danielqsj
657a1a1a34 change import alias of utils/strings 2019-01-30 10:44:09 +08:00
danielqsj
093328e57f migrate to k8s.io/utils/strings 2019-01-30 10:24:00 +08:00
Andrew Kim
84191eb99b replace pkg/util/file with k8s.io/utils/path 2019-01-29 15:20:13 -05:00
Tomas Smetana
45464f0349 Kubelet: Fix volumemanager test race 2019-01-28 15:05:26 +01:00
Kubernetes Prow Robot
54c4428eb4 Merge pull request #71276 from jingxu97/Oct/uncertain
Handle failed attach operation leave uncertain volume attach state
2019-01-17 22:52:57 -08:00
gaorong
545aca3d18 fix some typos 2019-01-08 12:46:05 +08:00
Kubernetes Prow Robot
cd02e752bf Merge pull request #71509 from cofyc/fix71438
Fix device mountable volume names in DSW
2018-12-19 00:51:52 -08:00
Yecheng Fu
67552a8f6e Add unit test to verify generated volume names. 2018-12-12 13:03:21 +08:00
houjun
5c6eb3a153 Fix an error in comment 2018-12-03 11:35:07 +08:00
Yecheng Fu
5ada29ac16 Rename GetUniqueVolumeNameForNonAttachableVolume to GetUniqueVolumeNameFromSpecWithPod 2018-12-01 12:25:32 +08:00
Yecheng Fu
f5642bbe88 Fix device mountable volume names in DSW 2018-12-01 12:25:14 +08:00
k8s-ci-robot
79e5cb2cb7 Merge pull request #71302 from liggitt/verify-unit-test-feature-gates
Split mutable and read-only access to feature gates, limit tests to readonly access
2018-11-29 21:45:12 -08:00
Jordan Liggitt
2498ca7606 drop VerifyFeatureGatesUnchanged 2018-11-21 11:51:33 -05:00
Hemant Kumar
d2b6e30143 Fix bug with volume getting marked as not in-use with pending op
Add test for verifying volume detach
2018-11-20 11:58:47 -05:00
Jing Xu
562d0fea53 Handle failed attach operation leave uncertain volume attach state
This commit adds the unit tests for the PR. It also includes some files
that are affected by the function name changes.
2018-11-19 17:21:49 -08:00
k8s-ci-robot
ec2e767e59 Merge pull request #71167 from msau42/block-beta
Promote raw block volume support to beta
2018-11-16 20:28:03 -08:00
k8s-ci-robot
f877b2257a Merge pull request #71074 from jsafrane/volume-manager-races
Fix race between MountVolume and UnmountDevice
2018-11-16 18:22:14 -08:00