Commit Graph

42458 Commits

Author SHA1 Message Date
刁浩 10284789
5908cd0d90 simplify returning boolean expression in /pkg/volume
Signed-off-by: 刁浩 10284789 <diao.hao@zte.com.cn>
2021-05-25 02:39:55 +00:00
sanwishe
9e257ec194 Optimization logging format for pkg/kubelet
Signed-off-by: sanwishe <jiang.mingzhi35@zte.com.cn>
2021-05-25 08:52:08 +08:00
Kubernetes Prow Robot
f545438bd3 Merge pull request #101587 from nixpanic/in-tree/block-metrics
Fix a panic for in-tree drivers that partialy support Block volume metrics
2021-05-24 16:18:47 -07:00
Kubernetes Prow Robot
943e0c2f91 Merge pull request #101394 from Huang-Wei/dynamic-events-handler
sched: dynamic event handlers registration
2021-05-24 16:18:40 -07:00
Kubernetes Prow Robot
88c0e8968b Merge pull request #99680 from CaoDonghui123/fixissues4
fix error of setting  negative value for containerLogMaxSize
2021-05-24 16:18:20 -07:00
Kubernetes Prow Robot
cf59c68e15 Merge pull request #102088 from wzshiming/fix/pod-devices-has-pod-lock
Add the missing RLock
2021-05-24 15:16:20 -07:00
Alexander Minbaev
3b4be144ab add enqueue-extensions nodevolumelimits plugin 2021-05-24 16:59:31 -05:00
Kubernetes Prow Robot
f826662fec Merge pull request #102189 from alculquicondor/cleanup-create-pods
Remove unused util CreatePods
2021-05-24 13:38:57 -07:00
Kubernetes Prow Robot
815bae5aaa Merge pull request #102074 from creydr/change-the-users-of-isqualifiedname-to-validatequalifiedname
Change the users of IsQualifiedName to ValidateQualifiedName
2021-05-24 13:38:49 -07:00
Kubernetes Prow Robot
3464112cf9 Merge pull request #102229 from sanposhiho/fix/nil-pointer-on-nodevolumelimits
Fix: Logging causes nil-pointer
2021-05-24 07:17:38 -07:00
arkbriar
f9cb68a2b1 Fix EndpointSliceCache::getEndpointsMap for different endpoints with same IP 2021-05-24 19:00:58 +08:00
Kir Kolyshkin
f1aee7e049 kubelet/cm: GetResourceStats -> MemoryUsage
Commit cc50aa9dfb introduced GetResourceStats, a method which collected
all the statistics from various cgroup controllers, only to discard all
of the info collected except a single value (memory usage).

While one may argue that this method can potentially be used from other
places, this did not happen since it was added 4+ years ago.

Let's streamline this code and only collect what we need, i.e. memory
usage. Rename the method accordingly.

While at it, fix pkg/kubelet/cm/cgroup_manager_unsupported.go to not
instantiate a new error every time a method is called.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2021-05-23 20:43:52 -07:00
sanposhiho
517feed45b Add: interface check 2021-05-23 23:48:42 +09:00
sanposhiho
be16b7f818 Fix: Logging causes nilpointer 2021-05-23 23:17:29 +09:00
Kubernetes Prow Robot
d8f9e4587a Merge pull request #101742 from ravisantoshgudimetla/promote-maxSurge-beta
Promote DS MaxSurge to beta
2021-05-23 04:33:38 -07:00
Kubernetes Prow Robot
5be51c9fbf Merge pull request #102186 from Jiawei0227/scaleio
Add warning for removed and deprecated plugin
2021-05-23 01:15:37 -07:00
Shiming Zhang
202a012093 Add restart unit test 2021-05-23 00:47:36 +08:00
kikimo
20c02357ca Add hint to fake topology manager. 2021-05-22 15:29:08 +08:00
Kubernetes Prow Robot
a2357f4516 Merge pull request #100136 from Danil-Grigorev/disable-cloud-providers-fg
Add feature gate to disable all in-tree cloud providers
2021-05-21 15:39:36 -07:00
Wei Huang
1b3a124ba6 Scheduler now registers event handlers dynamically
- move clusterEventMap to Configurator
- dynamic event handlers registration for core API resources
- dynamic event handlers registration for custom resources
2021-05-21 13:47:06 -07:00
Kir Kolyshkin
c299b8fc9a kubelet/cm: rm propagateControllers
This was added by commit a9772b2290.

