Commit Graph

1710 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
f66d1a9418 Merge pull request #133779 from carlory/kubelet-cleanup-pod-infra-container-image
Remove deprecated pod-infra-container-image flag
2025-10-31 10:10:07 -07:00
Kubernetes Prow Robot
59616d50fd Merge pull request #134691 from SergeyKanzhelev/watchdogIsGA
Lock SystemdWatchdog feature gate
2025-10-27 03:43:37 -07:00
Francesco Romani
fd5b2efa76 node: cpumanager: migrate to contextual logging
migrate the cpumanager code to contextual logging

design musings:
- golang contexts "[...] carries deadlines, cancellation signals, and
  other request-scoped values across API boundaries and between
  processes." (see: https://pkg.go.dev/context#pkg-overview).
  Thus, it generally makes sense to add contexts to most of the APIs
  and functions  as the resource management is done in the admission flow, when
  ultimately we process a request and we have time bounds;
- however, receiving a context from the outside and depending on it
  kind also conflicts with the goal of having uniform logging and "
  - attach key/value pairs that get included in all log messages
  - add names that describe which component or operation triggered a log messages"
  (see:
https://github.com/kubernetes/enhancements/tree/master/keps/sig-instrumentation/3077-contextual-logging#summary)
  Some of this conflict is due to the transitional nature of the PRs
  which we do when updating the codelet codebase. We can envision a
  final state on which the top level caller adds identifying information
  like pod UID and pod namespace/name pair; but up until all the calling
  chain is updated and wired, the results are gonna be inconsistent.
- continuing from the point above, the most realistic transition plan
  for the kubelet is outlined in
  https://github.com/kubernetes/kubernetes/issues/130069 .
  Since we do want to move in parallel and migrate on a
  subsystem-by-subsystem basis, each subsystem will be in charge to add
  the data they want to their contexts. I think this is the only
  reasonnable way forward, and the cost will be overhead and redundancy.
  We should do sweeping changes to uniform the flows once we completed
  the full transition to ensure uniformity.
- there are some well known packages which want to operate by design
  only in in-memory data structure, which arguably can't block.
  Shoehorning a context feels not great. Instead, we intentionally pass
  only the logger, which still is the core idea of contextual logging
  (see:
https://github.com/kubernetes/kubernetes/pull/125912#discussion_r1935919144)
  examples are the topology subpackage and the cpu_assignment logic
  (takeByTopology and friends)

Signed-off-by: Francesco Romani <fromani@redhat.com>
2025-10-27 08:38:58 +01:00
Markus Lehtonen
49e4fe9d2b kubelet: fix kubeletconfig.cgroupDriver in configz
Reflect the correct cgroupDriver setting in the configz enpoint in case
the cgroup driver setting is received from the CRI. Moves the
initialization of the configz handler to a slightly later phase where
the CRI has been queried.
2025-10-21 11:23:22 +03:00
Sergey Kanzhelev
9864c29861 Lock SystemdWatchdog feature gate 2025-10-17 17:50:41 +00:00
carlory
dc686f240b Remove deprecated pod-infra-container-image flag 2025-10-11 10:49:53 +08:00
Kubernetes Prow Robot
b40d570248 Merge pull request #133988 from bart0sh/PR199-migrate-kubelet-certificate-to-contextual-logging
migrate kubelet/certificate to contextual logging
2025-09-16 02:24:12 -07:00
Kubernetes Prow Robot
8826364a57 Merge pull request #131483 from tallclair/kubeletconfig
Clean up pkg/kubelet/config
2025-09-15 15:54:07 -07:00
Ed Bartosh
bf0429ed07 migrate kubelet/certificate to contextual logging 2025-09-10 12:33:33 +03:00
Ed Bartosh
b276c96ef8 Migrate kubelet/server to contextual logging 2025-09-09 12:49:42 +03:00
Kubernetes Prow Robot
1166dcb0ef Merge pull request #130154 from zhifei92/watchdog-migrate-structured-logging
chore(kubelet): migrate watchdog to contextual logging
2025-09-05 14:37:26 -07:00
zhangzhifei16
f1b28b0d1f chore(kubelet): migrate watchdog to contextual logging
fix: fix failed typecheck

fix unit test
2025-09-05 21:40:44 +08:00
Kubernetes Prow Robot
b86ff94014 Merge pull request #132960 from benluddy/webhook-client-content-type
Configure JSON content type for generic webhook RESTClient.
2025-09-02 08:01:15 -07:00
Kubernetes Prow Robot
23acc94870 Merge pull request #129986 from djboris9/patch-1
fix(kubelet-windows): Typo in structured log user display name fixed
2025-08-28 00:29:09 -07:00
Ben Luddy
0b16f0ae3c Test that auth{z,n} hook clients honor Kubelet's request encoding.
Kubelets can make a high volume of SubjectAccessReview and TokenReview requests via authn and authz
webhooks. Its default encoding, Protobuf, mitigates the serialization cost of these requests when
compared to client-go's default encoding, JSON. This test provides some insurance against changes to
webhook client construction that might cause the webhook clients to fail to respect Kubelet's
configured content type.
2025-08-14 13:26:49 -04:00
Tim Allclair
bd900111a8 Move ContainerRuntimeOptions flags to cmd/kubelet/app/options 2025-08-06 12:12:08 -07:00
Tim Allclair
ff6f4e1f63 Move kubelet config code to kubeletconfig 2025-08-06 12:08:19 -07:00
Peter Hunt
5dc2030c02 4033: GA KubeletCgroupDriverFromCRI feature gate
Signed-off-by: Peter Hunt <pehunt@redhat.com>
2025-07-24 12:37:14 -04:00
Peter Hunt
83a0d0c660 kubelet: add metric for version CRI implementation will lose support
Signed-off-by: Peter Hunt <pehunt@redhat.com>
2025-07-24 11:42:59 -04:00
Sergey Kanzhelev
6e77bff18b pod sandbox image is not being used by kubelet any longer 2025-07-21 18:51:07 +00:00
Kubernetes Prow Robot
ba35c0613d Merge pull request #132427 from soma00333/kuberuntime-contextual-logging-1
feat(kubelet): migrate kuberuntime to contextual logging
2025-07-21 05:50:36 -07:00
Kubernetes Prow Robot
c44bf18b9b Merge pull request #130713 from ArkaSaha30/bump-pause-version
dependency: update pause version to registry.k8s.io/pause:3.10.1
2025-07-20 20:16:26 -07:00
Boris Djurdjevic
904ba748f1 fix(kubelet-windows): Typo in structured log user display name 2025-07-20 19:34:29 +02:00
soma00333
ab839c93ff feat(kubelet): migrate kuberuntime to contextual logging 2025-07-20 09:47:50 +09:00
soma00333
7ddb042626 feat(cmd/kubelet): support structured and contextual logging 2025-07-19 17:10:37 +09:00
Ed Bartosh
75ccd69bab migrate pkg/kubelet/kubeletconfig to contextual logging 2025-07-17 10:16:03 +03:00
Ed Bartosh
7dad9e2af6 migrate pkg/kubelet/apis to contextual logging 2025-07-17 10:15:58 +03:00
ArkaSaha30
621482d68b update pause version to 3.10.1
This commit will update the pause version to 3.10.1 as per thread: https://kubernetes.slack.com/archives/CJH2GBF7Y/p1741674313893029

Signed-off-by: ArkaSaha30 <arkasaha30@gmail.com>
2025-07-09 16:38:14 +05:30
David Ashpole
5a20c38da6 remove usage of KubeletTracing featuregate from kubelet 2025-06-30 12:30:47 +00:00
Kubernetes Prow Robot
c1afec6a0b Merge pull request #132357 from dims/drop-usage-of-forked-copies-of-goyaml.v2-and-goyaml.v3
Drop usage of forked copies of goyaml.v2 and goyaml.v3
2025-06-25 09:48:29 -07:00
Davanum Srinivas
c5b4b133ce switch to latest sigs.k8s.io/yaml v1.5.0 (run update-gofmt.sh as well)
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2025-06-25 11:42:12 -04:00
Kubernetes Prow Robot
60f0ad4615 Merge pull request #122384 from carlory/remove-kubelet-flag-register-schedulable
kubelet: remove --register-schedulable flag
2025-06-18 05:26:54 -07:00
Davanum Srinivas
3827d3bc4f Drop usage of forked copies of goyaml.v2 and goyaml.v3
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2025-06-17 11:00:27 -04:00
zhangzhifei16
0a86ca4061 Add healthChecker to the kubeDeps 2025-06-10 21:14:17 +08:00
zhangzhifei16
4a7e68a355 fix: Fix the issue where kubelet's slow startup causes it to be mistakenly killed by the watchdog.
Add a lock for checkers and improve the unit test.

format code.

fix unit test
2025-06-09 21:27:57 +08:00
Kubernetes Prow Robot
513e188697 Merge pull request #129460 from sohankunkerkar/add-test
kubelet: add coverage for identical kubelet config and drop-in config content
2025-06-06 12:00:44 -07:00
Kubernetes Prow Robot
cd3b5c5766 Merge pull request #131658 from dims/allow-specifying-a-directory-for-image-credential-providers-json-configuration
Allow specifying a directory for image credential providers json configuration
2025-05-29 07:46:20 -07:00
Davanum Srinivas
be6807e6a5 Allow specifying a directory for image credential providers json/yaml configuration
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2025-05-29 09:42:26 -04:00
Kubernetes Prow Robot
2125fd6a94 Merge pull request #130161 from carlory/kep-2395-kubelet-cleanup
kubelet: clean up cloud provider code because cloud provider only supports empty or external and cloud is nil
2025-05-17 13:05:13 -07:00
carlory
c0b2f341a7 clean up cloud provider code because cloud provider only supports empty or external and cloud is nil
Signed-off-by: carlory <baofa.fan@daocloud.io>
2025-04-25 10:19:05 +08:00
Ajay Sundar Karuppasamy
a09cb22e4d disable in-place vertical pod scaling for non-restartable swappable containers 2025-03-20 20:43:18 +00:00
Francesco Romani
3c7ed00e22 node: kep-2625: cpu manager policy options GA
Move the support for CPUManager Policy Options to GA

Signed-off-by: Francesco Romani <fromani@redhat.com>
2025-03-20 08:31:32 +01:00
zhangzhifei16
2db729cfa4 Add flatz to kubelet auth.
Fix: Move flagz to InstallDebuggingHandlers.

Move flagz  to the lower switch statemen

Fix linter

Drop the function parameter for the read-only server.
2025-03-13 10:11:59 +08:00
Kubernetes Prow Robot
1b4c3483ce Merge pull request #127577 from vaibhav2107/eviction-hard
Added the MergeDefaultEvictionSettings Kubelet Config
2025-02-26 12:10:30 -08:00
vaibhav2107
a97c6a7045 Added the mergeDefaultEvictionSettings Kubelet Config 2025-02-24 23:06:06 +05:30
Kubernetes Prow Robot
28ad751946 Merge pull request #128727 from Tal-or/memorymanager_cleanup
memmanager:cleanup: drop `Experimental` prefix
2025-01-23 14:15:20 -08:00
Sohan Kunkerkar
4bf5f1a6b3 kubelet: add coverage for identical kubelet config and drop-in config content
Added test coverage for the second part of https://github.com/kubernetes/kubernetes/issues/124796
2025-01-02 13:01:01 -05:00
zhifei92
816cd40280 Unify ComponentKubelet and add unit tests. 2024-12-10 10:32:14 +08:00
Talor Itzhak
dc258e65ac memmanager:cleanup: drop Experimental prefix
Since MemoryManager goes GA, we should drop the
`Experimental` prefix from the its fields.

Signed-off-by: Talor Itzhak <titzhak@redhat.com>
2024-11-12 09:45:17 +02:00
lauralorenz
7fe41da522 KEP-4603: Node specific kubelet config for maximum backoff down to 1 second (#128374)
* Add feature gate, API, and conflict validation tests for enablecrashloopbackoffmax

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Handle when current base is longer than node max

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Update pkg/features/kube_features.go

Co-authored-by: Tsubasa Nagasawa <toversus2357@gmail.com>

* Fix indentation

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Follow convention for success test

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Normalize casing, and change field to Duration

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Fix json name and some other casing errors

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Another one I missed before

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Don't clobber global max function

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Change to flat value in defaults.go

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Streamline validation and defaults

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Fix typecheck

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Lint

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Tighten up validation for subsecond values

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Rename field from MaxBackOffPeriod to MaxContainerRestartPeriod

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* A few missed references to renames

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Only compare flags in flags test

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Don't mess with SetDefault signature

Nobody messes with SetDefault signature

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Fix stale signature change, and update test data

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Inspect current feature gates at defaulting time

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Don't use the global feature gate for temp usage

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Expose default error, and some comments

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

* Hint fuzzer for less arbitrary values to FeatureGates

Signed-off-by: Laura Lorenz <lauralorenz@google.com>

---------

Signed-off-by: Laura Lorenz <lauralorenz@google.com>
Co-authored-by: Tsubasa Nagasawa <toversus2357@gmail.com>
2024-11-09 01:44:43 +00:00