Commit Graph

713 Commits

Author SHA1 Message Date
Stephen Solka
203679cc61 prefer NoError/Error over Nil/NotNil 2020-09-04 18:35:52 -04:00
Kubernetes Prow Robot
db10d8c942 Merge pull request #93773 from knight42/fix/kubelet-concurrent-map-writes
fix(kubelet): protect `containerCleanupInfos` from concurrent map writes
2020-09-01 18:43:27 -07:00
Kubernetes Prow Robot
0decea31a1 Merge pull request #93124 from gaurav1086/InjectImageInspects_fix_range_issue
[kubelet/dockershim] : fix range iterator copy issue in InjectImageInspects
2020-08-29 20:04:21 -07:00
Kubernetes Prow Robot
9ff9e8798a Merge pull request #93498 from luigibk/use-ebtables-from-utils
Update k8s.io/utils dependency and use ebtables from there
2020-08-28 06:37:21 -07:00
Kubernetes Prow Robot
5ec83bc973 Merge pull request #91181 from zvier/master
fix golint errors for `pkg/kubelet/dockershim`
2020-08-27 17:54:45 -07:00
knight42
ebf60155bf test(kubelet): add a regression test to verify kubelet would not panic 2020-08-07 17:50:22 +08:00
knight42
a471843246 fix(kubelet): protect containerCleanupInfos from concurrent map writes
Signed-off-by: knight42 <anonymousknight96@gmail.com>
2020-08-07 16:55:56 +08:00
Sergey Kanzhelev
3af652f2f2 revert auto-completed package names 2020-07-31 03:47:04 +00:00
Sergey Kanzhelev
d20fd40884 remove legacy leftovers of portmapping functionality that was moved to CNI 2020-07-30 23:12:16 +00:00
Luigi Bitonti
19793bd3fa Update k8s.io/utils dependency and use ebtables from there 2020-07-30 08:58:21 +01:00
Jordan Liggitt
f33dc28094 generated: hack/update-hack-tools.sh && hack/update-vendor.sh 2020-07-25 16:45:02 -04:00
wawa0210
aea228f5dd fix no-new-privileges on windows 2020-07-20 16:14:52 -04:00
Gaurav Singh
0fb9b12153 [kubelet/dockershim] : Use local copy for range iterator
Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>
2020-07-18 12:52:23 -04:00
Kubernetes Prow Robot
3f8f9998b0 Merge pull request #90948 from pjbgf/seccomp-least-priv-dockershim
Add seccomp least privilege for docker sandbox
2020-07-14 02:23:22 -07:00
Giuseppe Scrivano
0d2a493a8f kubelet: skip setting the devices cgroup
use the new libcontainer feature of skipping setting the devices
cgroup.  This is necessary on cgroup v2 to avoid leaking a eBPF
program every time the cgroup is re-configured.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-07-09 09:37:46 +02:00
Paulo Gomes
8976e3620f Add seccomp enforcement and validation based on new GA fields
Adds seccomp validation.

This ensures that field and annotation values must match when present.

Co-authored-by: Sascha Grunert <sgrunert@suse.com>
2020-07-06 09:13:25 +01:00
Antonio Ojea
6f79600e73 bump cni library version to v0.8.0
last CNI library release is 0.7.1 from Jun 11, 2019.
Since then, there was introduced new feature and bugfixes.

Currently, this library is only being used by dockershim,
the other CRI plugins are vendoring it directly

However, this will help also to mitigate some of the issues with the
CI jobs that are still using dockershim.

Signed-off-by: Antonio Ojea <antonio.ojea.garcia@gmail.com>
2020-07-01 18:09:19 +02:00
Giuseppe Scrivano
e94aebf4cb pkg/kubelet: adapt to new libcontainer API
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-06-24 18:39:51 +02:00
Vinod K L Swamy
ac3f87346f KubeProxy and DockerShim changes for Ipv6 dual stack support on Windows
Signed-off-by: Vinod K L Swamy <vinodko@microsoft.com>
2020-06-10 15:36:48 -07:00
zvier
d43817b5ec fix golint errors for pkg/kubelet/dockershim
Signed-off-by: zvier <zvier20@gmail.com>
2020-05-24 23:45:17 +08:00
Davanum Srinivas
0608e8be25 update bazel BUILD files
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-20 10:57:47 -04:00
Davanum Srinivas
5692926914 Move packages for slightly better UX for consumers
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-20 10:57:46 -04:00
Kubernetes Prow Robot
55d71532c0 Merge pull request #81165 from johscheuer/update-traffic-shaping-docs
Update internal traffic shaping docs
2020-05-17 03:01:35 -07:00
Davanum Srinivas
07d88617e5 Run hack/update-vendor.sh
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:33 -04:00
Davanum Srinivas
442a69c3bd switch over k/k to use klog v2
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:27 -04:00
Kubernetes Prow Robot
4339ac30a0 Merge pull request #90554 from vboulineau/vboulineau/fix_win_stats_init_containers
kubelet: fix `/stats/summary` endpoint on Windows when init-containers are present on the node
2020-05-13 15:58:51 -07:00
Paulo Gomes
6db5b5c50f Add seccomp least privilege for docker sandbox 2020-05-10 11:52:42 +01:00
mattjmcnaughton
29fa1f4566 Fix the verify job
Small changes to fix the verify job. Add the proper headers, fix lint
errors, etc...
2020-05-07 17:18:50 -04:00
mattjmcnaughton
b36f637f0d Add dockerless tags to all files in dockershim
As the final step, add the `dockerless` tags to all files in the
dockershim. Using `-tags=dockerless` in `go build`, we can compile
kubelet without the dockershim.

