967 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
761f5646be Merge pull request #130138 from rata/userns-enabled-by-default
features: Enable user namespaces by default
2025-03-12 20:13:48 -07:00
Anish Ramasekar
ad8666ce88 Update credential provider plugin to support using service account token
Signed-off-by: Anish Ramasekar <anish.ramasekar@gmail.com>
2025-03-11 20:36:32 -07:00
Tim Allclair
6d0b6278cd Rename some allocation.Manager methods 2025-03-10 10:03:35 -07:00
Tim Allclair
d4444dd598 Use actuated resources to determine resize status 2025-03-10 10:03:35 -07:00
Kubernetes Prow Robot
9d9e1afdf7 Merge pull request #130576 from tallclair/allocated-uid
Change allocation manager pod UID to types.UID
2025-03-04 16:41:51 -08:00
Tim Allclair
8fac9c68e1 Change allocation manager pod UID to types.UID 2025-03-04 13:54:27 -08:00
Tim Allclair
523a19aa44 Extract isInPlacePodVerticalScalingAllowed to shared function 2025-03-03 14:08:49 -08:00
Tim Allclair
460db5c137 Always use allocated resources for pods that don't support resize 2025-03-03 14:07:30 -08:00
Tim Allclair
fe4671356c Call allocationManager directly 2025-02-21 09:28:37 -08:00
Tim Allclair
84ec78ede7 Extract pod allocation manager from status manager 2025-02-18 19:49:41 -08:00
Rodrigo Campos
3725c6f765 pkg/kubelet: Make newTestKubeletWithImageList allocate a userns manager
When switching the feature flag to on by default, this test was failing:

	I0213 14:42:45.311186  341895 factory.go:193] Registered Plugin "containerd"
	I0213 14:42:45.315673  341895 plugins.go:615] "Loaded volume plugin" pluginName="fake"
	I0213 14:42:45.315750  341895 kubelet_pods.go:1165] "Clean up pod workers for terminated pods"
	I0213 14:42:45.315759  341895 kubelet_pods.go:1215] "Clean up probes for terminated pods"
	I0213 14:42:45.315764  341895 kubelet_pods.go:1219] "Clean up orphaned pod statuses"
	I0213 14:42:45.315768  341895 kubelet_pods.go:1223] "Clean up orphaned pod user namespace allocations"
	--- FAIL: TestKubelet_HandlePodCleanups (0.00s)
	    --- FAIL: TestKubelet_HandlePodCleanups/missing_pod_is_requested_for_termination_with_short_grace_period (0.00s)
	panic: runtime error: invalid memory address or nil pointer dereference [recovered]
		panic: runtime error: invalid memory address or nil pointer dereference
	[signal SIGSEGV: segmentation violation code=0x1 addr=0x38 pc=0x2b14d7e]

	goroutine 142 [running]:
	testing.tRunner.func1.2({0x30b5260, 0x5cfa1e0})
		/usr/lib/go-1.23/src/testing/testing.go:1632 +0x230
	testing.tRunner.func1()
		/usr/lib/go-1.23/src/testing/testing.go:1635 +0x35e
	panic({0x30b5260?, 0x5cfa1e0?})
		/usr/lib/go-1.23/src/runtime/panic.go:785 +0x132
	k8s.io/kubernetes/pkg/kubelet/userns.(*UsernsManager).CleanupOrphanedPodUsernsAllocations(0x0, {0x5d90f80, 0x0, 0x0?}, {0xc0006a1d50, 0x1, 0x0?})
		/home/rodrigo/src/kinvolk/kubernetes/kubernetes/pkg/kubelet/userns/userns_manager.go:474 +0x9e
	k8s.io/kubernetes/pkg/kubelet.(*Kubelet).HandlePodCleanups(0xc00067c808, {0x3b876b0, 0x5d90f80})
		/home/rodrigo/src/kinvolk/kubernetes/kubernetes/pkg/kubelet/kubelet_pods.go:1224 +0x618
	k8s.io/kubernetes/pkg/kubelet.TestKubelet_HandlePodCleanups.func35(0xc0001349c0)
		/home/rodrigo/src/kinvolk/kubernetes/kubernetes/pkg/kubelet/kubelet_pods_test.go:6415 +0x72d
	testing.tRunner(0xc0001349c0, 0xc0009801b0)
		/usr/lib/go-1.23/src/testing/testing.go:1690 +0xf4
	created by testing.(*T).Run in goroutine 141
		/usr/lib/go-1.23/src/testing/testing.go:1743 +0x390
	exit status 2
	FAIL	k8s.io/kubernetes/pkg/kubelet	0.029s

