Commit Graph

51308 Commits

Author SHA1 Message Date
Anish Shah
332d794559 remove redundant validation check for pod resize 2024-11-06 01:33:15 +00:00
Anish Shah
832d7f7dc2 apply feedback 2024-11-06 01:33:15 +00:00
Anish Shah
4c69bf2496 implement GetResetFieldsFilter
GetResetFieldsFilter returns a set of fields filter reset
by pod resize strategy. This is needed to make server-side apply
work correctly.
2024-11-06 01:33:15 +00:00
Anish Shah
0a80c5ecb7 better variable names 2024-11-06 01:33:15 +00:00
Anish Shah
3b91edb660 unit tests to ensure pod metadata cannot be updated during resize. 2024-11-06 01:33:15 +00:00
Anish Shah
7ac302b47a test: cleanup validation tests 2024-11-06 01:33:15 +00:00
Anish Shah
1b98fe6079 support for resize subresource in ResourceQuota admission. 2024-11-06 01:33:15 +00:00
Anish Shah
ce0f4597d3 fix error message for pod resize validation failure 2024-11-06 01:33:14 +00:00
Anish Shah
07ca0b09bb refactor logic to override pod fields 2024-11-06 01:33:14 +00:00
Anish Shah
878c54fc9a test: add unit tests to verify the .status.resize field 2024-11-06 01:33:14 +00:00
Anish Shah
2bf1f2349c validate resize request
We validate resize request by ensuring that pod QoS is unchanged and
only cpu and memory resources and resize policies are mutated.
2024-11-06 01:33:14 +00:00
Anish Shah
8f967c19b3 drop unrelated changes for /resize request
Since resize request takes the full pod object as the request type, drop
any unrelated changes. Only container resources and resize policy should
be validated.
2024-11-06 01:33:13 +00:00
Anish Shah
507ce443b0 introduce resize REST object
This commit introduces a basic REST object for resize subresource and
adds it to the pod storage.
2024-11-06 01:33:13 +00:00
Kubernetes Prow Robot
67a4d20970 Merge pull request #128505 from Jefftree/fix-cle-lock-acquisition
Fix CLE leader lock acquisition
2024-11-06 00:35:42 +00:00
Kubernetes Prow Robot
98b4ee6bfa Merge pull request #126525 from dshebib/addSidecarE2EImgTest
Restart sidecar container when the image has changed
2024-11-06 00:35:35 +00:00
Kubernetes Prow Robot
2f3da71f99 Merge pull request #121206 from mochizuki875/fix_startup_probe_117153
Stop StartupProbe explicity when successThrethold is reached
2024-11-06 00:35:28 +00:00
Kubernetes Prow Robot
a28f14089c Merge pull request #128539 from benluddy/cbor-feature-gates
KEP-4222: Add CBOR feature gates.
2024-11-05 23:21:56 +00:00
Kubernetes Prow Robot
f81a68f488 Merge pull request #128377 from tallclair/allocated-status-2
[FG:InPlacePodVerticalScaling] Implement AllocatedResources status changes for Beta
2024-11-05 23:21:49 +00:00
Kubernetes Prow Robot
be7d1000ee Merge pull request #127404 from zylxjtu/master
Windows node graceful shutdown
2024-11-05 23:21:42 +00:00
Kubernetes Prow Robot
b5e6456795 Merge pull request #126806 from carlory/fix-image-volume-mount
Kubelet should honour the VolumeAttributes which are reported by the volume plugin
2024-11-05 23:21:35 +00:00
Kubernetes Prow Robot
08391b3d27 Merge pull request #123549 from carlory/kep-3751-finalizer
A new controller adds/removes finalizer to VAC for protection
2024-11-05 21:45:30 +00:00
Jefftree
1ede4d8f15 Allow cle mutual exclusion lock to be reacquired 2024-11-05 21:01:03 +00:00
Ben Luddy
072dfcb416 Add CBOR feature gates.
For alpha, there is one apiserver feature gate and two client-go feature gates controlling
CBOR. They were initially wired to separate test-only feature gate instances in order to prevent
them from being configurable at runtime via command-line flags or environment variables (for
client-go feature gates outside of Kubernetes components). All of the integration tests required by
the KEP as alpha criteria have been implemented. This adds the feature gates to the usual feature
gate instances and removes the temporary code to support separate test-only feature gate instances.
2024-11-05 14:17:52 -05:00
Kubernetes Prow Robot
19d6337d59 Merge pull request #128415 from serathius/watchcache-btree-2
Use btree for watch cache storage to serve LIST more efficiently
2024-11-05 19:15:51 +00:00
Kubernetes Prow Robot
85d6b0f0b2 Merge pull request #127832 from skitt/securejoin
kubelet: use new securejoin API
2024-11-05 19:15:40 +00:00
Kubernetes Prow Robot
e57618970e Merge pull request #126870 from AnishShah/outofcpu-fix
Ensure mirror pods are created as soon as node is registered
2024-11-05 19:15:29 +00:00
zylxjtu
459952a067 Windows node graceful shutdown 2024-11-05 17:46:22 +00:00
Kubernetes Prow Robot
2d6c8a129d Merge pull request #127134 from jpbetz/mutating-admission
KEP-3962: MutatingAdmissionPolicy Alpha
2024-11-05 17:31:38 +00:00
Kubernetes Prow Robot
f56db61db5 Merge pull request #126862 from carlory/HPAContainerMetrics
Remove generally available feature gate HPAContainerMetrics
2024-11-05 16:19:29 +00:00
Marek Siarkowicz
5ea427ebb5 Use btree for watch cache storage to serve LIST more efficiently
Can be disabled via BtreeWatchCache feature flag.
2024-11-05 16:27:57 +01:00
carlory
c6e6fadc48 fix pull-kubernetes-linter-hints 2024-11-05 21:26:00 +08:00
Stephen Kitt
16817e8f4f kubelet: use new securejoin API
Using securejoin.SecureJoin() ensures that paths are bound within a
given root, but it doesn't protect from changes happening between the
construction of the path and its use. securejoin 0.3 introduces a new
Linux-specific API which avoids this by making rooted open operations
explicit; this migrates kubelet's log retrieval to use that.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2024-11-05 13:58:29 +01:00
carlory
b6c9c2d6fa 1. When the kubelet constructs the cri mounts for the container which references an image volume source type, It passes the missing mount attributes to the CRI implementation, including readOnly, propagation, and recursiveReadOnly. When the readOnly field of the containerMount is explicitly set to false, the kubelet will take the readOnlyas true to the CRI implementation because the image volume plugin requires the mount to be read-only.
2. Fix a bug where the pod is unexpectedly running when the `image` volume source type is used and mounted to `/etc/hosts` in the container.
2024-11-05 19:47:12 +08:00
Kubernetes Prow Robot
c69f150008 Merge pull request #127277 from pohly/dra-structured-performance
kube-scheduler: enhance performance for DRA structured parameters
2024-11-05 10:05:29 +00:00
Anish Shah
dcafd93b68 kubelet: try registering mirror pods as soon as node is registered.
Mirror pods for static pods may not be created immediately during node startup
because either the node is not registered or node informer is not synced.
They will be created eventually when static pods are resynced (every 1-1.5 minutes).

