Commit Graph

137071 Commits

Author SHA1 Message Date
Patrick Ohly
6489fe467c DRA E2E: simplify kind.yaml
Runtime config can be set via the kind config, which is simpler than setting
the apiserver parameter.

DynamicResourceAllocation is enabled by default nowadays, but still needs to be
set for the current n-3 skew testing which picks 1.33 (1.37 still in alpha).
Similar for NodeLogQuery (GA in 1.36).
2026-06-03 10:06:59 +02:00
Kubernetes Prow Robot
20cb5a2243 Merge pull request #139329 from kannon92/automated-cherry-pick-of-#139287-upstream-release-1.36
Automated cherry pick of #139287: batch/job: Fix scheduling directives mutation for not-yet-started suspended Jobs
2026-06-01 19:00:50 +05:30
Kevin Hannon
0f0c734c52 batch/job: Fix scheduling directives mutation for not-yet-started suspended Jobs
When MutableSchedulingDirectivesForSuspendedJobs feature gate is
enabled, it overwrites the notStarted check with a stricter condition
requiring the JobSuspended=True condition. This rejects mutations on
suspended Jobs that have never started but whose JobSuspended condition
has not yet been set by the job controller, breaking external
controllers like MultiKueue that inject scheduling directives
immediately after creating a suspended Job.

Preserve the notStarted path as an OR condition alongside the
JobSuspended condition check, restoring pre-1.36 behavior for
not-yet-started Jobs while maintaining the new relaxation for
previously-started Jobs.

Kubernetes-issue: https://github.com/kubernetes/kubernetes/issues/139281
2026-05-27 10:28:13 -04:00
Kubernetes Release Robot
102c4a4f87 Update CHANGELOG/CHANGELOG-1.36.md for v1.36.1 2026-05-12 10:04:25 +00:00
Kubernetes Release Robot
756939600b Release commit for Kubernetes v1.36.1 v1.36.1 2026-05-12 09:51:33 +00:00
Kubernetes Prow Robot
710a59eee8 Merge pull request #138958 from neolit123/automated-cherry-pick-of-#138957-origin-release-1.36
Automated cherry pick of #138957: kubeadm: use dedicated ClusterRole for apiserver kubelet client
2026-05-11 17:53:51 +05:30
Micah Hausler
b0b25e8ade kubeadm: use dedicated ClusterRole for apiserver kubelet client
Signed-off-by: Micah Hausler <mhausler@amazon.com>
2026-05-11 11:25:19 +02:00
Kubernetes Prow Robot
493c5a49de Merge pull request #138500 from soltysh/automated-cherry-pick-of-#138499-upstream-release-1.36
Automated cherry pick of #138499: Ensure the path inside the container is correctly handled
2026-05-09 05:15:19 +05:30
Kubernetes Prow Robot
0c872bc694 Merge pull request #138535 from pohly/automated-cherry-pick-of-#137958-origin-release-1.36
Automated cherry pick of #137958: localupcluster: properly query /readyz and /healthz, change cluster modification procedure
2026-05-09 01:57:18 +05:30
Kubernetes Prow Robot
cc1b390ed4 Merge pull request #138590 from BenTheElder/fix-zfs-136
release-1.36: re-introduce cadvisor ZFS support to kubelet
2026-05-08 23:55:19 +05:30
Kubernetes Prow Robot
294c4333d2 Merge pull request #138859 from alaypatel07/automated-cherry-pick-of-#138530-upstream-release-1.36
Automated cherry pick of #138530: KEP-5304:  DecodeMetadataFromStream only skips metadata entries with unknown API versions
2026-05-08 21:05:26 +05:30
Kubernetes Prow Robot
3aa1cf5ec2 Merge pull request #138825 from alaypatel07/automated-cherry-pick-of-#138394-upstream-release-1.36
Automated cherry pick of #138394: KEP-5304, fix: merge same request metadata across drivers
2026-05-08 21:05:18 +05:30
Kubernetes Prow Robot
29952022e7 Merge pull request #138802 from neolit123/automated-cherry-pick-of-#138692-origin-release-1.36
Automated cherry pick of #138692: kubeadm: skip LocalAPIEndpoint defaulting on worker join
2026-05-08 17:25:17 +05:30
Alay Patel
2bd86062e7 KEP-5304: DecodeMetadataFromStream only skips metadata entries with unknown API versions
Signed-off-by: Alay Patel <alayp@nvidia.com>
2026-05-07 09:25:33 -04:00
Or Shoval
b643483ccc DRA: merge same request metadata across drivers
When multiple driver metadata files contain the same request name, keep a
single request entry and merge devices into it. This avoids duplicate request
objects when count>1 allocations are split across drivers.

