Commit Graph

8514 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
4488fd4749 Merge pull request #89053 from bg-chun/move_package
migration of re-usable package from pkg/kubelet/cm/cpumanager to pkg/kubelet/cm
2020-03-26 11:14:09 -07:00
yameiwang
6783f991c3 fix function NodeAllocatableRoot 2020-03-26 18:48:05 +08:00
Shihang Zhang
b56da85a77 sync api/v1/pod/util with api/pod/util and remove DefaultContainers 2020-03-24 16:42:32 -07:00
Kubernetes Prow Robot
89dfebb214 Merge pull request #89359 from gongguan/process
eviction by process number
2020-03-24 15:27:25 -07:00
Kubernetes Prow Robot
f321d0ed12 Merge pull request #89361 from fuweid/me-use-statsfunc
eviction: use previous statsFunc
2020-03-24 00:28:46 -07:00
Kubernetes Prow Robot
907d4c1bb9 Merge pull request #89381 from dashpole/comment_disable_readonly
Add comment explaining when to remove cadvisor json endpoints
2020-03-23 20:31:19 -07:00
louisgong
e56d40d048 remove unused param 2020-03-24 09:25:04 +08:00
louisgong
0efb70c0a2 eviction by process number 2020-03-24 09:25:04 +08:00
David Ashpole
b4ed7273da add comment explaining when to remove the --enable-cadvisor-json-endpoints 2020-03-23 12:52:00 -07:00
Wei Fu
a809aaf03d eviction: use previous statsFunc
No need to use summary to create statsFunc for localStorageEviction.
Just use vals from makeSignalObservations.

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2020-03-23 19:11:17 +08:00
Dan Winship
8edd656238 Don't log whether we're using iptables --random-fully 2020-03-20 08:06:27 -04:00
Uzuku
302cda742a Handle nil pod in pod format 2020-03-20 15:30:44 +08:00
Kubernetes Prow Robot
e74ad38854 Merge pull request #89013 from dims/copy-jsonlog-from-docker/docker-locally
Copy jsonlog from docker/docker locally
2020-03-19 12:08:37 -07:00
Kubernetes Prow Robot
dfb6993947 Merge pull request #89182 from dims/just-use-runtime-numcpu
Just use runtime.NumCPU on windows
2020-03-19 06:05:51 -07:00
Odin Ugedal
2830827442 Add support for removing unsupported huge page sizes
When kubelet is restarted, it will now remove the resources for huge
page sizes no longer supported. This is required when:
- node disables huge pages
- changing the default huge page size in older versions of linux
(because it will then only support the newly set default).
- Software updates that change what sizes are supported (eg. by changing
boot parameters).
2020-03-19 13:08:08 +01:00
Kubernetes Prow Robot
34ad7d1984 Merge pull request #88450 from shikanon/fix/golintTypo
fix typos error in handlers_test.go file
2020-03-18 14:24:44 -07:00
Kubernetes Prow Robot
0c8ac83e04 Merge pull request #88871 from dashpole/fix_oom
Use the container whose limit is hit for system OOMs
2020-03-17 19:27:54 -07:00
Davanum Srinivas
825f99c396 run update-vendor.sh
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-03-17 21:26:07 -04:00
Davanum Srinivas
0c52ffe08f make local copy of JSONLog
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-03-17 21:25:55 -04:00
Kubernetes Prow Robot
761c72f691 Merge pull request #88348 from tedyu/image-not-nil
Check that ImageInspect pointer is not nil
2020-03-17 16:21:01 -07:00
Kubernetes Prow Robot
ffc87f2d0c Merge pull request #88266 from mattjmcnaughton/mattjmcnaughton/delete-pluginwatcher-DOS-TODO
Delete TODO around implementing rate limiting to protect against DOS
2020-03-17 16:20:34 -07:00
Davanum Srinivas
25c3ddf22e Just use runtime.NumCPU on windows
docker folks added NumCPU implementation for windows that
supported hot-plugging of CPUs. The implementation used the
GetProcessAffinityMask to be able to check which CPUs are
active as well.
3707a76921

The golang "runtime" package has also bene using GetProcessAffinityMask
since 1.6 beta1:
6410e67a1e

So we don't seem to need the sysinfo.NumCPU from docker/docker.

(Note that this is PR is an effort to get away from dependencies from
docker/docker)

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-03-17 15:53:52 -04:00
Eric Mountain
22e0ee768b Removes container RefManager 2020-03-16 14:30:57 +01:00
Byonggon Chun
a3047672d0 move pkg/kubelet/cm/cpumanager/containermap to pkg/kubelet/cm/containermap for reusing
containerMap is used in CPU Manager to store all containers information in the node.
containerMap provides a mapping from (pod, container) -> containerID for all containers a pod
It is reusable in another component in pkg/kubelet/cm which needs to track changes of all containers in the node.

Signed-off-by: Byonggon Chun <bg.chun@samsung.com>
2020-03-14 02:38:51 +09:00
Giuseppe Scrivano
bb5ed1b797 kubelet: add initial support for cgroupv2
do a conversion from the cgroups v1 limits to cgroups v2.

