Commit Graph

115595 Commits

Author SHA1 Message Date
Kubernetes Release Robot
8e01ee79bf CHANGELOG: Update directory for v1.27.0-beta.0 release 2023-03-17 00:49:13 +00:00
Kubernetes Prow Robot
e1c2af399a
Merge pull request #115331 from mimowo/kubelet-fail-pending-deleted-pods
Give terminal phase correctly to all pods that will not be restarted
2023-03-16 16:47:17 -07:00
Kubernetes Prow Robot
76d351065e
Merge pull request #116623 from lavalamp/xfrmr
change where transformers are called
2023-03-16 15:03:19 -07:00
Clayton Coleman
d25572c389
kubelet: HandlePodCleanups takes an extra sync to restart pods
HandlePodCleanups is responsible for restarting pods that are no
longer running (usually due to delete and recreation with the same
UID in quick succession). We have to filter the list of pods to
restart from podManager to get the list of admitted pods, which
uses filterOutInactivePods on the kubelet. That method excludes
pods the pod worker has already terminated. Since a restarted
pod will be in the terminated state before HandlePodCleanups
calls SyncKnownPods, we have to call filterOutInactivePods after
SyncKnownPods, otherwise the to-be-restarted pod is ignored and
we have to wait for the next houskeeping cycle to restart it.

Since static pods are often critical system components, this
extra 2s wait is undesirable and we should restart as soon as
we can. Add a failing test that passes after we move the filter
call after SyncKnownPods.
2023-03-16 15:18:44 -06:00
Michal Wozniak
3d68f362c3 Give terminal phase correctly to all pods that will not be restarted 2023-03-16 21:25:29 +01:00
Clayton Coleman
58d1dc669f kubelet: Remove status manager channel
The status manager channel forces all container status to be
processed, even if multiple updates are generated in succession.
Instead of queueing the updates, just remember which ones changed
and process them in a batch. This should reduce QPS load from
the Kubelet for status, reduce latency of status propagation to
the API in general, and is easier to reason about.