Assisted-by: Cursor (codex-5.3)
Signed-off-by: Or Shoval <oshoval@redhat.com>
2026-05-06 14:28:27 -04:00
Seena Fallah
f0d0ff95d2 kubeadm: skip LocalAPIEndpoint defaulting on worker join
FetchInitConfigurationFromCluster always called SetAPIEndpointDynamicDefaults,
which invokes ChooseAPIServerBindAddress and requires a default route on the
host. Worker nodes joining the cluster don't need a LocalAPIEndpoint and may
legitimately have no default route, causing kubeadm join to fail with:

```
unable to fetch the kubeadm-config ConfigMap: unable to select an IP from
default routes.
```

Add a skipAPIEndpoint parameter to SetInitDynamicDefaults and pass
`!getAPIEndpoint` from FetchInitConfigurationFromCluster, so the endpoint
defaulter is bypassed when the caller did not request the endpoint (worker
join, non-control-plane reset/certs/upgrade paths).

Signed-off-by: Seena Fallah <seenafallah@gmail.com>
2026-05-06 11:08:19 +02:00
Kubernetes Prow Robot
5cdb448736 Merge pull request #138635 from aojea/automated-cherry-pick-of-#138571-upstream-release-1.36
Automated cherry pick of #138571: kube-proxy: don't do full periodic syncs on large cluster mode
2026-05-06 06:40:20 +05:30
Kubernetes Prow Robot
e9d3bc8634 Merge pull request #138682 from neolit123/automated-cherry-pick-of-#138449-origin-release-1.36
Automated cherry pick of #138449: kubeadm: use the localAPIEndpoint for all API calls in 'init'
2026-05-05 20:34:23 +05:30
Kubernetes Prow Robot
76cd418bc2 Merge pull request #138603 from princepereira/automated-cherry-pick-of-#138000-upstream-release-1.36
Automated cherry pick of #138000: Delete remote endpoint if it has same ip as local endpoint in the system.
2026-05-05 08:02:21 +05:30
Lubomir I. Ivanov
100bf5d499 kubeadm: use the localAPIEndpoint for all API calls in 'init'
Historicaly the kubeadm clients have used the 'admin.conf'
and 'super-admin.conf' directly, which makes all API calls
go trough the CPE (control plane endpoint). This can create
problems for scenarios when the LB is provisioned only after
'init' starts the kube-apiserver.

Instead of using the '.conf' as they are, modify them
in memory to point to the LAE (localAPIEndpoint).
This was already done by the WaitControlPlaneClient for
the WaitControlPlane phase, which required it. This separate
client is no longer needed.

However, do use a unmodified kubeconfig to the init phase
bootstrap-token since this is the phase that creates
the cluster-info CM and for that we need the original CPE
server address.
2026-04-29 17:35:31 +02:00
Antonio Ojea
0008353cef kube-proxy: don't do full periodic syncs on large cluster mode
Periodic full-syncs are just reconcile loops just in case somehow
the dataplane has drifted, however, they have an important cost on large
clusters.

We can avoid to perform full-sync if kube-proxy is in the "largecluster"
mode, we are already doing some optimization, so it is reasonable to
avoid the penalty of a full sync for a "just in case" operation.

Signed-off-by: Antonio Ojea <aojea@google.com>
2026-04-28 07:49:33 +00:00
Prince Pereira
a45cef81d6 Delete remote endpoint if it has same ip as local endpoint in the system. 2026-04-26 09:55:19 +00:00
Prince Pereira
cbb38cd5ce Delete remote endpoint if it has same ip as local endpoint in the system. 2026-04-26 09:55:19 +00:00
Benjamin Elder
28dd6f2757 hack/update-vendor.sh 2026-04-24 21:41:50 -07:00
Benjamin Elder
529473cc4d register zfs cadvisor plugin 2026-04-24 21:40:50 -07:00
Kubernetes Prow Robot
3e8d44c79c Merge pull request #138538 from ahrtr/automated-cherry-pick-of-#138403-upstream-release-1.36
Automated cherry pick of #138403: kubeadm: Evaluate etcd cluster health using quorum
2026-04-23 18:46:49 +05:30
Benjamin Wang
07144e39cd Add a (*Client) addEndpoint method
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2026-04-23 09:14:21 +01:00
Benjamin Wang
98ecfc63fe Evaluate etcd cluster health using quorum
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2026-04-23 09:14:21 +01:00
Ed Bartosh
891a905031 test/localupcluster: stop all components before starting replacements
Modify() was replacing components one at a time: stop X, start X, stop Y,
start Y, ... in version-skew order (apiserver last on downgrade). This
caused a crash during downgrade: KCM-1.35 started against the still-
running apiserver-1.36, passed its /healthz, and then immediately lose
its connection when apiserver-1.36 was killed by the localupcluster.
KCM-1.35 would reconnect to the not-yet-ready apiserver-1.35, hit a
403 RBAC error during controller initialization, and exit — because that
initialization phase does not retry on RBAC errors.

