saadali
542f2dc708
Introduce new kubelet volume manager
...
This commit adds a new volume manager in kubelet that synchronizes
volume mount/unmount (and attach/detach, if attach/detach controller
is not enabled).
This eliminates the race conditions between the pod creation loop
and the orphaned volumes loops. It also removes the unmount/detach
from the `syncPod()` path so volume clean up never blocks the
`syncPod` loop.
2016-06-15 09:34:08 -07:00
saadali
9b6a505f8a
Rename UniqueDeviceName to UniqueVolumeName
...
Rename UniqueDeviceName to UniqueVolumeName and move helper functions
from attacherdetacher to volumehelper package.
Introduce UniquePodName alias
2016-06-15 09:32:12 -07:00
Jan Safranek
0ee9160f88
volume recycler: Don't start a new recycler pod if one already exists.
...
Recycling is a long duration process and when the recycler controller is
restarted in the meantime, it should not start a new recycler pod if there is
one already running.
This means that the recycler pod must have deterministic name based on name
of the recycled PV, we then get name conflicts when creating the pod.
Two things need to be changed:
- recycler controller and recycler plugins must pass the PV.Name to place,
where the pod is created.
- create recycler pod with deterministic name and check "already exists" error.
When at it, remove useless 'resourceVersion' argument and make log messages
starting with lowercase.
2016-05-19 12:58:25 +02:00
saadali
79012f6d53
Rename volume.Builder to Mounter and volume.Cleaner to Unmounter
2016-03-25 11:29:58 -07:00
Tim Hockin
23fe2a3584
add maintainers for each volume driver
2016-03-22 22:19:53 -07:00
Tim St. Clair
246b389275
Move test-only volume files to test-only volume package
2016-02-29 14:44:28 -08:00
Chao Xu
ad46715f51
generate fake client for release_1_2
2016-02-17 16:10:02 -08:00
Chao Xu
c72d234bbf
replacing handwritten client in several controllers
2016-01-31 15:42:02 -08:00
Fabio Yeon
7205a160ac
Remove all instances of "/tmp" from unit tests and replace with a common
...
tmp directory creator. Exception is documented.
2016-01-27 16:11:22 -08:00
k8s-merge-robot
3f5e417999
Merge pull request #19502 from swagiaal/internalize-ownership
...
Auto commit by PR queue bot
2016-01-26 23:06:39 -08:00
Clayton Coleman
33085c0cf2
Update tests to handle codec changes
2016-01-22 13:27:26 -05:00
harry
7405c7899b
Add strings pkg to hold strings utils
...
Replace funtions with strings pkg
Fix all references and rename the pkg
2016-01-15 12:37:50 +08:00
Sami Wagiaalla
7767698459
Remove SupportsOwnershipManagement volume attribute
2016-01-13 10:37:10 -05:00
Sami Wagiaalla
f650648aae
Add fsGroup to SetUp and SetUpAt
2016-01-13 10:37:10 -05:00
Chakravarthy Nelluri
fa76de79e5
Add support for flex volume. Flex volume adds support for thirdparty(vendor)
...
volumes and custom mounts.
2015-12-23 14:11:38 -08:00
Phillip Wittrock
c67ce887f2
Volume Metrics Interface and base implementation.
...
- Add volume.MetricsProvider function to Volume interface.
- Add volume.MetricsDu for providing metrics via executing "du".
- Add volulme.MetricsNil for unsupported Volumes.
2015-12-09 16:06:24 -08:00
Paul Morie
911757486d
Refactor volume.Builder.IsReadOnly() to volume.Builder.GetAttributes()
2015-11-13 23:34:48 -05:00
markturansky
d3bb6575fb
Revert "nfs: check if /sbin/mount.nfs* is present in CanSupport()"
...
This reverts commit 1b3a88dc87
.
2015-11-03 16:09:57 -05:00
Sami Wagiaalla
1d352a16b8
Support volume relabling for pods which specify an SELinux label
2015-10-28 09:26:58 -04:00
Paul Morie
3cd12f5e05
FSGroup implementation
2015-10-22 16:40:59 -04:00
Huamin Chen
1b3a88dc87
nfs: check if /sbin/mount.nfs* is present in CanSupport()
...
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-10-21 13:47:41 -04:00
Filip Grzadkowski
7fe34f2050
Introduce nsenter writer for volume plugins
2015-09-17 16:40:29 +02:00
markturansky
7bc55b5aea
configurable pv recyclers
2015-09-15 12:48:25 -04:00
Chao Xu
64bf839e9f
refactor tests to use testapi rather than latest directly
2015-09-11 17:32:23 -07:00
Chao Xu
dd6c121d7f
massive changes
2015-09-11 17:31:47 -07:00
markturansky
0e7f73ad67
expand volume.Spec to include full Volume and PV
2015-09-03 08:57:32 -04:00
k8s-merge-robot
e8cda9dc92
Merge pull request #13310 from markturansky/volume_config
...
Auto commit by PR queue bot
2015-09-02 14:05:30 -07:00
deads2k
7e180c258d
update testclient for delegating reaction chain
2015-09-01 12:58:35 -04:00
markturansky
68358fd308
Added VolumeConfig to volumes
2015-09-01 12:04:26 -04:00
Saad Ali
b05cab0bc5
Merge pull request #6945 from eparis/IsMountPoint
...
Rename IsMountPoint to IsLikelyNotMountPoint
2015-08-19 12:47:51 -07:00
Kris Rousey
ae6c64d9bb
Moving everyone to unversioned client
2015-08-18 10:23:03 -07:00
Eric Paris
f125ad88ce
Rename IsMountPoint to IsLikelyNotMountPoint
...
IsLikelyNotMountPoint determines if a directory is not a mountpoint.
It is fast but not necessarily ALWAYS correct. If the path is in fact
a bind mount from one part of a mount to another it will not be detected.
mkdir /tmp/a /tmp/b; mount --bin /tmp/a /tmp/b; IsLikelyNotMountPoint("/tmp/b")
will return true. When in fact /tmp/b is a mount point. So this patch
renames the function and switches it from a positive to a negative (I
could think of a good positive name). This should make future users of
this function aware that it isn't quite perfect, but probably good
enough.
2015-08-14 18:45:43 -04:00
Kris Rousey
565189f5b8
Correcting all go vet errors
2015-08-11 13:55:37 -07:00
Mike Danese
8e33cbfa28
rewrite go imports
2015-08-05 17:30:03 -07:00
Brendan Burns
63cf00d24f
Merge pull request #10424 from markturansky/readonly_fix
...
Auto commit by PR queue bot
2015-07-29 14:25:44 -07:00
markturansky
920cb34b1e
rebased and updated to latest
2015-07-29 14:38:40 -04:00
markturansky
63ccfa2beb
Added unit tests for each PV using IsReadOnly
2015-07-29 14:38:40 -04:00
markturansky
fae6759490
IsReadOnly bool on builder
2015-07-29 14:35:37 -04:00
markturansky
649374ddb4
fixed newRecycler func for HostPath & NFS
2015-07-29 14:13:05 -04:00
jiangyaoguo
612f68f820
reflector nfs volume to seperate builder and cleaner
2015-07-20 19:16:48 +08:00
markturansky
39c5152e2c
fixed pv recycler timeout precision
2015-06-20 00:34:29 -04:00
markturansky
cfc08c4fdf
Changed busybox img to official gcr.io image
2015-06-16 16:15:19 -04:00
markturansky
986cbb56d4
Recycling HostPath and NFS impls
2015-06-04 15:46:03 -04:00
Jan Safranek
d2b4ae4df4
Fix persistent volumes.
...
Check Spec.PersistentVolumeSource in NFS, RBD, Gluster and iSCSI volume
plugins.
2015-06-02 09:19:28 -04:00
Saad Ali
8e25670c07
Merge pull request #8688 from markturansky/nfs_missing_pv
...
Fixed NFS CanSupport func for PVs
2015-05-26 18:48:31 -07:00
Paul Morie
38c96725c0
Add doc.go files for all volume plugins
2015-05-23 16:59:12 -04:00
markturansky
4f88d418c8
Added missing PV support to NFS
2015-05-22 15:10:40 -04:00
Tim Hockin
f66ca25d9f
Rename AccessMode to PersistentVolumeAccessMode
2015-05-18 17:21:30 -07:00
Paul Morie
e2dd95a8b3
Make nfs volume plugin use injected mounter
2015-05-11 13:36:36 -04:00
Paul Morie
cd359ffa73
Refactor volume interfaces to receive pod instead of ObjectReference
2015-05-10 20:12:57 -04:00
Paul Morie
b538642464
Inject mounter into volume plugins
2015-05-04 11:28:57 -04:00
Eric Paris
6b3a6e6b98
Make copyright ownership statement generic
...
Instead of saying "Google Inc." (which is not always correct) say "The
Kubernetes Authors", which is generic.
2015-05-01 17:49:56 -04:00
Deyuan Deng
6897095e56
Change mount.Interface.Mount to exec('mount'), instead of syscall
2015-04-29 10:46:32 -04:00
markturansky
e1481fb9c2
Refactored Volume plugins to use InternalVolume instead of API types
2015-04-14 14:25:01 -04:00
Paul Morie
c98e89fca0
Set rootcontext of emptyDir tmpfs mounts correctly
2015-04-13 12:50:36 -04:00
Deyuan Deng
d62afa85ff
Abstract ismountpoint and use platform mounter for NFS volume
2015-04-01 23:05:02 -04:00
Kris Rousey
6904c4d585
Fixing a lot of string formatting issues with regards to:
...
* Improper format specifier (e.g. %s for bools or %s for ints)
* More or less parameters than format specifiers
* Not calling a formatting function when it should have (e.g. Error() instead of Errorf())
2015-03-31 16:47:10 -07:00
markturansky
111f3d5120
Add GetAccessModes to volume plugin interface
2015-03-24 16:02:39 -04:00
markturansky
2fd82f60f4
Move escape function to util and clarify name
2015-03-24 13:52:31 -04:00
Tim Hockin
bfadae77e0
Promote volume plugins, prep for persistent vols
...
Move pkg/kubelet/volume/... to pkg/volume/...
Some renames to make the soon-to-come persistent volumes work clearer.
2015-03-20 13:49:40 -07:00