Commit Graph

50478 Commits

Author SHA1 Message Date
Adrian Moisey
ea299acf97 Ensure that a node's CIDR isn't released until the node is deleted
Fixes https://github.com/kubernetes/kubernetes/issues/127792

Fixes bug where a node's PodCIDR was released when the node was given a
delete time stamp, but was hanging around due to a finalizer.
2024-11-14 20:00:41 +02:00
Kubernetes Prow Robot
11d2b4d7ed Merge pull request #128340 from googs1025/automated-cherry-pick-of-#127834-upstream-release-1.31
Automated cherry pick of #127834: fix(leaderelection): nil check in OnStoppedLeading func
2024-11-12 10:18:46 +00:00
Kubernetes Prow Robot
f7d6fad111 Merge pull request #128431 from NoicFank/automated-cherry-pick-of-#128307-upstream-release-1.31
Automated cherry pick of #128307: bugfix(scheduler): preemption picks wrong victim node with higher priority pod on it
2024-11-12 09:13:07 +00:00
Kubernetes Prow Robot
dd898b82d0 Merge pull request #127584 from AxeZhan/automated-cherry-pick-of-#125398-upstream-release-1.31
Automated cherry pick of #125398: [scheduler] When the hostname and nodename of a node do not match, ensure that pods carrying PVs with nodeAffinity are scheduled correctly.
2024-11-12 09:12:53 +00:00
NoicFank
2d540ade5f bugfix(scheduler): preemption picks wrong victim node with higher priority pod on it.
Introducing pdb to preemption had disrupted the orderliness of pods in the victims,
which would leads picking wrong victim node with higher priority pod on it.
2024-10-30 15:36:30 +08:00
googs1025
c94baacfff fix(leaderelection): nil check in OnStoppedLeading func 2024-10-26 00:12:37 +08:00
Dan Winship
b84713348c Fix deleted UDP endpoint detection 2024-10-02 07:08:21 -04:00
AxeZhan
d8d31947dc tests for nodes with different nodeName and name 2024-09-24 06:41:05 +00:00
AxeZhan
fdca80f8dc manually revert #109877 2024-09-24 06:41:05 +00:00
Yang Yang
dad9c77a74 bugfix: endpoints controller track resource version conrrectly
The endpoints controller store the resource version of the previous
Endpoints objects to avoid issues related to stale information on the
cache.

However, there can be update operations that succeed without increasing
the resource version, causing the endpoints controller to declare stale
the existing Resource Version and stopping the Endpoints to be updated.