Once cadvisor no longer depends on `docker/docker`, compiling with
`-tags=dockerless` should be sufficient to compile the Kubelet w/o a
dependency on `docker/docker`.
2020-05-07 17:18:50 -04:00
mattjmcnaughton
7fb6c51822 Move DockerLegacyService interface out of pkg/kubelet/dockershim
DockerLegacyService interface is used throughout `pkg/kubelet`.
It used to live in the `pkg/kubelet/dockershim` package. While we
would eventually like to remove it entirely, we need to give users some form
of warning.

By including the interface in
`pkg/kubelet/legacy/logs.go`, we ensure the interface is
available to `pkg/kubelet`, even when we are building with the `dockerless`
tag (i.e. not compiling the dockershim).
While the interface always exists, there will be no implementations of the
interface when building with the `dockerless` tag. The lack of
implementations should not be an issue, as we only expect `pkg/kubelet` code
to need an implementation of the `DockerLegacyService` when we are using
docker. If we are using docker, but building with the `dockerless` tag, than
this will be just one of many things that breaks.

`pkg/kubelet/legacy` might not be the best name for the package... I'm
very open to finding a different package name or even an already
existing package.
2020-05-07 17:18:49 -04:00
mattjmcnaughton
e0e6d54cdf Extract running Dockershim into own file
Extract a `runDockershim` function into a file outside of `kubelet.go`.
We can use build tags to compile two separate functions... one which
actually runs dockershim and one that is a no-op.
2020-05-07 17:18:48 -04:00
Vincent Boulineau
3bff11244b kubelet: fix /stats/summary endpoint on Windows when init-containers are present on the node
Following changes in #87730, Kubelet is directly hcsshim to gather stats.
However, unlike `docker stats` API that was used before, hcsshim does not
keep information about exited containers.

When the Kubelet lists containers (`docker_container.go:ListContainers()`),
it sets `All: true`, retrieving non-running containers.

When docker stats is called with such container id, it'll return a valid JSON
with all values set to 0. The non-running containers are filtered later on in the process.

When the hcsshim is called with such container id, it'll return an error, effectively
stopping the stats retrieval for all containers.
2020-05-04 14:42:02 +02:00
ZP-AlwaysWin
5796b7a32e Repair description 2020-04-17 09:36:38 +08:00
Kubernetes Prow Robot
6239abe698 Merge pull request #89225 from andrewsykim/apparmor-api
move apparmor annotation constants to k8s.io/api/core/v1
2020-04-12 19:11:50 -07:00
Tim Hockin
9551ecb7c3 Cleanup: Change "Ip" to "IP" in func and var names 2020-04-10 15:29:50 -07:00
Tim Hockin
efb24d44c6 Rename iptables IsIpv6 to IsIPv6 2020-04-10 15:29:50 -07:00
Tim Hockin
ef934a2c5e Add Protocol() method to iptables
Enables simpler printing of which IP family the iptables interface is
managing.
2020-04-10 15:29:49 -07:00
Andrew Sy Kim
2e56866c97 move apparmor annotation constants to k8s.io/api/core/v1
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2020-04-06 10:22:04 -04:00
Davanum Srinivas
7368359782 Stop using deprecated method
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-04-03 15:48:32 -04: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
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
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
Patrick Lang
19acf7d051 Fix cpu resource limit on Windows 2020-02-24 19:46:39 +00:00
Kubernetes Prow Robot
0943976757 Merge pull request #83295 from oshothebig/typo
Fix typo in docker_sandbox.go
2020-02-21 10:32:32 -08:00
Kubernetes Prow Robot
d0983b562d Merge pull request #84731 from verb/ec-pid
Add namespace targeting mode to CRI and kubelet
2020-02-20 04:29:17 -08:00
Ted Yu
884e5ee3d4 Check that ImageInspect pointer is not nil 2020-02-19 12:45:54 -08:00
Kubernetes Prow Robot
3d70825195 Merge pull request #87933 from jdef/fix/86367
Fix docker/journald logging conformance
2020-02-18 20:58:25 -08:00
James DeFelice
0e178f9341 rename to sharedLimitWriter 2020-02-14 13:48:41 -06:00
Benjamin Elder
1631825e44 bump pause to 3.2 in kubelet 2020-02-14 11:40:15 -08:00
Tim Hockin
fc5b08569f Create an OWNERS alias for net-driver-approvers 2020-02-13 14:43:45 -08:00