kubernetes/pkg/kubelet
Jan Safranek e0f3e5c457 Rework volume reconstruction
Subsequent SELinux work (see http://kep.k8s.io/1710) will need
ActualStateOfWorld populated around the time kubelet starts mounting
volumes.

Therefore reconstruct volumes before starting reconciler, but do not depend
on the desired state of world populated nor node.status - both need a
working API server, which may not be available at that time.

All reconstructed volumes are marked as Uncertain and reconciler will sort
them out - call SetUp to ensure the volume is really mounted when a pod
needs the volume or call TearDown then there is no such pod.

Finish the reconstruction when the API server becomes available:
- Clean up volumes that failed reconstruction and are not needed.

- Update devicePath of reconstructed volumes from node.status. Make sure
  not to overwrite devicePath that may have been updated when the volume
  was mounted by reconcile().

Hiding all this rework behind SELinuxMountReadWriteOncePod FeatureGate,
just to make sure we have a way back if this commit is buggy.
2022-11-03 16:55:12 +01:00
..
apis Merge pull request #110263 from claudiubelu/unittests 2022-10-25 14:50:34 -07:00
cadvisor Promote Local storage capacity isolation feature to GA 2022-08-02 23:45:48 -07:00
certificate unittests: Fixes unit tests for Windows 2022-10-25 23:46:56 +03:00
checkpointmanager
client Merge pull request #96004 from serathius/datapolicy-kubelet-pkg 2022-03-04 15:34:51 -08:00
cloudresource
cm Merge pull request #113408 from dashpole/kubelet_context 2022-11-01 19:59:08 -07:00
config Remove ioutil in kubelet and its tests 2022-07-30 12:35:26 +09:00
configmap Generate and format files 2022-07-26 13:14:05 -04:00
container plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
cri plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
envvars
events
eviction plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
images plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
kubeletconfig Merge pull request #110263 from claudiubelu/unittests 2022-10-25 14:50:34 -07:00
kuberuntime Merge pull request #113481 from rphillips/fixes/77063 2022-11-01 19:59:50 -07:00
leaky
lifecycle plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
logs plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
metrics Merge pull request #113476 from marosset/hpc-to-stable 2022-11-01 19:59:43 -07:00
network Merge pull request #112414 from pacoxu/kubelet-multi-options 2022-09-29 21:10:28 -07:00
nodeshutdown Remove ioutil in kubelet and its tests 2022-07-30 12:35:26 +09:00
nodestatus plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
oom generated: Run hack/update-gofmt.sh 2021-08-24 15:47:49 -04:00
pleg plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
pluginmanager unittests: Fixes unit tests for Windows (part 3) 2022-10-21 19:25:48 +03:00
pod Remove EphemeralContainers feature-gate checks 2022-07-26 02:55:30 +02:00
preemption migrated preemption.go, stateful.go, resource_allocation.go to structured logging 2021-11-08 22:52:47 +05:30
prober plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
qos
runtimeclass Generate and format files 2022-07-26 13:14:05 -04:00
secret Generate and format files 2022-07-26 13:14:05 -04:00
server plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
stats plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
status Merge pull request #110263 from claudiubelu/unittests 2022-10-25 14:50:34 -07:00
sysctl remove the unused constant AnnotationInvalidReason since sysctl annotations are deprecated and migrated to fields 2022-09-30 14:53:46 +08:00
token Merge pull request #99685 from yangjunmyfm192085/run-test24 2022-05-03 17:16:47 -07:00
types Align lifecycle handlers and probes 2022-10-19 09:51:52 -07:00
util Merge pull request #111220 from giuseppe/drop-superfluous-function 2022-11-01 09:34:45 -07:00
volumemanager Rework volume reconstruction 2022-11-03 16:55:12 +01:00
winstats Merge pull request #111418 from muyangren2/winstats_assert 2022-07-29 19:29:29 -07:00
active_deadline_test.go Add comment for 0th case 2022-10-08 12:06:42 +03:00
active_deadline.go Migrate to k8s.io/utils/clock in pkg/kubelet 2021-09-10 12:20:09 +02:00
doc.go
errors.go
kubelet_getters_test.go Add test case for getPodVolumeSubpathsDir 2022-04-27 16:33:28 +08:00
kubelet_getters.go plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
kubelet_network_linux.go Add IPTablesOwnershipCleanup feature to disable kubelet iptables setup 2022-07-27 13:33:09 -04:00
kubelet_network_others.go generated: Run hack/update-gofmt.sh 2021-08-24 15:47:49 -04:00
kubelet_network_test.go generated: Run hack/update-gofmt.sh 2021-08-24 15:47:49 -04:00
kubelet_network.go plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
kubelet_node_status_others.go generated: Run hack/update-gofmt.sh 2021-08-24 15:47:49 -04:00
kubelet_node_status_test.go plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
kubelet_node_status_windows.go generated: Run hack/update-gofmt.sh 2021-08-24 15:47:49 -04:00
kubelet_node_status.go plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
kubelet_pods_linux_test.go Promote Local storage capacity isolation feature to GA 2022-08-02 23:45:48 -07:00
kubelet_pods_test.go plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
kubelet_pods_windows_test.go unittests: Fixes unit tests for Windows 2022-10-25 23:46:56 +03:00
kubelet_pods.go Merge pull request #113476 from marosset/hpc-to-stable 2022-11-01 19:59:43 -07:00
kubelet_resources_test.go
kubelet_resources.go
kubelet_test.go plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
kubelet_volumes_linux_test.go Remove ioutil in kubelet and its tests 2022-07-30 12:35:26 +09:00
kubelet_volumes_test.go Upgrade CSIMigrationGCE feature gate to GA 2022-08-02 09:14:27 -07:00
kubelet_volumes.go remove ioutil in kubelet 2022-04-27 21:08:42 +08:00
kubelet.go plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
OWNERS Check in OWNERS modified by update-yamlfmt.sh 2021-12-09 21:31:26 -05:00
pod_container_deletor_test.go
pod_container_deletor.go plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
pod_workers_test.go Merge pull request #110071 from gjkim42/deflake-TestStaticPodExclusion 2022-07-29 13:17:43 -07:00
pod_workers.go grammar: replace all occurrences of "the the" with "the" 2022-10-14 09:03:14 +02:00
reason_cache_test.go
reason_cache.go Generate and format files 2022-07-26 13:14:05 -04:00
runonce_test.go plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
runonce.go plumb context from CRI calls through kubelet 2022-10-28 02:55:28 +00:00
runtime.go
userns_manager_test.go kubelet: drop bitArray implementation 2022-08-19 16:55:15 +02:00
userns_manager.go kubelet: drop bitArray implementation 2022-08-19 16:55:15 +02:00
volume_host.go kubelet: add GetHostIDsForPod() 2022-08-03 19:53:22 +02:00