Co-Author-By: Quan Tian <quan.tian@broadcom.com>
Co-Author-By: Yang Yang <yyyng@amazon.com>
2024-09-18 17:05:05 +00:00
Kubernetes Prow Robot
a8a78f0da6 Merge pull request #127212 from SergeyKanzhelev/automated-cherry-pick-of-#126543-upstream-release-1.31
Automated cherry pick of #126543: Restart the init container to not be stuck in created state
2024-09-09 23:15:07 +01:00
Kubernetes Prow Robot
939edc7c6b Merge pull request #127207 from SergeyKanzhelev/automated-cherry-pick-of-#126343-upstream-release-1.31
Automated cherry pick of #126343: Terminated pod should not be re-admitted
2024-09-09 22:05:54 +01:00
Gunju Kim
fc5d752394 Restart the init container to not be stuck in created state
The main sync loop should have created and started the container in one
step. If the init container is in the 'created' state, it's likely that
the container runtime failed to start it. To prevent the container from
getting stuck in the 'created' state, restart it.
2024-09-06 20:00:48 +00:00
Sergey Kanzhelev
8a28b17c3a succeeded pod is being re-admitted 2024-09-06 18:27:57 +00:00
Gunju Kim
8469207728 Avoid SidecarContainers code path for non-sidecar pods
This fixes a regression in the SidecarContainers feature by minimizing
the impact of the new code path. Use the old code path for pods without
restartable init containers, and apply the new code path only to pods
with restartable init containers.
2024-09-06 16:37:09 +00:00
James Sturtevant
2454d8d4c3 Revert "fix: handle socket file detection on Windows"
This reverts commit 4060ee60c1.
2024-09-03 17:40:06 +00:00
Kubernetes Prow Robot
6572754297 Merge pull request #126687 from wedaly/automated-cherry-pick-of-#126532-upstream-release-1.31
Automated cherry pick of #126532: kube-proxy: initialization wait for service and endpoint
2024-08-28 18:18:56 +01:00
Kubernetes Prow Robot
6498fed36a Merge pull request #126761 from thockin/automated-cherry-pick-of-#126749-upstream-release-1.31
Automated cherry pick of #126749: fix v1a3 ResourceSliceList metadata field name
2024-08-27 09:14:48 +01:00
Tim Hockin
62e601a95a fix v1a3 ResourceSliceList metadata field name
This field was incorrectly named "listMeta" and was missed in review.
2024-08-17 12:12:57 -07:00
Jordan Liggitt
d8da86b16d Switch DisableNodeKubeProxyVersion back to disabled-by-default
This is clearing a stable API field, so the 1 year from announcement to change period applies
2024-08-15 13:16:30 -04:00
Wei Huang
9eec84c67f fix a scheduler preemption issue that victim is not patched properly 2024-08-14 11:48:11 -07:00
Will Daly
f520ede814 kube-proxy: initialization wait for service and endpoint handlers synced
Ensure kube-proxy waits for the services/endpointslices informer
caches to be synced *and* all pre-sync events delivered before
setting isInitialized=true. Otherwise, in clusters with many services,
some services may be missing from svcPortMap when kube-proxy starts
(e.g. during daemonset rollout). This can cause kube-proxy to temporarily
remove service DNAT rules and then skip cleanup of UDP conntrack entries
to a service VIP.

Resolves: https://github.com/kubernetes/kubernetes/issues/126468
2024-08-14 09:02:23 -07:00
Davanum Srinivas
4fc6d8daf5 [kube-proxy] add log verbosity to endpoint topology hint loop - Take 2
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2024-08-02 22:28:51 -04:00
Kubernetes Prow Robot
dbc2b0a5c7 Merge pull request #126383 from Shubham82/correct_comment_for_StableLoadBalancerNodeSet
Update the Comment for StableLoadBalancerNodeSet Feature Gate.
2024-08-01 07:20:02 -07:00
Marek Siarkowicz
93a10a7569 Introduce ConcurrentWatchObjectDecode feature gate disabled by default 2024-07-31 18:30:45 +02:00
Kubernetes Prow Robot
eb729d1db7 Merge pull request #126469 from serathius/beta2
Move ConsistentListFromCache to Beta default again
2024-07-31 08:35:47 -07:00
Marek Siarkowicz
2ca56aab87 Move ConsistentListFromCache to Beta default again
This reverts commit aeb51a16e3.
2024-07-30 22:49:47 +02:00
Ben Luddy
c838004084 Move APIServingWithRoutine to alpha and disabled by default. 2024-07-30 16:33:31 -04:00
Kubernetes Prow Robot
0fc1671031 Merge pull request #126446 from Jefftree/fix-leaderelection-flake-testcontroller
Use fake clock for controller/leaderelection:TestController
2024-07-30 02:16:01 -07:00
Dr. Stefan Schimanski
634c9cd135 Address comments
Signed-off-by: Dr. Stefan Schimanski <stefan.schimanski@gmail.com>
2024-07-30 09:45:52 +02:00
Kubernetes Prow Robot
b5b21717ca Merge pull request #126427 from pacoxu/fix-TestUpdateAllocatedResourcesStatus
ignore order of containers status allocated resources
2024-07-29 15:54:07 -07:00
Jefftree
d092513685 Use fake clock for controller/leaderelection:TestController 2024-07-29 19:36:53 +00:00
Kubernetes Prow Robot
e8588e6493 Merge pull request #126429 from saschagrunert/kubelet-panic
Fix kubelet cadvisor stats runtime panic
2024-07-29 11:06:07 -07:00
Micah Hausler
a7af830209 Rename kubelet CSR admission feature gate
Retitle the feature to the affirmative ("AllowInsecure...=false") instead of a
double-negative ("Disable$NEWTHING...=false") for clarity

