Commit Graph

117622 Commits

Author SHA1 Message Date
Itamar Holder
4b6314f815 Unit test: Swap - Limited/Unlimited Swap, cgroups v1/v2, etc
Signed-off-by: Itamar Holder <iholder@redhat.com>
2023-07-14 14:52:28 +03:00
Itamar Holder
a30410d9ce LimitedSwap: Automatically configure swap limit for Burstable QoS Pods
After this commit, when LimitedSwap is enabled,
containers would get swap acess limited with respect
the container memory request, total physical memory
on the node, and the swap size on the node.

Pods of Best-Effort / Guaranteed QoS classes don't get
to swap. In addition, container with memory requests
that are equal to their memory limits also don't get to
swap.

The swap limitation is calculated in the following way:
1. Calculate the container's memory proportionate to the node's memory:
- Divide the container's memory request by the total node's physical memory.
  Let's call this value ContainerMemoryProportion.

2. Multiply the container memory proportion by the available
swap memory for Pods:
Meaning: ContainerMemoryProportion * TotalPodsSwapAvailable.

Fore more information:
https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/2400-node-swap/README.md

Signed-off-by: Itamar Holder <iholder@redhat.com>
2023-07-14 14:52:28 +03:00
Itamar Holder
e4da568f33 Make kuberuntime unit tests environment independent + support cgroup v2
Before this commit, to find out the current node's
cgroup version, a libcontainers function was used
directly. This way, cgroup version is hard to mock
and is dependant on the environment in which the unit
tests are being run.

After this commit, libcontainer's function is wrapped
within a variable function that can be re-assigned by
the tests. This way the test can easily mock the cgroup
version and become environment independant.

After this commit both cgroup versions v1 and v2
are being tested, no matter in which environment
it runs.