This also prevents status from being lost when the channel is
full - all updates sent by SetPodStatus are guaranteed to be
recorded. Changing to remove the channel allows us to set a
marker flag when the pod worker state machine completes that
avoids the status manager having to call into the pod worker
directly.
2023-03-16 21:22:43 +01:00
Kubernetes Prow Robot
a34e37c996
Merge pull request #113218 from ahmedtd/kep-3257
Add certificates.k8s.io/v1alpha1 ClusterTrustBundle
2023-03-16 11:13:20 -07:00
Sathyanarayanan Saravanamuthu
c84c8add70
Decouple batch/job back-off logic from workqueues (#114768)
* batch/job: decouple backoff from workqueue

Signed-off-by: Sathyanarayanan Saravanamuthu <sathyanarays@vmware.com>

* Resolving review comments

* Resolving more review comments

* Resolving review comments

Signed-off-by: Sathyanarayanan Saravanamuthu <sathyanarays@vmware.com>

* Computing finish time to now when FinishedAt is unix epoch

* Addressing review comments

Signed-off-by: Sathyanarayanan Saravanamuthu <sathyanarays@vmware.com>

---------

Signed-off-by: Sathyanarayanan Saravanamuthu <sathyanarays@vmware.com>
2023-03-16 10:15:21 -07:00
Kubernetes Prow Robot
856d6d9caa
Merge pull request #116172 from wojtek-t/fix_watch_cache
Fix missed watch events when watch is initialized simultanously with reinitializing watchcache
2023-03-16 07:31:21 -07:00
Davanum Srinivas
41ed0e1234
Add an image for kubectl
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-03-16 10:28:04 -04:00
Dan Winship
1c7155e7ff Move hollow_proxy.go from pkg/kubemark to pkg/proxy/kubemark
This way it inherits the OWNERS from pkg/proxy which makes it easier
for sig-network to keep it in sync with changes made to internal proxy
APIs.
2023-03-16 09:47:54 -04:00
Wojciech Tyczyński
3277d85604 Fix missed watch events 2023-03-16 14:32:11 +01:00
Stanislav Laznicka
8d3a498c87
don't ignore UID impersonation in webhook clients 2023-03-16 12:18:56 +01:00
Taahir Ahmed
51f759aa05 ClusterTrustBundles: kube-apiserver integration tests 2023-03-15 20:19:48 -07:00
Taahir Ahmed
2e4b637bf8 ClusterTrustBundles: make update 2023-03-15 20:10:59 -07:00
Taahir Ahmed
6a75e7c40c ClusterTrustBundles: Define types
This commit is the main API piece of KEP-3257 (ClusterTrustBundles).

This commit:

* Adds the certificates.k8s.io/v1alpha1 API group
* Adds the ClusterTrustBundle type.
* Registers the new type in kube-apiserver.
* Implements the type-specfic validation specified for
  ClusterTrustBundles:
  - spec.pemTrustAnchors must always be non-empty.
  - spec.signerName must be either empty or a valid signer name.
  - Changing spec.signerName is disallowed.
* Implements the "attest" admission check to restrict actions on
  ClusterTrustBundles that include a signer name.

Because it wasn't specified in the KEP, I chose to make attempts to
update the signer name be validation errors, rather than silently
ignored.

I have tested this out by launching these changes in kind and
manipulating ClusterTrustBundle objects in the resulting cluster using
kubectl.
2023-03-15 20:10:18 -07:00
Kubernetes Prow Robot
742316ee21
Merge pull request #116631 from bobbypage/standalone-repro
test: Update standalone test in node e2e
2023-03-15 18:27:26 -07:00
Kubernetes Prow Robot
a4302915c9
Merge pull request #116305 from danwinship/cloud-node-ips
KEP-3705 cloud dual-stack --node-ip
2023-03-15 18:27:14 -07:00
Max Smythe
e5fd204c33
Custom match criteria (#116350)
* Add custom match conditions for CEL admission

This PR is based off of, and dependent on the following PR:

https://github.com/kubernetes/kubernetes/pull/116261

Signed-off-by: Max Smythe <smythe@google.com>

* run `make update`

Signed-off-by: Max Smythe <smythe@google.com>

* Fix unit tests

Signed-off-by: Max Smythe <smythe@google.com>

* Fix unit tests

Signed-off-by: Max Smythe <smythe@google.com>

* Update compatibility test data

Signed-off-by: Max Smythe <smythe@google.com>

* Revert "Update compatibility test data"

This reverts commit 312ba7f9e74e0ec4a7ac1f07bf575479c608af28.

* Allow params during validation; make match conditions optional

Signed-off-by: Max Smythe <smythe@google.com>

* Add conditional ignoring of matcher CEL expression validation on update

Signed-off-by: Max Smythe <smythe@google.com>

* Run codegen

Signed-off-by: Max Smythe <smythe@google.com>

* Add more validation tests

Signed-off-by: Max Smythe <smythe@google.com>

* Short-circuit CEL matcher when no matchers specified

Signed-off-by: Max Smythe <smythe@google.com>

* Run codegen

Signed-off-by: Max Smythe <smythe@google.com>

* Address review comments

Signed-off-by: Max Smythe <smythe@google.com>

---------

Signed-off-by: Max Smythe <smythe@google.com>
2023-03-15 17:23:15 -07:00
Kubernetes Prow Robot
6711a81f02
Merge pull request #116657 from pacoxu/fix-explain
make `kubectl explan` test tolerate either  "RESOURCE" or "FIELD"
2023-03-15 14:43:05 -07:00
Dan Winship
068ee321bc Add CloudDualStackNodeIPs feature gate(s)
Add CloudDualStackNodeIPs feature gates for kubelet and
cloud-controller-manager and use as appropriate.
2023-03-15 17:15:51 -04:00
David Porter
6ead3e3945 test: Update standalone test in node e2e
* Slightly changed pod spec to repro issue #116262
* Refactor test to ensure that the static pod is deleted even if the
  test fails

Signed-off-by: David Porter <david@porter.me>
2023-03-15 14:00:39 -07:00
Kubernetes Prow Robot
ad4cbd4c85
Merge pull request #116628 from SergeyKanzhelev/fixStandaloneTest
fix standalone test
2023-03-15 13:47:17 -07:00
Kubernetes Prow Robot
39c01ded6a
Merge pull request #116612 from robscott/topology-annotation-validation
Adding validation for Topology annotations
2023-03-15 13:47:05 -07:00
Daniel Smith
e76dff38cf Change where transformers are called. 2023-03-15 20:45:45 +00:00
Paco Xu
b3690bf637 accept either FIELD or RESOURCE for kubectl explain to meet skew policy 2023-03-16 03:38:43 +08:00
Kubernetes Prow Robot
2ae7bc36de
Merge pull request #116664 from logicalhan/md
update documentation for metrics for 1.27
2023-03-15 12:20:43 -07:00
Kubernetes Prow Robot
20e8b20b75
Merge pull request #116569 from tukwila/validate_testVols
check if test volumes created
2023-03-15 12:20:31 -07:00
Kubernetes Prow Robot
51471fa350
Merge pull request #116326 from sanposhiho/sanposhiho/hpa-metrics-container-baed
HPA: expose the metrics "metric_computation_duration_seconds" and "metric_computation_total" from HPA controller
2023-03-15 12:20:18 -07:00
Dan Winship
e3aacb4f30 Update GetNodeAddressesFromNodeIP and ParseNodeIPAnnotation for cloud dual-stack
Update callers for the new APIs, but don't change their behavior yet.
2023-03-15 14:50:17 -04:00
Dan Winship
d6a11b7138 Update GetNodeAddressesFromNodeIP to take the unparsed annotation
And simplify the callers in node_controller.go to merge the common
code.
2023-03-15 14:50:17 -04:00
Dan Winship
7605163620 Split up PreferNodeIP into legacy and non-legacy versions
Though not obvious as currently written, PreferNodeIP() has different
semantics with legacy and external cloud providers, since one kind of
node IP value never gets passed in the external cloud provider case.
Split it into two functions to make this clearer (and to prepare for
adding new external-cloud-only semantics, and to make it clearer that
some of the code can be deleted when legacy cloud providers go away).
2023-03-15 14:50:17 -04:00
Dan Winship
77e0fbe774 Update ParseNodeIPArgument for cloud dual-stack
Add an arg to ParseNodeIPArgument saying whether to allow dual-stack
IPs for external cloud providers. Update kubelet for the new API, but
always pass "false" for now.
2023-03-15 14:50:17 -04:00
Dan Winship
0f1f1711fe Move kubelet --node-ip parsing to component-helpers
The same code should be used to parse the command-line argument and
the annotation. Unfortunately, for compatiblity reasons, they have to
handle invalid inputs differently...

(It doesn't make sense to put this code in cloud-provider, since
ParseNodeIPArgument is used for the non-cloud-provider case too.)
2023-03-15 14:50:17 -04:00
Rob Scott
9e571c0424
Adding validation for topology annotations
Change-Id: I50b3b05b859c69e98daca7c8fca0d3a76024eb80
2023-03-15 18:37:02 +00:00
Kubernetes Prow Robot
d3a7b5920f
Merge pull request #116046 from sanposhiho/sanposhiho/beta-graduation-container-metric
feature(hpa): beta graduation for the container resource metrics
2023-03-15 11:10:15 -07:00
Han Kang
9d27f5c934 update documentation for metrics for 1.27 2023-03-15 10:10:02 -07:00
Kubernetes Prow Robot
e6f3e3dddd
Merge pull request #116645 from mborsz/kubemark
Add missing trace dependency to kubemark
2023-03-15 09:54:27 -07:00
Kubernetes Prow Robot
f0ec1eccb2
Merge pull request #116622 from Jefftree/add-metrics-openapiv3
Add additional metrics for OpenAPI V3
2023-03-15 09:54:16 -07:00
Riaan Kleinhans
0b09566dcf
Update pending_eligible_endpoints.yaml 2023-03-16 04:17:37 +13:00
Andy Goldstein
364b66ddd6
admission ApplyTo: take in clients
Change admission ApplyTo() to take in clients instead of a rest.Config.

Signed-off-by: Andy Goldstein <andy.goldstein@redhat.com>
2023-03-15 11:15:49 -04:00
Sascha Grunert
630af564be
Update cri-tools to v1.26.1
Addresses CVE-2022-41723: https://github.com/advisories/GHSA-vvpx-j8f3-3w6h

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2023-03-15 15:22:24 +01:00
Kubernetes Prow Robot
409d055bf8
Merge pull request #116639 from MadhavJivrajani/improve-e2e-subresource-test
test/e2e: Improve kubectl subresource e2e test
2023-03-15 07:14:16 -07:00
Maciej Borsz
0ba519fee0 Add missing trace dependency to kubemark 2023-03-15 13:01:42 +00:00
Madhav Jivrajani
88b498f23e test/e2e: Improve kubectl subresource e2e test
We now get structured output using jsonpath for the
name and version fields of the node object and then
compare the outputs.

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2023-03-15 17:27:34 +05:30
Kubernetes Prow Robot
8decaf3ae7
Merge pull request #115447 from kidddddddddddddddddddddd/ingress
[ingress] Create with ingressClass annotation and IngressClassName both set
2023-03-15 02:02:16 -07:00
Ed Bartosh
1aeec10efb DRA: get rid of unneeded loops over pod containers 2023-03-15 09:41:30 +02:00
Kubernetes Prow Robot
37937bb227
Merge pull request #110566 from claudiubelu/unittests-5
Adds Pod DNS Policies support for Windows pods
2023-03-14 23:54:14 -07:00
Kubernetes Prow Robot
9bb778d48e
Merge pull request #116630 from aramase/aramase/c/rm_key_hierarchy
[KMSv2] remove key hierarchy in reference implementation
2023-03-14 22:02:14 -07:00
Kubernetes Prow Robot
50070e664b
Merge pull request #116626 from nilekhc/fix-kmsv2-healthz-flake
[KMSv2] fix: increases timeout to avoid flake
2023-03-14 20:28:34 -07:00