In the current codebase, the cgroup being updated was created using
runc/opencontainers' manager.Apply(), which already does controllers
propagation, so there is no need to repeat that on every update.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2021-05-21 13:44:54 -07:00
Kubernetes Prow Robot
cb1775c73a Merge pull request #101893 from kikimo/fix-numa-topo-error
Avoid undesirable allocation when device is associated with multiple …
2021-05-21 08:40:47 -07:00
Danil-Grigorev
5d57b3794c Add DisableCloudProviders FG
FeatureGate acts as a secondary switch to disable cloud-controller loops
in KCM, Kubelet and KAPI.

Provide comprehensive logging information to users, so they will be
guided in adoption of out-of-tree cloud provider implementation.
2021-05-21 16:09:44 +02:00
Dave Chen
fadf3e1531 Graduate prefer nominated node to beta
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-05-21 15:13:50 +08:00
Jiawei Wang
cc089c0400 Add warning for deprecated and removed plugin 2021-05-20 21:20:44 -07:00
Kubernetes Prow Robot
f803daaca7 Merge pull request #101510 from huchengze/patch-12
migrate log in pkg/volume/plugins.go
2021-05-20 21:14:57 -07:00
mengjiao.liu
c24b87b133 Fixed a possible nil pointer dereference caused by variable plug 2021-05-21 10:17:04 +08:00
Kubernetes Prow Robot
5de1a754c8 Merge pull request #102147 from kolyshkin/update-runc-rc94-take-II
vendor: bump runc to rc95
2021-05-20 17:16:56 -07:00
Kubernetes Prow Robot
823d870725 Merge pull request #102014 from klueska/upstream-update-cpu-asssignment-algorithm
Refactor the algorithm used to decide CPU assignments in the CPUManager
2021-05-20 16:10:56 -07:00
Kubernetes Prow Robot
e259943f7f Merge pull request #101265 from s-ito-ts/ut_kubelet_topology
Adds unit tests for pkg/kubelet/cm/cpumanager/topology
2021-05-20 14:16:28 -07:00
Kubernetes Prow Robot
6e4e32985a Merge pull request #99576 from marosset/windows-host-process-work
Windows host process work
2021-05-20 14:16:15 -07:00
Aldo Culquicondor
d8aad7944c Remove unused util CreatePods
And rename CreatePodsWithControllerRef to simply CreatePods
2021-05-20 20:27:21 +00:00
Kubernetes Prow Robot
8a70c48553 Merge pull request #102159 from roycaihw/mark-containerimage-name-optional
Mark ContainerImage.names as optional
2021-05-20 13:14:40 -07:00
Kubernetes Prow Robot
77e769b040 Merge pull request #100754 from liggitt/warning-ga
Graduate WarningHeader feature to GA
2021-05-20 13:14:16 -07:00
Kubernetes Prow Robot
f52ab3845d Merge pull request #101099 from pacoxu/podpreset-clean
remove pod preset testdata and args
2021-05-20 10:40:36 -07:00
Niels de Vos
b997e0e4d6 Add SupportsMetrics() for Block-mode volumes
Volumes that are provisioned with `VolumeMode: Block` often have a
MetrucsProvider interface declared in their type. However, the
MetricsProvider should implement a GetMetrics() function. In the cases
where the storage drivers do not implement GetMetrics(), a panic can
occur.

Usual type-assertions are not sufficient in this case. All assertions
assume the interface is present. There is no straight forward way to
verify that a valid GetMetrics() function is provided.

By adding SupportsMetrics(), storage driver implementations require
careful reviewing for metrics support.
2021-05-20 17:10:23 +02:00
Niels de Vos
e7dedc5cd1 Support Capacity metric for block PVCs for in-tree drivers
PR #97972 added support for gathering metrics for Block PVCs provided by
CSI drivers. The in-tree drivers can support at leas the most basic
metric; Capacity.
2021-05-20 16:37:12 +02:00
Niels de Vos
2b9c81b87d Add helper functions for Block volume Capacity detection
Similar to how NewMetricsStatFS() works, the new NewMetricsBlock()
provides the GetMetrics() interface for Block volumes.