Fix by splitting Modify() into two phases:

  Phase 1 — stop all components to be replaced, in reverse startup order
  (kube-proxy down to apiserver), so dependent components release their
  connections before the apiserver is stopped.

  Phase 2 — start all replacement components in standard startup order
  (apiserver first), so each component connects to a fully-ready apiserver.
2026-04-23 08:27:36 +02:00
Ed Bartosh
1d850e8427 localupcluster: set readiness polling interval to 1 second
Without an explicit interval, Gomega's default polling is very frequent,
generating a large volume of /readyz and /healthz requests in the component
logs. Set an explicit 1-second interval to reduce noise while still
detecting readiness promptly.
2026-04-23 08:27:36 +02:00
Ed Bartosh
62d05adc8b localupcluster: properly query /readyz and /healthz
Despite being called checkReadiness, the function was only performing
a liveness check: /healthz was polled over HTTPS without verifying the
certificate or authenticating, and any HTTP response was accepted as a
signal that the component was up. The only exception was kubelet,
where a node readiness check was added on top.

Switched to /readyz for kube-apiserver and kube-scheduler,
kept /healthz for the rest and require HTTP 200 in all cases.

This ensures that the kube-apiserver is fully initialized before
dependent components are started.
2026-04-23 08:27:36 +02:00
Kubernetes Release Robot
745e271a9c Update CHANGELOG/CHANGELOG-1.36.md for v1.36.0 2026-04-22 14:04:16 +00:00
Kubernetes Release Robot
ecf6decece Release commit for Kubernetes v1.36.0 v1.36.0 2026-04-22 13:51:51 +00:00
Maciej Szulik
b2ba48e510 Escape path inside the container
Signed-off-by: Maciej Szulik <soltysh@gmail.com>
2026-04-21 10:53:58 +02:00
Kubernetes Release Robot
f18c99afe9 Merge remote-tracking branch 'origin/master' into release-1.36 2026-04-21 02:32:05 +00:00
Kubernetes Prow Robot
b31119d205 Merge pull request #138485 from QiWang19/disable-memqos-rollback-tests
skip MemoryQoS rollback test until implementation is resolved
2026-04-21 07:41:52 +05:30
Qi Wang
2aaa5b654b skip MemoryQoS rollback test until implementation is resolved
skip MemoryQoS rollback test until we figure out the mechanism to rollback.

Signed-off-by: Qi Wang <qiwan@redhat.com>
2026-04-20 12:41:45 -04:00
Kubernetes Release Robot
b139cc7960 Merge remote-tracking branch 'origin/master' into release-1.36 2026-04-17 08:26:51 +00:00
Kubernetes Prow Robot
03779bbd00 Merge pull request #138430 from michaelasp/gateMemoryQoS
Gate setting memory QoS behind feature gate
2026-04-17 09:05:03 +05:30
Michael Aspinwall
bb2bb3cd74 Gate setting memory QoS behind feature gate 2026-04-16 23:34:26 +00:00
Kubernetes Release Robot
1729637f0c Merge remote-tracking branch 'origin/master' into release-1.36 2026-04-16 02:24:46 +00:00
Kubernetes Release Robot
b2f73c0d6b CHANGELOG: Update directory for v1.33.11 release 2026-04-15 21:55:21 +00:00
Kubernetes Release Robot
1845002159 CHANGELOG: Update directory for v1.34.7 release 2026-04-15 21:54:36 +00:00
Kubernetes Release Robot
f8627a6859 CHANGELOG: Update directory for v1.35.4 release 2026-04-15 18:12:53 +00:00
Kubernetes Release Robot
8d19a3d494 Merge remote-tracking branch 'origin/master' into release-1.36 2026-04-15 14:23:55 +00:00
Kubernetes Prow Robot
b75d1f6dca Merge pull request #138324 from MaybeSam05/fix-scheduler-inflight-uid-race-138316
scheduler: fix inFlightPods leak when pod is recreated during scheduling failure
2026-04-15 18:45:01 +05:30
Kubernetes Release Robot
a4116fc8a7 Merge remote-tracking branch 'origin/master' into release-1.36 2026-04-15 02:22:28 +00:00
Kubernetes Release Robot
cec8f06d2c CHANGELOG: Update directory for v1.36.0-rc.1 release 2026-04-14 20:19:03 +00:00
Kubernetes Release Robot
9c18c3897a Update CHANGELOG/CHANGELOG-1.36.md for v1.36.0-rc.1 2026-04-14 20:19:03 +00:00
Kubernetes Release Robot
95ccf45b71 Release commit for Kubernetes v1.36.0-rc.1 v1.36.0-rc.1 2026-04-14 20:06:34 +00:00