Commit Graph

117461 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
ec87834bae
Merge pull request #118936 from pohly/dra-deallocate-when-unused
DRA: for delayed allocation, deallocate when no longer used
2023-07-01 12:56:48 -07:00
Kubernetes Prow Robot
1c5eadf4b3
Merge pull request #118845 from pacoxu/patch-5
update cri-api change in v1.27
2023-07-01 10:02:48 -07:00
Kubernetes Prow Robot
01171e8250
Merge pull request #118976 from ctripcloud/fix-typo
fix kubelet podWorkers.SyncKnownPods() typo
2023-07-01 06:06:48 -07:00
Dan Winship
bb0c3a0818 Remove proxyutil.IsProxyableIP / IsProxyableHostname
These don't belong in pkg/proxy/util; they involve a completely
unrelated definition of proxying.

Since each is only used from one place, just inline them at the
callers.
2023-07-01 08:49:38 -04:00
Kubernetes Prow Robot
14b08b82e4
Merge pull request #118941 from neolit123/1.28-restore-test-function-for-config-migrate
kubeadm: restore and generalize the TestMigrateOldConfig test
2023-07-01 03:18:48 -07:00
roman
59592ba463 Add OIDC test server 2023-07-01 10:53:53 +03:00
Dan Winship
1f2bf32e95 Figure out single-stack/dual-stack support before creating the proxier
Rather than having this as part of createProxier(), explicitly figure
out what IP families the proxier can support beforehand, and bail out
if this conflicts with the detected IP family.
2023-06-30 17:43:04 -04:00
Dan Winship
8abfa89e82 Move proxy platformSetup call, and do LocalDetector setup from there 2023-06-30 17:39:36 -04:00
Dan Winship
ebb0fdd4f6 Don't explicitly filter config.NodePortAddresses by IP family
There's no need to do this any more: proxyutil.NodePortAddresses does
it itself.
2023-06-30 12:32:59 -04:00
Dan Winship
a74b9fde3a Don't pass around full node in proxy constructor, just pass PodCIDRs 2023-06-30 11:30:17 -04:00
Kubernetes Prow Robot
86fec81606
Merge pull request #118995 from pohly/test-integration-race-detection-flowcontrol-II
flowcontrol: copy object before passing it to client-go Create to avoid data race
2023-06-30 08:18:43 -07:00
Lubomir I. Ivanov
0537c1da56 kubeadm: move migrate / validate tests out of config_tests.go
Place the tests in common_tests.go on the backend side in
common_tests.go. A test for migrate TestMigrateOldConfig
was already present there. Apply slightly better coverage to it
and rename desc -> name.

Fix typo in argument oldConfig -> config in ValidateConfig().
2023-06-30 18:14:10 +03:00
Kubernetes Prow Robot
68bc6e0c0e
Merge pull request #119001 from dims/install-ecr-credential-provider-during-node-e2e-tests
Install ecr-credential-provider during node e2e tests
2023-06-30 07:16:43 -07:00
Davanum Srinivas
b01a4145b2
Install ecr-credential-provider during node e2e tests
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-06-30 09:18:44 -04:00
Cezary Zawadka
4e6aa5fb86 kube-proxy service health: add new return header with number of local endpoints
- add new header "X-Load-Balancing-Endpoint-Weight" returned from service health. Value of the header is number of local endpoints. Header can be used in weighted load balancing. Parsing header for number of endpoints is faster than unmarshalling json from the content body.

- add missing unit test for new and old headers returned from service health
2023-06-30 11:25:48 +02:00
Kubernetes Prow Robot
52b1247b28
Merge pull request #118232 from luckymrwang/style
style: correct the sentence
2023-06-30 01:51:59 -07:00
Kubernetes Prow Robot
9af93df9b0
Merge pull request #117845 from ctripcloud/fix-hpa-plain-calc
fix HPA plain metric calculate
2023-06-30 01:51:47 -07:00
Patrick Ohly
a5df442be7 flowcontrol: copy object before passing it to client-go Create to avoid data race
This is similar to 5e1c6cd0d4, except that here generics are involved:
because client-go Create under the hood mutates its input value temporarily,
callers must make a copy if the object is read from some other goroutine.

The race as reported by "go test -race" for
test/integration/examples.TestAggregatedAPIServerRejectRedirectResponse is:

WARNING: DATA RACE
Read at 0x00c000556010 by goroutine 16128:
  reflect.Value.String()
      /usr/local/go/src/reflect/value.go:2565 +0x216
  encoding/json.stringEncoder()
      /usr/local/go/src/encoding/json/encode.go:645 +0x223
  encoding/json.structEncoder.encode()
      /usr/local/go/src/encoding/json/encode.go:759 +0x2ba
  encoding/json.structEncoder.encode-fm()
      <autogenerated>:1 +0xdb
  encoding/json.ptrEncoder.encode()
      /usr/local/go/src/encoding/json/encode.go:943 +0x382
  encoding/json.ptrEncoder.encode-fm()
      <autogenerated>:1 +0x90
  encoding/json.(*encodeState).reflectValue()
      /usr/local/go/src/encoding/json/encode.go:358 +0x88
  encoding/json.(*encodeState).marshal()
      /usr/local/go/src/encoding/json/encode.go:330 +0x224
  encoding/json.Marshal()
      /usr/local/go/src/encoding/json/encode.go:161 +0xf9
  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/format.ToJSON()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/format/formatting.go:81 +0x44
  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/format.Stringer.String()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/format/formatting.go:68 +0x5a4
  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/format.(*Stringer).String()
      <autogenerated>:1 +0x4b
  fmt.(*pp).handleMethods()
      /usr/local/go/src/fmt/print.go:673 +0x4db
  fmt.(*pp).printArg()
      /usr/local/go/src/fmt/print.go:756 +0xce4
  fmt.(*pp).doPrintf()
      /usr/local/go/src/fmt/print.go:1077 +0x599
  fmt.Fprintf()
      /usr/local/go/src/fmt/print.go:224 +0x7e
  k8s.io/kubernetes/vendor/k8s.io/klog/v2.(*loggingT).printfDepth()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/klog/v2/klog.go:733 +0x216
  k8s.io/kubernetes/vendor/k8s.io/klog/v2.(*loggingT).printf()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/klog/v2/klog.go:718 +0xcc
  k8s.io/kubernetes/vendor/k8s.io/klog/v2.Verbose.Infof()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/klog/v2/klog.go:1418 +0x64
  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol.(*cfgMeal).digestFlowSchemasLocked()
...
Previous write at 0x00c000556010 by goroutine 15271:
  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*TypeMeta).SetGroupVersionKind()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/meta.go:121 +0x193
  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.WithVersionEncoder.Encode()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/helper.go:239 +0x325
  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.(*WithVersionEncoder).Encode()
      <autogenerated>:1 +0xfb
  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.Encode()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/codec.go:49 +0xb3
  k8s.io/kubernetes/vendor/k8s.io/client-go/rest.(*Request).Body()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/client-go/rest/request.go:470 +0x884
  k8s.io/kubernetes/vendor/k8s.io/client-go/kubernetes/typed/flowcontrol/v1beta3.(*flowSchemas).Create()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/client-go/kubernetes/typed/flowcontrol/v1beta3/flowschema.go:118 +0x23c
  k8s.io/kubernetes/pkg/registry/flowcontrol/ensurer.(*objectOps[...]).Create()
      <autogenerated>:1 +0x10f
  k8s.io/kubernetes/pkg/registry/flowcontrol/ensurer.EnsureConfiguration[...]()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/registry/flowcontrol/ensurer/strategy.go:272 +0x1b5
  k8s.io/kubernetes/pkg/registry/flowcontrol/ensurer.EnsureConfigurations[...]()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/registry/flowcontrol/ensurer/strategy.go:247 +0xf3
  k8s.io/kubernetes/pkg/registry/flowcontrol/rest.ensureMandatoryConfiguration()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/registry/flowcontrol/rest/storage_flowcontrol.go:230 +0x59e
  k8s.io/kubernetes/pkg/registry/flowcontrol/rest.ensure()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/registry/flowcontrol/rest/storage_flowcontrol.go:202 +0x1b2
  k8s.io/kubernetes/pkg/registry/flowcontrol/rest.(*bootstrapConfigurationEnsurer).ensureAPFBootstrapConfiguration.func1.1()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/registry/flowcontrol/rest/storage_flowcontrol.go:159 +0xe4
  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait.runConditionWithCrashProtectionWithContext()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:154 +0x7b
2023-06-30 09:55:25 +02:00
Patrick Ohly
ea34d03925 integration testing: configure gRPC logging during init
Doing the initialization once was not good enough because it was not guaranteed
that RunCustomEtcd gets called early enough, before there are other goroutines
which use gRPC. The data race for
test/integration/apiserver.TestWatchCacheUpdatedByEtcd was:

WARNING: DATA RACE
Read at 0x00000cfffb90 by goroutine 140052:
  k8s.io/kubernetes/vendor/google.golang.org/grpc/grpclog.V()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/google.golang.org/grpc/grpclog/grpclog.go:41 +0x30
  k8s.io/kubernetes/vendor/google.golang.org/grpc/grpclog.(*componentData).V()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/google.golang.org/grpc/grpclog/component.go:103 +0x4e
  k8s.io/kubernetes/vendor/google.golang.org/grpc/internal/transport.(*http2Client).Close()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/google.golang.org/grpc/internal/transport/http2_client.go:955 +0xca
  k8s.io/kubernetes/vendor/google.golang.org/grpc/internal/transport.(*http2Client).reader()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/google.golang.org/grpc/internal/transport/http2_client.go:1619 +0xbfb
  k8s.io/kubernetes/vendor/google.golang.org/grpc/internal/transport.newHTTP2Client.func11()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/google.golang.org/grpc/internal/transport/http2_client.go:394 +0x47

Previous write at 0x00000cfffb90 by goroutine 145643:
  k8s.io/kubernetes/vendor/google.golang.org/grpc/grpclog.SetLoggerV2()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/google.golang.org/grpc/grpclog/loggerv2.go:75 +0x104
  k8s.io/kubernetes/test/integration/framework.RunCustomEtcd.func2()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/integration/framework/etcd.go:157 +0x33
  sync.(*Once).doSlow()
      /usr/local/go/src/sync/once.go:74 +0x101
  sync.(*Once).Do()
      /usr/local/go/src/sync/once.go:65 +0x46
  k8s.io/kubernetes/test/integration/framework.RunCustomEtcd()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/integration/framework/etcd.go:156 +0xb97
  k8s.io/kubernetes/test/integration/apiserver.multiEtcdSetup()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/integration/apiserver/watchcache_test.go:41 +0xc4
  k8s.io/kubernetes/test/integration/apiserver.TestWatchCacheUpdatedByEtcd()
      /home/prow/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/integration/apiserver/watchcache_test.go:92 +0xa9
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:1576 +0x216
  testing.(*T).Run.func1()
      /usr/local/go/src/testing/testing.go:1629 +0x47
2023-06-30 09:52:57 +02:00
Kubernetes Prow Robot
8d4479a58f
Merge pull request #118767 from gxglls/master
fix(script): handle wait_for_success failed condition
2023-06-29 19:43:45 -07:00
Kubernetes Prow Robot
02f09d6a61
Merge pull request #118842 from helayoty/sched-update-unit-tests
test: Use table-driven test for TestPerPodSchedulingMetrics
2023-06-29 18:23:46 -07:00
Kubernetes Prow Robot
c2b7d25ff8
Merge pull request #118691 from giuseppe/drop-check-for-volumes
apis: drop check for volumes with user namespaces
2023-06-29 16:23:56 -07:00
Kubernetes Prow Robot
68b9ccc511
Merge pull request #117554 from yanggangtony/clean-endpoint-controller
clean endpoint controller typo logs
2023-06-29 16:23:44 -07:00
Richa Banker
1c48b7ec14 Add servedVersions info in StorageVersion API 2023-06-29 15:40:54 -07:00
Heba Elayoty
d548983dbb
Use table-driven table for TestPerPodSchedulingMetrics
Signed-off-by: Heba Elayoty <hebaelayoty@gmail.com>
2023-06-29 14:51:55 -07:00
Kubernetes Prow Robot
a736049349
Merge pull request #118986 from logicalhan/beta-metric
promote sli metrics to beta
2023-06-29 14:51:45 -07:00
Daniel Vega-Myhre
e0af0a5a45 add test case param for feature flag 2023-06-29 21:51:15 +00:00
Han Kang
d68f5f0d92 fix tests 2023-06-29 13:46:12 -07:00
Han Kang
44f1c4dd94 fix duplicate metrics issue 2023-06-29 12:30:30 -07:00
Kubernetes Prow Robot
3180aa4272
Merge pull request #118977 from dims/copy-container-logs-for-easier-debugging
Copy container logs for easier debugging
2023-06-29 12:09:43 -07:00
Kubernetes Prow Robot
8cd25e7908
Merge pull request #118931 from wojtek-t/generic_cacher_tests_270623
Generalize watch storage tests
2023-06-29 12:09:31 -07:00
Andrew Stoycos
84b3d9b7b7
remove legacy NetworkPolicy tests
This commit removes the legacy networkpolicy tests since they now have
complete appropriate coverage in the new netpol suite.