Signed-off-by: Itamar Holder <iholder@redhat.com>
2023-07-14 14:52:27 +03:00
Itamar Holder
f37aec6c57 Add LIMITED_SWAP env var to enable limited swap
Signed-off-by: Itamar Holder <iholder@redhat.com>
2023-07-14 14:52:27 +03:00
Kubernetes Prow Robot
95c8d61918
Merge pull request #113583 from chendave/POC_resetCfg
kubeadm: implementation of `ResetConfiguration` API types
2023-07-14 04:05:48 -07:00
Marko Mudrinić
0ed7bdb057
Update vendor
Signed-off-by: Marko Mudrinić <mudrinic.mare@gmail.com>
2023-07-14 12:20:45 +02:00
Marko Mudrinić
69c4bc29f5
[go] Bump images, versions and deps to use Go 1.20.6
Signed-off-by: Marko Mudrinić <mudrinic.mare@gmail.com>
2023-07-14 12:04:13 +02:00
Dave Chen
2a907e6004 kubeadm: fix fuzzing for ResetConfiguration
Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-07-14 17:03:37 +08:00
Dave Chen
2e6715bc77 kubeadm: implementation of ResetConfiguration API types
Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-07-14 17:03:31 +08:00
VillageHeadHuang
037847066c
replace strings.Index with strings.Contains instead
replace strings.Index() !=-1  with strings.Contains instead
2023-07-14 15:25:36 +08:00
Kubernetes Prow Robot
e3bc35bc1b
Merge pull request #119008 from nilekhc/hotreload-update-metrics
[KMSv2] feat: implements metrics for encryption config hot reload
2023-07-13 23:08:00 -07:00
Kubernetes Prow Robot
18e0e668ca
Merge pull request #118933 from wojtek-t/apf_watchlist_support
Add support for watchlist to APF
2023-07-13 23:07:49 -07:00
Shiming Zhang
3e2a1a7b9c Regenerate 2023-07-14 09:43:16 +08:00
Shiming Zhang
b2613dd381 Add e2e to check that hostIPs and Downward API works 2023-07-14 09:35:31 +08:00
Shiming Zhang
14b09c414a Add DownwardAPI validation for status.hostIPs 2023-07-14 09:35:31 +08:00
Shiming Zhang
335d905ce9 Downward API support for status.hostIPs 2023-07-14 09:35:30 +08:00
Shiming Zhang
bf030fd68a Add validate HostIPs 2023-07-14 09:35:30 +08:00
Shiming Zhang
267e76a66e Add status.hostIPs in validEnvDownwardAPIFieldPathExpressions 2023-07-14 09:35:30 +08:00
Shiming Zhang
c287943bdd Add status.hostIPs in ConvertDownwardAPIFieldLabel 2023-07-14 09:35:30 +08:00
Shiming Zhang
7a81ef6406 Add fuzzer for PodStatus 2023-07-14 09:35:30 +08:00
Shiming Zhang
e6bdd224c1 Add HostIPs for kubelet 2023-07-14 09:35:30 +08:00
Shiming Zhang
dacb689002 Add dropDisabledStatusFields 2023-07-14 09:35:30 +08:00
Shiming Zhang
e061143de7 Add HostIPs field and update PodIPs field 2023-07-14 09:35:30 +08:00
Shiming Zhang
c2c001a243 Add FeatureGate PodHostIPs 2023-07-14 09:35:30 +08:00
Mike Spreitzer
ce90eb2cc2 Fix validation to use field.Forbidden instead of Required
Co-authored-by: David Eads <deads2k@users.noreply.github.com>
Signed-off-by: Mike Spreitzer <mspreitz@us.ibm.com>
2023-07-14 01:02:28 +00:00
Mike Spreitzer
7305c96710 QueueSet and controller part of borrowing by exempt PLs
Signed-off-by: Mike Spreitzer <mspreitz@us.ibm.com>
2023-07-14 01:01:57 +00:00
Mike Spreitzer
2069835094 Tolerate only the two allowed field changes
Signed-off-by: Mike Spreitzer <mspreitz@us.ibm.com>
2023-07-14 01:01:43 +00:00
Abu Kashem
3754d2da20 apf: allow admin to change the Exempt field only of the exempt pl
Signed-off-by: Mike Spreitzer <mspreitz@us.ibm.com>
2023-07-14 01:01:29 +00:00
Abu Kashem
f8e4e8abac apf: add validation to exempt for borrowing
Signed-off-by: Mike Spreitzer <mspreitz@us.ibm.com>
2023-07-14 01:01:09 +00:00
Mike Spreitzer
f78d6062eb Update generated code for APF borrowing by exempt
Signed-off-by: Mike Spreitzer <mspreitz@us.ibm.com>
2023-07-14 01:00:06 +00:00
Mike Spreitzer
a9d8cace1f Fix AutoUpdateAnnotationKey, NominalConcurrencyShares
Signed-off-by: Mike Spreitzer <mspreitz@us.ibm.com>
2023-07-14 00:47:58 +00:00
Abu Kashem
3d3240c8b4 apf: add API changes for borrowing by exempt pl 2023-07-14 00:47:28 +00:00
Kubernetes Prow Robot
5c72df7281
Merge pull request #118953 from mskrocki/escLib
Convert EndpointSlice Reconciler to a library in staging.
2023-07-13 17:13:34 -07:00
Jiahui Feng
b635f2a401
ValidatingAdmissionPolicy: Variable Composition (#118642)
* [API REVIEW] Variable Composition

* lazy map.

* variable composition implementation.

* check variables during VAP validation.

* generated: ./hack/update-vendor.sh

* generated: UPDATE_COMPATIBILITY_FIXTURE_DATA

(cd staging/src/k8s.io/api/ && env UPDATE_COMPATIBILITY_FIXTURE_DATA=true go test)

* cost calucation.

* tests for cost calculations.

* e2e test for variables.

* fix doc for Validation.Expression.

* generated: ./hack/update-codegen.sh

* fix missing utilruntime import.

* generated: ./hack/update-openapi-spec.sh
2023-07-13 17:13:28 -07:00
Kubernetes Prow Robot
1e21da87b8
Merge pull request #118988 from nilekhc/hash-keyid
[KMSv2] chore: hashes keyID being logged
2023-07-13 15:47:48 -07:00
Kubernetes Prow Robot
be2cfc9697
Merge pull request #118228 from carlory/move-non-graceful-node-shutdown-to-GA
move non-graceful node shutdown to GA
2023-07-13 15:47:37 -07:00
Amine
49d0346802 Pre-allocate webhook accessors arrays for mutating and validating
webhooks
2023-07-13 23:43:12 +01:00
Daniel Vega-Myhre
037091284e fix unit test bug 2023-07-13 22:38:21 +00:00
Kubernetes Prow Robot
8839d08fc2
Merge pull request #119305 from deads2k/for-api
allow api-approvers to approve directories touched by generation
2023-07-13 14:44:04 -07:00
Alex Zielenski
423f4dfc79
Add quantity library to CEL (#118803)
* add quantity library to CEL

* add more tests to quantity

* use 1.29 env for quantity

* set CEL default env to 1.28 for 1.28 release

* add compare function

* docs and arith lib

* fixup addInt and subInt overload, add docs

* more tests

* cleanup docs

* remove old comments

* remove unnecessary cast

* add isInteger

* add overflow tests

* boilerplate

* refactor expectedResult for tests

* doc typo fix

* returns bool

* add docs link

* different dos link

* add isInteger true case

* expand iff

* add quantity back to 1.28 version, and revert change to DefaultCompatibilityVersion

* formatting
2023-07-13 14:43:56 -07:00
Kubernetes Prow Robot
fc798a8dc1
Merge pull request #118520 from jpbetz/validate-unique
Add merge map key validation to StorageVersions
2023-07-13 14:43:49 -07:00
Kubernetes Prow Robot
bea27f82d3
Merge pull request #118209 from pohly/dra-pre-scheduled-pods
dra: pre-scheduled pods
2023-07-13 14:43:37 -07:00
Daniel Vega-Myhre
a1a5f49bb9 remove statefulset label added to wrong branch 2023-07-13 21:07:17 +00:00
Daniel Vega-Myhre
1ae60c0ed1 use job completion index annotation as label 2023-07-13 21:04:37 +00:00
Kubernetes Prow Robot
1db4658614
Merge pull request #119295 from jsafrane/remove-serial-localvolume
Remove test Pods sharing a single local PV
2023-07-13 13:43:21 -07:00
Nilekh Chaudhari
131216fa8f
chore: hashes keyID
Signed-off-by: Nilekh Chaudhari <1626598+nilekhc@users.noreply.github.com>
2023-07-13 20:42:09 +00:00
Kubernetes Prow Robot
adbc309123
Merge pull request #119288 from danwinship/proxy-testing-cleanup
minor proxy unit testing cleanups
2023-07-13 13:42:05 -07:00
Jiahui Feng
049614f884
ValidatingAdmissionPolicy controller for Type Checking (#117377)
* [API REVIEW] ValidatingAdmissionPolicyStatucController config.

worker count.

* ValidatingAdmissionPolicyStatus controller.

* remove CEL typechecking from API server.

* fix initializer tests.

* remove type checking integration tests

from API server integration tests.

* validatingadmissionpolicy-status options.

* grant access to VAP controller.

* add defaulting unit test.

* generated: ./hack/update-codegen.sh

* add OWNERS for VAP status controller.

* type checking test case.
2023-07-13 13:41:50 -07:00
Kubernetes Prow Robot
a9e40bd7c6
Merge pull request #114307 from rphillips/promote_probe_termination_grace_period
ProbeTerminationGracePeriod promote to GA
2023-07-13 13:41:38 -07:00
Andrew Sy Kim
d25075f342 update generated list of stable metrics
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2023-07-13 20:13:04 +00:00