e.g. cpu.shares on cgroups v1 has a range of [2-262144] while the
equivalent on cgroups v2 is cpu.weight that uses a range [1-10000].

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-03-12 08:50:19 +01:00
Kubernetes Prow Robot
562a420d86 Merge pull request #88915 from roycaihw/fix/image-manager-data-race
Fix a data race in kubelet image manager
2020-03-11 15:04:37 -07:00
Kubernetes Prow Robot
a37d68ec05 Merge pull request #88917 from adelina-t/fix_pod_admit_handler
Implement noopWindowsResourceAllocator
2020-03-11 07:45:37 -07:00
Kubernetes Prow Robot
7989ca4324 Merge pull request #88734 from joelsmith/master
Work-around for missing memory metrics on CRI-O exited containers
2020-03-10 16:21:36 -07:00
Haowei Cai
462b75388f let image cache do sort on write instead of on read to avoid data
race and improve efficienty
2020-03-10 15:33:34 -07:00
Adelina Tuvenie
a9f834d17d Implement noopWindowsResourceAllocator
On Windows, the podAdmitHandler returned by the GetAllocateResourcesPodAdmitHandler() func
and registered by the Kubelet is nil.

We implement a noopWindowsResourceAllocator that would admit any pod for Windows in order
to be consistent with the original implementation.
2020-03-10 21:32:23 +01:00
Savitha Raghunathan
3234d34714 moving volume plugin dir to kubelet config - part 1 2020-03-10 16:22:29 -04:00
Clayton Coleman
c26653ced9 kubelet: Also set PodIPs when assign a host network PodIP
When we clobber PodIP we should also overwrite PodIPs and not rely
on the apiserver to fix it for us - this caused the Kubelet status
manager to report a large string of the following warnings when
it tried to reconcile a host network pod:

```
 I0309 19:41:05.283623    1326 status_manager.go:846] Pod status is inconsistent with cached status for pod "machine-config-daemon-jvwz4_openshift-machine-config-operator(61176279-f752-4e1c-ac8a-b48f0a68d54a)", a reconciliation should be triggered:
   &v1.PodStatus{
           ... // 5 identical fields
           HostIP:                "10.0.32.2",
           PodIP:                 "10.0.32.2",
 -         PodIPs:                []v1.PodIP{{IP: "10.0.32.2"}},
 +         PodIPs:                []v1.PodIP{},
           StartTime:             s"2020-03-09 19:41:05 +0000 UTC",
           InitContainerStatuses: nil,
           ... // 3 identical fields
   }
```

With the changes to the apiserver, this only happens once, but it is
still a bug.
2020-03-09 18:15:32 -04:00
zyu
78e2668539 Delay sorting of evictUnits slice in kuberuntime_gc
Signed-off-by: zyu <yuzhihong@gmail.com>
2020-03-09 12:24:42 -07:00
Kubernetes Prow Robot
ef672c1c2d Merge pull request #88678 from verult/slow-rxm-attach
Parallelize attach operations across different nodes for volumes that allow multi-attach
2020-03-06 13:17:21 -08:00
David Ashpole
fc6b4719fd Use the container whose limit is hit for system OOMs 2020-03-06 11:06:16 -08:00
Christian Huffman
c6fd25d100 Updated CSIDriver references 2020-03-06 08:21:26 -05:00
Kubernetes Prow Robot
5708511499 Merge pull request #88708 from mikedanese/deleteopts
Migrate clientset metav1.DeleteOpts to pass-by-value
2020-03-05 23:09:23 -08:00
Cheng Xing
ef3d66b98b Parallelize attach operations across different nodes for volumes that allow multi-attach 2020-03-05 22:22:05 -08:00
Kubernetes Prow Robot
cd0057c16a Merge pull request #88876 from nolancon/none-policy-fix
Topology Manager none policy bug fix
2020-03-05 21:40:33 -08:00
Kubernetes Prow Robot
e90c908f64 Merge pull request #88141 from tedyu/pvc-being-del
Don't try to create VolumeSpec immediately after underlying PVC is being deleted
2020-03-05 21:39:23 -08:00
Kubernetes Prow Robot
ce01a9bad0 Merge pull request #88857 from nolancon/test-fix
Check for nil cpuManager in container manager
2020-03-05 20:05:14 -08:00
Kubernetes Prow Robot
48541a0b16 Merge pull request #87650 from nolancon/beta-feature-gate
Update TopologyManager Feature Gate
2020-03-05 20:03:04 -08:00
Ted Yu
723761aa88 Don't try to create VolumeSpec immediately after underlying PVC is being deleted
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
2020-03-05 16:45:50 -08:00
Mike Danese
76f8594378 more artisanal fixes
Most of these could have been refactored automatically but it wouldn't
have been uglier. The unsophisticated tooling left lots of unnecessary
struct -> pointer -> struct transitions.
2020-03-05 14:59:47 -08:00
Mike Danese
c58e69ec79 automated refactor 2020-03-05 14:59:46 -08:00
Joel Smith
da988294ec Work-around for missing metrics on CRI-O exited containers
HPA needs metrics for exited init containers before it will
take action. By setting memory and CPU usage to zero for any
containers that cAdvisor didn't provide statistics for, we
are assured that HPA will be able to correctly calculate
pod resource usage.
2020-03-05 13:20:43 -07:00
nolancon
0551d408ac Bug fix for TM none policy 2020-03-05 14:25:48 +00:00
nolancon
4baa1d967d Check for nil cpuManager 2020-03-05 07:54:33 +00:00
Kubernetes Prow Robot
7a513b575a Merge pull request #88440 from smarterclayton/container_success_fix
Ensure Kubelet always reports terminating pod container status
2020-03-04 20:13:04 -08:00
Kubernetes Prow Robot
ac32644d6e Merge pull request #87759 from klueska/upstream-move-cpu-allocation-to-pod-admit
Guarantee aligned resources across containers
2020-03-04 20:12:37 -08:00