Commit graph

13272 commits

Author SHA1 Message Date
Michael Aspinwall
acbede86cb Promote SVM to GA 2026-07-07 17:22:30 +00:00
Patrick Ohly
3d36421bb7 DRA Device Taints: use V1 API, enabled by default 2026-07-06 20:20:56 +02:00
kubernetes-prow[bot]
237357b82b
Merge pull request #139957 from danwinship/default-proxy-mode
Warn about upcoming default change when defaulting kube-proxy mode
2026-07-01 19:22:14 +00:00
kubernetes-prow[bot]
7d83382731
Merge pull request #139989 from vinayakray19/fix/issue-139899
kubeadm: avoid contradictory kube-proxy bindAddress warnings
2026-07-01 13:00:21 +00:00
vinayakray19
e079fd5260
kubeadm: use switch for kube-proxy bindAddress defaulting
Rewrite the bindAddress defaulting branch as a switch for readability.
2026-07-01 13:32:33 +05:30
Joe Betz
e89ecc6af0
generate 2026-06-30 18:02:28 -04:00
kubernetes-prow[bot]
7e7ca37be9
Merge pull request #139837 from SergeyKanzhelev/task-kubelet-dump-config-startup
Dump full config on kubelet startup instead of command line arguments
2026-06-30 20:52:31 +00:00
kubernetes-prow[bot]
b308e6c506
Merge pull request #129109 from pohly/log-client-go-restmapper-discovery
restmapper + discovery: add context-aware APIs
2026-06-30 18:10:10 +00:00
Patrick Ohly
d8f70b87ce client-go: expose all discovery methods
The underlying implementation has both. Exposing that in the result of
Discovery() makes it easier for consumers to call the WithContext methods
because they don't need to wrap with ToDiscoveryInterfaceWithContext().

This is a breaking Go API change because tests which implement
the interface have to be updated.
2026-06-30 10:23:42 +02:00
vinayakray19
59464396f9
kubeadm: simplify kube-proxy bindAddress warnings
Only warn for invalid or non-wildcard bind addresses, keeping explicit wildcard bind values silent.
2026-06-29 23:16:01 +05:30
vinayakray19
ae24b0778f kubeadm: avoid contradictory kube-proxy bindAddress warnings
Make the kube-proxy bindAddress defaulting warnings address-family aware
by emitting two distinct, independent warnings:

  - warn when the bindAddress IP family differs from the API server
    advertise address family (a single-stack cluster would otherwise be
    unreachable on the other family).
  - warn when the bindAddress is not the recommended wildcard default for
    its own IP family, recommending the per-family default (0.0.0.0 / ::).

This removes the previous contradictory warning that recommended the
other family solely based on the advertise address.
2026-06-29 21:02:01 +05:30
kubernetes-prow[bot]
e0700c6ae1
Merge pull request #139958 from jihyun-huh/add-etcd-test-coverage
kubeadm: Add etcd test coverage for MemberPromote retry scenarios
2026-06-29 09:18:20 +00:00
kubernetes-prow[bot]
fbef17bc5f
Merge pull request #139870 from dims/cadvisor-lib
kubelet: depend on github.com/google/cadvisor/lib
2026-06-25 16:46:29 +00:00
kubernetes-prow[bot]
2b1f8279b7
Merge pull request #139968 from michaelasp/nodeAuthMetrics
Register APIServer informers for metrics and naming
2026-06-24 21:34:49 +00:00
kubernetes-prow[bot]
554d3b1452
Merge pull request #137964 from niewysoki/add-monitor-nodes-workers-to-ccm
Introduce paralellization for MonitorNodes loop.
2026-06-24 21:34:27 +00:00
Davanum Srinivas
8cbb266e91
cmd/kubelet: drop the copyright year in globalflags_linux_test.go
It is a new file, so it should use the yearless copyright boilerplate
(hack/boilerplate/boilerplate.go.txt) instead of a fixed year.

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2026-06-24 17:06:48 -04:00
Michael Aspinwall
bbd569ebd2 Register APIServer informers for metrics and naming 2026-06-24 15:44:19 +00:00
jihyun-huh
2639b10c0c add etcd test coverage for MemberPromote retry scenarios 2026-06-24 15:29:02 +01:00
Dan Winship
a45e25846d Warn about upcoming default change when defaulting kube-proxy mode 2026-06-23 11:22:03 -04:00
Davanum Srinivas
2351253541
kubelet: drop the long-deprecated cAdvisor flags
These cAdvisor flags were registered with the kubelet by mistake and marked
deprecated back in 2018: application_metrics_count_limit, boot_id_file,
container_hints, containerd, enable_load_reader, event_storage_age_limit,
event_storage_event_limit, global_housekeeping_interval, log_cadvisor_usage,
machine_id_file, the storage_driver_* family, and containerd-namespace. They
are well past the standard CLI deprecation timeline, so stop registering them.