The issue is that no userns manager is allocated in the FakeKubelet.
Let's allocate one.

Signed-off-by: Rodrigo Campos <rodrigoca@microsoft.com>
2025-02-13 15:00:07 +01:00
Mark Rossetti
df1e9eeeb8 skipping InPlacePodVerticleScaling unit tests on Windows
Signed-off-by: Mark Rossetti <marosset@microsoft.com>
2025-02-12 15:57:20 -08:00
vivzbansal
242dec3e34 Updated some unit tests and resolved some review comments 2025-01-27 19:46:54 +00:00
vivzbansal
8fa8277908 Added some unit tests 2025-01-27 19:46:54 +00:00
vivzbansal
6c5cf68722 Resolved latest review comments 2025-01-27 19:46:33 +00:00
vivzbansal
6cf5b80c64 Fix some unit test error 2025-01-27 19:42:14 +00:00
vivzbansal
d1fac494f4 resolve merge conflicts 2025-01-27 19:42:13 +00:00
Tim Allclair
8342d39956 Equate CPU limits below the minimum effective limit (10m) 2024-11-12 17:23:17 -08:00
Tim Allclair
5a3a40cd19 Handle resize edge cases around min CPU shares 2024-11-07 17:02:25 -08:00
Sotiris Salloumis
68fcc9cf8a Fix slow reconcile when quickly reverting resize patch 2024-11-07 19:51:47 +01:00
Kubernetes Prow Robot
c462d4c8e5 Merge pull request #126096 from utam0k/support-disabling-oom-group-kill
kubelet: new kubelet config option for disabling group oom kill
2024-11-07 06:29:36 +00:00
utam0k
4f909c14a0 kubelet: new kubelet config option for disabling group oom kill
Signed-off-by: utam0k <k0ma@utam0k.jp>
2024-11-07 12:03:04 +09:00
Anish Shah
207842d3e0 drop InPlacePodVerticalScaling support in windows 2024-11-06 12:57:55 -08:00
Kubernetes Prow Robot
099449954e Merge pull request #128556 from AnishShah/kubelet-reject-metric
Introduce a metric to track kubelet admission failure.
2024-11-06 20:10:33 +00:00
Kubernetes Prow Robot
0edef5aa91 Merge pull request #128447 from bart0sh/PR164-migrate-cadvisor-to-contextual-logging
kubelet: Migrate CAdvisor to contextual logging
2024-11-06 20:10:10 +00:00
Anish Shah
d4f05fdda5 Introduce a metric to track kubelet admission failure. 2024-11-06 00:07:17 -08:00
Ed Bartosh
e5cb071c2e kubelet: Migrate CAdvisor to contextual logging 2024-11-06 01:49:20 +02:00
Tim Allclair
ea53083c14 Don't checkpoint ResizeStatus 2024-11-05 15:48:35 -08:00
Tim Allclair
4a4748d23c Determine resize status from state in handlePodResourcesResize 2024-11-05 15:41:49 -08:00
Kubernetes Prow Robot
b3cf9c6e5c Merge pull request #128269 from tallclair/allocated
[FG:InPlacePodVerticalScaling] Rework handling of allocated resources
2024-10-25 23:24:52 +01:00
Tim Allclair
321eff34f7 Rework allocated resources handling 2024-10-24 09:27:40 -07:00
Maksym Pavlenko
449f86b0ba Refactor node shutdown manager
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-10-23 17:36:22 -07:00
Tim Allclair
53aa727708 Checkpoint allocated requests and limits 2024-10-22 11:26:48 -07:00
Kubernetes Prow Robot
a7fcc89ac0 Merge pull request #125936 from sivchari/use-ptr
use utils/ptr package instead of utils/pointer
2024-10-07 01:02:04 +01:00
sivchari
4eab3cca0a use utils/ptr package instead of utils/pointer
Signed-off-by: sivchari <shibuuuu5@gmail.com>
2024-10-03 11:33:12 +09:00
Matthieu MOREL
b7248077a9 fix: enable formatter rule from testifylint in module k8s.io/kubernetes
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-09-26 08:19:54 +02:00
Matthieu MOREL
fa0e38981c fix: enable compares rule from testifylint in module k8s.io/kubernetes
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-09-22 11:20:05 +02:00
Oksana Baranova
2474369227 kubelet: migrate pleg to contextual logging
Signed-off-by: Oksana Baranova <oksana.baranova@intel.com>
2024-09-13 12:13:26 +03:00
bells17
1298c8a5fe csi-translation-lib: Support structured and contextual logging 2024-07-18 14:01:27 +09:00
Matthieu MOREL
f014b754fb fix: enable empty and len rules from testifylint on pkg package
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