Signed-off-by: Andrew Stoycos <astoycos@redhat.com>
2023-06-29 14:44:21 -04:00
Kubernetes Prow Robot
ec9a8ffb23
Merge pull request #116977 from cvvz/fix-docs
docs: fix storage e2e test README
2023-06-29 11:09:59 -07:00
Han Kang
0eeca0987a fix tests 2023-06-29 10:14:45 -07:00
Kubernetes Prow Robot
a8f4c408ec
Merge pull request #118975 from dims/bump-cadvisor-version-in-tests-to-v0.47.2
Bump cadvisor version in tests to v0.47.2
2023-06-29 09:43:36 -07:00
Han Kang
04ea1d506b promote sli metrics to beta 2023-06-29 09:23:01 -07:00
Davanum Srinivas
f96d83af66
Copy container logs for easier debugging
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-06-29 11:56:00 -04:00
Francesco Romani
dfc150ca18 e2e: node: podresources: cooldown the rate limit
We have a e2e test which want to get a rate limit error. To do so, we
sent an abnormally high amount of calls in a tight loop.

The relevant test per se is reportedly fine, but wwe need to play nicer
with *other* tests which may run just after and which need to query the API.
If the testsuite runs "too fast", it's possible an innocent test falls in the
same rate limit watch period which was saturated by the ratelimit test,
so the innocent test can still be throttled because the throttling period
is not exhausted yet, yielding false negatives, leading to flakes.

We can't reset the period for the rate limit, we just wait "long enough" to
make sure we absorb the burst and other legit queries are not rejected.

Signed-off-by: Francesco Romani <fromani@redhat.com>
2023-06-29 17:40:36 +02:00
Kubernetes Prow Robot
d27439701f
Merge pull request #118948 from aramase/aramase/c/oidc_wire_context
[StructuredAuthenticationConfig] wire request context to claim resolver
2023-06-29 08:21:48 -07:00
Kubernetes Prow Robot
134f971d85
Merge pull request #118935 from alculquicondor/fix-conformance
Exclude terminal pods from Daemonset e2e tests
2023-06-29 08:21:37 -07:00
zach593
f7cf9effa3 fix kubelet podWorkers.SyncKnownPods() typo
Signed-off-by: zach593 <montenukem@outlook.com>
2023-06-29 22:32:03 +08:00
Kubernetes Prow Robot
94f664a166
Merge pull request #118971 from everpeace/remove-unnecesary-comment-in-scheduler-plugin
Remove unnecessary comment on pkg/scheduler/framework.QueueingHintFn
2023-06-29 07:13:36 -07:00
Davanum Srinivas
52ef833b6c
Bump cadvisor version in tests to v0.47.2
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-06-29 09:58:31 -04:00
Wojciech Tyczyński
8266c4d934 Generalize watch storage tests 2023-06-29 09:02:37 -04:00
Shingo Omura
d53762ec3a
remove unnecessary comment in pkg/scheduler/framework.QueueingHintFn
event is not passed to QueueingHintFn but it exists a comment about it.
event is unnecessary in QueueingHintFn because QueueingHintFn is used in
ClusterEventWithHint and ClusterEventWithHint already have ClusterEvent.

Signed-off-by: Shingo Omura <everpeace@gmail.com>
2023-06-29 21:22:20 +09:00
Kubernetes Prow Robot
9516a25ce4
Merge pull request #118951 from dims/drop-docker.log-and-add-cloud-init-output.log
Drop docker.log and add cloud init output.log
2023-06-29 03:51:47 -07:00
Kubernetes Prow Robot
2ee01fb673
Merge pull request #118945 from andrewsykim/update-request-filter-duration-buckets
Introduce larger buckets for request_filter_duration_seconds and request_wait_duration_seconds
2023-06-29 03:51:36 -07:00
Kubernetes Prow Robot
7bac0cee89
Merge pull request #118946 from SataQiu/clean-kubeadm-20230629
kubeadm: remove unused Kind and Resource functions from output API
2023-06-29 02:51:47 -07:00
Kubernetes Prow Robot
3a9c639d5a
Merge pull request #118312 from mengjiao-liu/improve-scheduler-cache-test
scheduler: add test name and remove redundant test tables to improve cache_test.go
2023-06-29 02:51:36 -07:00
Patrick Ohly
1b47e6433b dra delayed allocation: deallocate when a pod is done
This releases the underlying resource sooner and ensures that another consumer
can get scheduled without being influenced by a decision that was made for the
previous consumer.

An alternative would have been to have the apiserver trigger the deallocation
whenever it sees the `status.reservedFor` getting reduced to zero. But that
then also triggers deallocation when kube-scheduler removes the last
reservation after a failed scheduling cycle. In that case we want to keep the
claim allocated and let the kube-scheduler decide on a case-by-case basis which
claim should get deallocated.
2023-06-29 09:47:30 +02:00