However, during this delay of 1-1.5 mins, kube-scheduler might overcommit resources
to the node and eventually cause kubelet to reject pods with
OutOfCPU/OutOfMemory/OutOfPods error.

To ensure kube-scheduler is aware of static pod resource usage faster,
mirror pods are created as soon as the node registers.
2024-11-05 00:56:21 -08:00
Patrick Ohly
7863d9a381 DRA scheduler: refactor CEL compilation cache
A better place is the cel package because a) the name can become shorter
and b) it is tightly coupled with the compiler there.

Moving the compilation into the cache simplifies the callers.
2024-11-05 08:34:42 +01:00
carlory
2529d7d5a6 TestMakeMounts: add new cases for the image volume feature 2024-11-05 15:08:52 +08:00
Kubernetes Prow Robot
bc79d3ba87 Merge pull request #128396 from ritazh/deprecate-EnforceMountableSecretsAnnotation
deprecate EnforceMountableSecretsAnnotation in 1.32
2024-11-05 06:07:40 +00:00
lauralorenz
4965a7a8a0 KEP-4603: Refactor various hardcoded backoffs into separate constants (#128369)
* Refactor various hardcoded backoffs into separate constants

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

* Fix comment formatting

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

---------

Signed-off-by: Laura Lorenz <lauralorenz@google.com>
2024-11-05 06:07:28 +00:00
Joe Betz
0dc08eded9 Reorganize and expand unit test coverage
Also apply reviewer feedback
2024-11-04 21:41:33 -05:00
Joe Betz
0cb90973b0 Add authz test for deny when relevant fields are not changed 2024-11-04 21:40:54 -05:00
Joe Betz
1ad6fd7a0f Improve error messaging for validating admission policy authz 2024-11-04 21:40:54 -05:00
Joe Betz
c0f9c81338 Add MutatingAdmissionPolicy to samples 2024-11-04 21:40:54 -05:00
Joe Betz
700e3b5664 Update OpenAPI and fix openAPI tests to handle unexported jsonreferences
Co-authored-by: Alexander Zielensk <alexzielenski@gmail.com>
2024-11-04 21:40:54 -05:00
Joe Betz
25e11cd1c1 Add MutatingAdmissionPolicy plugin to admission chain
This expands the generic plugin support to both validating and mutating policies.  It also adds the
mutating policy admission plugin using the generics plugin support.

This also implements both ApplyConfiguration and JSONPatch support.

Co-authored-by: Alexander Zielensk <alexzielenski@gmail.com>
2024-11-04 21:40:54 -05:00
Joe Betz
fe3a7f5291 generate code 2024-11-04 21:40:47 -05:00
Joe Betz
3a1733f302 Add MutatingAdmissionPolicy API
This is closely aligned with ValidatingAdmissionPolicy
except that instead of validations that can fail with
messages, there are mutations, which can be defined
either with as an ApplyConfiguration or JSONPatch.

Co-authored-by: cici37 <cicih@google.com>
2024-11-04 21:40:38 -05:00
Kubernetes Prow Robot
ad9dad07a8 Merge pull request #127874 from AnishShah/image-gc-eviction
Cleanup unused images or containers first when eviction manager detects ContainerFsInodesFree signal
2024-11-05 02:39:28 +00:00
Kubernetes Prow Robot
4932adf80d Merge pull request #125296 from jsturtevant/windows-numa-support
Support CPU and Topology manager on Windows
2024-11-05 00:33:28 +00:00
Kubernetes Prow Robot
5572688cef Merge pull request #128342 from gnufied/recovery-expansion-beta
Move RecoverVolumeExpansionFailure feature to beta
2024-11-04 23:15:36 +00:00