housekeeping_interval is the only flag the kubelet still exposes (node e2e
relies on it). With the deprecated flags gone, registerDeprecated and the
blank imports that existed only to register those flags on the global flag
set are no longer needed; the cadvisor manager import still provides
housekeeping_interval.
2026-06-23 09:53:42 -04:00
kubernetes-prow[bot]
af37a0d7ac
Merge pull request #139735 from yashsingh74/bump-coredns-1.14.4
bump coredns to v1.14.4
2026-06-23 13:24:44 +00:00
Sergey Kanzhelev
b35604484c Dump full config on kubelet startup instead of command line arguments 2026-06-22 22:20:57 -07:00
Franciszek Hnatów
4777f80306 Isolate CloudNodeLifecycleController configuration into specific component config
Moved the CloudNodeLifecycleController configuration fields out of the
KubeCloudSharedConfiguration, and created a dedicated component-specific
config package. Also moved the node-monitor-period, while keeping the
old flag (with deprecation message). No new flag for node-monitor-period
was added, due to
https://kubernetes.io/docs/reference/using-api/deprecation-policy/#deprecating-a-flag-or-cli-argument.
2026-06-22 18:55:54 +00:00
Franciszek Hnatów
cafea4b49f Introduce parallelization for MonitorNodes loop
- Introduces a new flag --cloud-node-lifecycle-monitor-nodes-workers to CloudControllerManager.
- Updates unit tests and v1alpha1 API with default value of 1.
- Regenerates conversion and OpenAPI code.
2026-06-22 18:52:29 +00:00
kubernetes-prow[bot]
6bf6ebe1a0
Merge pull request #139842 from jihyun-huh/kubeadm-member-promote-recheck
kubeadm: treat already promoted learner as successful
2026-06-22 06:31:42 +00:00
yashsingh74
fec87e7d74
bump coredns to v1.14.3
Signed-off-by: yashsingh74 <yashsingh1774@gmail.com>
2026-06-22 09:55:13 +05:30
Davanum Srinivas
c8b05f918b
kubelet: bind the cAdvisor housekeeping_interval flag explicitly
addCadvisorFlags ranged over cadvisorflags.Kept(), so a cAdvisor release that
adds a name to that list would silently expose a new kubelet flag. Bind
HousekeepingInterval explicitly and test that Kept() still includes it.
2026-06-20 21:21:37 -04:00
Davanum Srinivas
997834af0f
import-boss: allow github.com/google/cadvisor/lib only where used; forbid the full module
Add import-boss .import-restrictions so the lean github.com/google/cadvisor/lib module is allowed only in the directories that consume it -- pkg/kubelet, cmd/kubelet/app, and pkg/proxy/conntrack -- and forbidden everywhere else. The repo-root .import-restrictions default-denies all github.com/google/cadvisor imports; the three consumer subtrees re-allow only .../lib.
2026-06-20 17:27:17 -04:00
Davanum Srinivas
f451aa0762
kubelet: depend on github.com/google/cadvisor/lib
Migrate the kubelet (and the kube-proxy conntrack helper) off the full github.com/google/cadvisor module onto the lean github.com/google/cadvisor/lib: repoint info/v1+info/v2 type usage to lib/model and the manager/fs/cache/etc. consumers to lib/*; regenerate the cadvisor.Interface mocks; keep the kubelet-pinned cAdvisor global flags via lib/cadvisorflags.

go.mod: require + replace github.com/google/cadvisor/lib (=> the dims/cadvisor/lib fork for now, until lib is tagged) and drop the full github.com/google/cadvisor module entirely; keep github.com/containerd/containerd/api at v1.11.0 (matching upstream master); add github.com/google/cadvisor to unwanted-dependencies.json unwantedModules so the full module cannot be re-vendored.

test/e2e_node: the one remaining consumer of the full module -- the node-e2e ResourceCollector, which used the v2 HTTP client (client/v2) + v2 API types (info/v2) -- now scrapes the standalone cAdvisor pod's /api/v2.1/stats directly over HTTP+JSON, so test/e2e_node depends on no cAdvisor package. No change to the kubelet's stats surfaces.
2026-06-20 17:27:16 -04:00
jihyun-huh
203bae7ec8 kubeadm: treat already promoted learner as successful 2026-06-19 15:36:49 +01:00
Kubernetes Prow Robot
2d371b1587
Merge pull request #139669 from skitt/otel-contrib-0.69.0
Bump otel contrib to v0.69.0
2026-06-18 19:24:43 +05:30
Kubernetes Prow Robot
5a50e0e229
Merge pull request #138497 from cupnes/kep-4049-beta
KEP-4049: Update tests for the StorageCapacityScoring feature for beta
2026-06-18 16:06:43 +05:30
Yuma Ogami
5c5fafd1db test: remove redundant feature gate setup in TestSetup
StorageCapacityScoring is now beta and enabled by default at binary
version v1.37+, so explicitly setting it via SetFeatureGateDuringTest
before each test case is no longer necessary. Remove the restoreFeatures
field and its usages.
2026-06-18 08:40:36 +00:00
Kubernetes Prow Robot
0353c25580
Merge pull request #139639 from weizhoublue/fix-kubelet-flags-help
kubelet: update event-burst CLI flag description to match defaults
2026-06-18 11:38:49 +05:30
Yuma Ogami
01fa0bda1d test: update TestSetup for StorageCapacityScoring beta graduation
- Bump the binary version to 1.37 so the beta default takes effect.
  The existing "default config" test now implicitly covers the
  enabled-by-default case.
- Update the existing test: rename from "alpha" to "beta" and fix
  `restoreFeatures` to restore to `true` (the beta default).
- Add a new test case for the opt-out scenario (explicitly disabling
  the beta feature).
2026-06-17 07:54:41 +00:00
Kubernetes Prow Robot
56902fbcb3
Merge pull request #139667 from damdo/kubeadm-configmap-retry-fix
fix(kubeadm): use KubernetesAPICallTimeout for mandatory kubeadm-config fetch during join
2026-06-17 09:19:22 +05:30
Yuma Ogami
f76687ded1 graduate StorageCapacityScoring feature gate to beta
StorageCapacityScoring was introduced as alpha in v1.33 (default: false)
and is now promoted to beta (default: true).

Update tests to account for the new default behavior: when
StorageCapacityScoring is enabled, SetDefaults_VolumeBindingArgs now
populates Shape in VolumeBindingArgs, which existing tests did not
expect.

- Add default Shape to expected VolumeBindingArgs in test fixtures
  and explicit test cases
- Disable StorageCapacityScoring in TestValidateVolumeBindingArgs
  cases that only test BindTimeoutSeconds validation
- Explicitly set EnableStorageCapacityScoring: true in
  TestSchedulerSchedulePod's feature.Features struct
- Strip Shape from VolumeBinding args in Test_UnionedGVKs when
  using emulation version 1.33 or 1.34 (where StorageCapacityScoring
  is alpha and disabled by default)
2026-06-17 03:03:02 +00:00
Kubernetes Prow Robot
49cc12972d
Merge pull request #139774 from ErikJiang/fix_kubeadm_upgrade_dryrun
Fix kubeadm upgrade dry-run success output
2026-06-16 23:47:20 +05:30
Lubomir I. Ivanov
f4c581c906 kubeadm: explicitly set the kube-proxy mode to 'iptables'
In 1.37 kube-proxy will start throwing warnings if the
user has not set the 'mode' field explicitly.

This is part of the steps to migrate the default 'mode'
from 'iptables' to 'nftables'.
2026-06-16 14:47:26 +03:00
Damiano Donati
7801f6b505
fix(kubeadm): use KubernetesAPICallTimeout for mandatory kubeadm-config fetch
During kubeadm join, the mandatory kubeadm-config ConfigMap fetch uses
GetConfigMapWithShortRetry, which has a 350ms polling budget. When the
API server is slow to respond, the single GET attempt blocks for up to
10 seconds (the client timeout), exhausting the polling budget with no
retry. Since this call site has no fallback, the join fails.

Add a shortConfigMapGet parameter to getInitConfigurationFromCluster
and FetchInitConfigurationFromCluster. When false, the kubeadm-config
ConfigMap is fetched using KubernetesAPICallTimeout (default 1 minute,
user-configurable) with retries, matching the pattern used by
getAPIEndpointFromPodAnnotation. When true, the existing
GetConfigMapWithShortRetry is used for callers like kubeadm reset that
don't need a long retry.

Signed-off-by: Damiano Donati <damiano.donati@gmail.com>
2026-06-16 11:15:03 +02:00
bo.jiang
22611a6db7
Fix kubeadm upgrade dry-run success output
Signed-off-by: bo.jiang <bo.jiang@daocloud.io>
2026-06-16 17:12:59 +08:00
Stephen Kitt
2d407830bd
Bump to otel semconv v0.41.0
This aligns with the version used in otel v1.44.0 and otel contrib
v0.69.0.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2026-06-12 11:11:32 +02:00
weizhoublue
cee35e2027
kubelet: update event-burst CLI flag description to match defaults
Signed-off-by: weizhoublue <weizhou.lan@daocloud.io>
2026-06-11 10:58:03 +08:00
Kubernetes Prow Robot
e2ed47e2de
Merge pull request #134860 from danwinship/apiserver-service-proxy
Port service/proxy subresource from Endpoints to EndpointSlice
2026-06-11 03:10:50 +05:30
Kubernetes Prow Robot
78f000c93a
Merge pull request #139612 from weizhoublue/fix-event-qps-help
fix: correct --event-qps default in help message
2026-06-11 00:49:05 +05:30
Dan Winship
6559d7ca54 Port service/proxy subresource from Endpoints to EndpointSlice
Co-authored-by: Jordan Liggitt <liggitt@google.com>
2026-06-10 15:10:38 -04:00
weizhoublue
6369ec1907
cmd/kubelet: correct --event-qps default in help message
Signed-off-by: weizhoublue <weizhou.lan@daocloud.io>
2026-06-10 14:58:53 +08:00
Yuma Ogami
ba49c893f2 test: bump binary version to 1.33 in TestSetup to fix StorageCapacityScoring
StorageCapacityScoring is introduced as Alpha at v1.33. With binary
version set to 1.32, it is PreAlpha and cannot be set explicitly,
causing a panic when registering the feature gate.
2026-06-10 01:12:47 +00:00
Sergey Kanzhelev
d74b5907d5 builder pattern in cri client 2026-06-09 09:24:06 -07:00
Kubernetes Prow Robot
138b2e61f1
Merge pull request #117119 from HirazawaUi/fix-kubelet-event-qps
kubelet: fix eventRecordQPS can't be set no limit enforced
2026-06-09 08:55:45 +05:30