Co-authored-by: Patrick Ohly <patrick.ohly@intel.com>
2024-07-06 23:15:43 +00:00
Stephen Kitt
3f36c83c68 Switch to stretchr/testify / mockery for mocks
testify is used throughout the codebase; this switches mocks from
gomock to testify with the help of mockery for code generation.

Handlers and mocks in test/utils/oidc are moved to a new package:
mockery operates package by package, and requires packages to build
correctly; test/utils/oidc/testserver.go relies on the mocks and fails
to build when they are removed. Moving the interface and mocks to a
different package allows mockery to process that package without
having to build testserver.go.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2024-06-20 19:42:53 +02:00
Kubernetes Prow Robot
e6616033cb Merge pull request #120844 from bzsuni/cleanup/sets/kubelet
[kubelet] Use a generic Set instead of a specified Set
2024-06-14 09:09:17 -07:00
Kubernetes Prow Robot
f057f2de1c Merge pull request #124956 from TommyStarK/remove-deprecated-otel-noop-tracer
cmd/kubelet: remove deprecated otel NewNoopTracerProvider
2024-06-06 17:05:34 -07:00
Kubernetes Prow Robot
009a291573 Merge pull request #124677 from HirazawaUi/add-const-ContainerStatusUnknown
kubelet: Use constant replace same value variables of the ContainerStateTerminated Reason field
2024-06-06 17:05:23 -07:00
Kubernetes Prow Robot
a8d51f4f05 Use a generic Set instead of a specified Set in kubelet
Signed-off-by: bzsuni <bingzhe.sun@daocloud.io>
2024-06-04 14:25:43 +08:00
TommyStarK
c0ed4972ac kubelet: remove deprecated otel NewNoopTracerProvider
Signed-off-by: TommyStarK <thomasmilox@gmail.com>
2024-05-22 17:38:20 +02:00
Sascha Grunert
2aa9e76be1 Move pkg/kubelet/cri/remote to cri-client
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2024-05-14 10:58:18 +02:00
Sascha Grunert
9c712466f6 Make remote runtime and image service logging independent
It's now possible to pass around the `*klog.Logger` which can also be
`nil` to disable logging at all.

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2024-05-08 10:32:21 +02:00
HirazawaUi
7a4531c5ba add ContainerStatusUnknown constant 2024-05-03 00:27:19 +08:00
Marek Siarkowicz
3ee8178768 Cleanup defer from SetFeatureGateDuringTest function call 2024-04-24 20:25:29 +02:00