Signed-off-by: Micah Hausler <mhausler@amazon.com>
2024-07-29 10:14:19 -05:00
Sascha Grunert
50e430b3e9 Fix kubelet cadvisor stats runtime panic
Fixing a kubelet runtime panic when the runtime returns incomplete data:

```
E0729 08:17:47.260393    5218 panic.go:115] "Observed a panic" panic="runtime error: index out of range [0] with length 0" panicGoValue="runtime.boundsError{x:0, y:0, signed:true, code:0x0}" stacktrace=<
        goroutine 174 [running]:
        k8s.io/apimachinery/pkg/util/runtime.logPanic({0x33631e8, 0x4ddf5c0}, {0x2c9bfe0, 0xc000a563f0})
                k8s.io/apimachinery/pkg/util/runtime/runtime.go:107 +0xbc
        k8s.io/apimachinery/pkg/util/runtime.handleCrash({0x33631e8, 0x4ddf5c0}, {0x2c9bfe0, 0xc000a563f0}, {0x4ddf5c0, 0x0, 0x10000000043c9e5?})
                k8s.io/apimachinery/pkg/util/runtime/runtime.go:82 +0x5e
        k8s.io/apimachinery/pkg/util/runtime.HandleCrash({0x0, 0x0, 0xc000ae08c0?})
                k8s.io/apimachinery/pkg/util/runtime/runtime.go:59 +0x108
        panic({0x2c9bfe0?, 0xc000a563f0?})
                runtime/panic.go:785 +0x132
        k8s.io/kubernetes/pkg/kubelet/stats.(*cadvisorStatsProvider).ImageFsStats(0xc000535d10, {0x3363348, 0xc000afa330})
                k8s.io/kubernetes/pkg/kubelet/stats/cadvisor_stats_provider.go:277 +0xaba
        k8s.io/kubernetes/pkg/kubelet/images.(*realImageGCManager).GarbageCollect(0xc000a3c820, {0x33631e8?, 0x4ddf5c0?}, {0x0?, 0x0?, 0x4dbca20?})
                k8s.io/kubernetes/pkg/kubelet/images/image_gc_manager.go:354 +0x1d3
        k8s.io/kubernetes/pkg/kubelet.(*Kubelet).StartGarbageCollection.func2()
                k8s.io/kubernetes/pkg/kubelet/kubelet.go:1472 +0x58
        k8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1(0x30?)
                k8s.io/apimachinery/pkg/util/wait/backoff.go:226 +0x33
        k8s.io/apimachinery/pkg/util/wait.BackoffUntil(0xc000add110, {0x3330380, 0xc000afa300}, 0x1, 0xc0000ac150)
                k8s.io/apimachinery/pkg/util/wait/backoff.go:227 +0xaf
        k8s.io/apimachinery/pkg/util/wait.JitterUntil(0xc000add110, 0x45d964b800, 0x0, 0x1, 0xc0000ac150)
                k8s.io/apimachinery/pkg/util/wait/backoff.go:204 +0x7f
        k8s.io/apimachinery/pkg/util/wait.Until(...)
                k8s.io/apimachinery/pkg/util/wait/backoff.go:161
        created by k8s.io/kubernetes/pkg/kubelet.(*Kubelet).StartGarbageCollection in goroutine 1
                k8s.io/kubernetes/pkg/kubelet/kubelet.go:1470 +0x247
```

This commit fixes panics if:

- `len(imageStats.ImageFilesystems) == 0`
- `len(imageStats.ContainerFilesystems) == 0`
- `imageStats.ImageFilesystems[0].FsId == nil`
- `imageStats.ContainerFilesystems[0].FsId == nil`
- `imageStats.ImageFilesystems[0].UsedBytes == nil`
- `imageStats.ContainerFilesystems[0].UsedBytes == nil`

It also fixes the wrapped `nil` error for the check: `err != nil ||
imageStats == nil` in case that `imageStats == nil`.

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2024-07-29 14:13:47 +02:00
Paco Xu
78d3830d97 ignore order of containers status allocated resources 2024-07-29 16:48:00 +08:00
Dr. Stefan Schimanski
3987d850a4 kube-apiserver/leaderelection/test: clean up controller test
Signed-off-by: Dr. Stefan Schimanski <stefan.schimanski@gmail.com>
2024-07-29 09:56:39 +02:00
Dr. Stefan Schimanski
b13aab9cf1 kube-apiserver/leaderelection: remove klog noise
Signed-off-by: Dr. Stefan Schimanski <stefan.schimanski@gmail.com>
2024-07-29 09:56:05 +02:00
Jefftree
f173f0c58c kube-apiserver/leaderelection/tests: fix test case PingTime should be ahead of RenewTime 2024-07-27 17:54:09 +00:00
Dr. Stefan Schimanski
b8045f98a4 kube-apiserver/leaderelection/tests: use fake clock
Signed-off-by: Dr. Stefan Schimanski <stefan.schimanski@gmail.com>
2024-07-27 17:54:09 +00:00
Dr. Stefan Schimanski
8c971c5c15 kube-apiserver/leaderelection/test: fixing waiting for informer
Signed-off-by: Dr. Stefan Schimanski <stefan.schimanski@gmail.com>
2024-07-27 17:54:08 +00:00
Dr. Stefan Schimanski
c7a1fa432a Call non-blocking informerFactory.Start synchronously to avoid races
Signed-off-by: Dr. Stefan Schimanski <stefan.schimanski@gmail.com>
2024-07-27 18:13:09 +02:00
shubham82
92e62bf4f2 Update the Comment for StableLoadBalancerNodeSet Feature Gate. 2024-07-26 16:17:36 +05:30
Dr. Stefan Schimanski
87f40441d6 kube-apiserver/leaderelection: remove broken printf
Signed-off-by: Dr. Stefan Schimanski <stefan.schimanski@gmail.com>
2024-07-26 09:27:05 +02:00
Kubernetes Prow Robot
bee5e03707 Merge pull request #126333 from aroradaman/master
kube-proxy: internal config: fuzz cidr values for unit tests
2024-07-25 15:47:17 -07:00
Kubernetes Prow Robot
c853ca49c3 Merge pull request #126355 from haircommander/fs-quotas-false
set LocalStorageCapacityIsolationFSQuotaMonitoring to false by default
2024-07-25 13:06:11 -07:00
Kubernetes Prow Robot
5f5c02da51 Merge pull request #124012 from Jefftree/le-controller
Coordinated Leader Election
2024-07-25 13:05:53 -07:00
Kubernetes Prow Robot
e9d9a82839 Merge pull request #124101 from haircommander/process_stats-with-pid-fix
kubelet: fix PID based eviction
2024-07-25 11:59:57 -07:00
Peter Hunt
eeae981048 set LocalStorageCapacityIsolationFSQuotaMonitoring to false by default
as the feature relies on UserNamespaces support, which is also off by default.
Having it on by default won't do anything negative, except adding some needless
checks as to whether the pod has hostUsers==true (impossible without the feature gate)

Signed-off-by: Peter Hunt <pehunt@redhat.com>
2024-07-25 10:11:10 -04:00
Daman Arora
5359098c14 kube-proxy: internal config: fuzz cidr values for unit tests
Signed-off-by: Daman Arora <aroradaman@gmail.com>
2024-07-25 19:20:24 +05:30