Additional metrics for Block volumes are difficult to gather. There is
no guarantee that there is a filesystem on the volume, which makes most
of the volume metrics useless.

Advanced storage might be able to detect the actual consumption (when
thin-provisioned) vs the capacity. However, this is out of the scope for
a standard helper function and requires intimate knowledge of the used
storage system.
2021-05-20 16:37:12 +02:00
kikimo
c0a7939cbb remove redundant test branch in sorting algorithm 2021-05-20 20:31:47 +08:00
Rancho Chen
9469ee7025 Add testcase for freeCPUs with three Sockets 2021-05-20 11:49:51 +00:00
Kubernetes Prow Robot
f4f238e038 Merge pull request #101601 from AliceZhang2016/indexed-job-stable-hostname
specify pod name and hostname in indexed job
2021-05-20 01:41:05 -07:00
pacoxu
75c19da843 correct messages in post start hook error handling
Signed-off-by: pacoxu <paco.xu@daocloud.io>
2021-05-20 15:14:47 +08:00
Odin Ugedal
d312ef7eb6 Set cgroups via opencontainer
This sets cgroup config via libcontainer to make sure we apply the
correct values to the systemd slices and scopes.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2021-05-19 23:52:01 -07:00
Kir Kolyshkin
f3cdfc488e vendor: bump runc to rc95
runc rc95 contains a fix for CVE-2021-30465.

runc rc94 provides fixes and improvements.

One notable change is cgroup manager's Set now accept Resources rather
than Cgroup (see https://github.com/opencontainers/runc/pull/2906).
Modify the code accordingly.

Also update runc dependencies (as hinted by hack/lint-depdendencies.sh):

        github.com/cilium/ebpf v0.5.0
        github.com/containerd/console v1.0.2
        github.com/coreos/go-systemd/v22 v22.3.1
        github.com/godbus/dbus/v5 v5.0.4
        github.com/moby/sys/mountinfo v0.4.1
        golang.org/x/sys v0.0.0-20210426230700-d19ff857e887
        github.com/google/go-cmp v0.5.4
        github.com/kr/pretty v0.2.1
        github.com/opencontainers/runtime-spec v1.0.3-0.20210326190908-1c3f411f0417

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2021-05-19 23:51:59 -07:00
Kir Kolyshkin
029e6b6e3a pkg/kubelet/nodeshutdown/systemd: fix for dbus 5.0.4
dbus 5.0.4 adds StoreProperty method which needs to be implemented for
the mock.

Fixes the errors like

> pkg/kubelet/nodeshutdown/systemd/inhibit_linux_test.go:88:9: cannot use f.fakeDBusObject (variable of type *fakeDBusObject) as dbus.BusObject value in return statement: missing method StoreProperty

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2021-05-19 23:51:57 -07:00
Giuseppe Scrivano
12abc3b7c9 kubelet: reuse manager
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2021-05-19 23:51:49 -07:00
Haowei Cai
1652e59c9b mark ContainerImage.names as optional
kubelet is the only writer of v1.Node .status.images[].names. When an
image has neither RepoDigests nor RepoTags, the value gets stored in
etcd as null. Marking the field as optional can help JSON API clients
to avoid hitting serialization error when the returned status contains
null .status.images[].names.
2021-05-19 18:55:56 -07:00
Kubernetes Prow Robot
85674ae53d Merge pull request #101685 from Jiawei0227/scaleio
Remove scaleio volume plugins from k8s codebase
2021-05-19 18:25:05 -07:00
Kubernetes Prow Robot
c115435adc Merge pull request #101688 from liggitt/field-warnings
Add field-level warning plumbing and add pod spec warnings
2021-05-19 17:23:04 -07:00
kikimo
445b9c0762 minor tweak on numa node sorting algorithm 2021-05-20 08:21:20 +08:00