Commit Graph

49698 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
293c1b8378 Merge pull request #118025 from AxeZhan/score-metrics
feature(scheduler): plugin_evaluation_total metric support preScore/score
2023-07-05 05:14:56 -07:00
Dr. Stefan Schimanski
68aee61d4f SPLIT: kube-apiserver/corerest: split out service IP setup logic 2023-07-05 11:00:37 +02:00
Mengjiao Liu
443bf3b01b scheduler test: Use cmp.Diff instead of reflect.DeepEqual for pkg/scheduler/internal/cache 2023-07-05 16:00:25 +08:00
Dr. Stefan Schimanski
dad3e4d211 SPLIT: kube-apiserver/corerest: split constructor 2023-07-05 09:45:20 +02:00
Kubernetes Prow Robot
68b7685b2a Merge pull request #119081 from sttts/sttts-public-ip-validation-move
kube-apiserver: move "public IP matches IP family" check to option validation
2023-07-04 14:28:54 -07:00
Dr. Stefan Schimanski
4149933ed2 kube-apiserver: move "public IP matches IP family" check to option validation 2023-07-04 22:28:27 +02:00
Kubernetes Prow Robot
8d0e46a5ec Merge pull request #119041 from sttts/sttts-move-back-master-count
cmd/kube-apiserver: move back master count variable from generic controlplane
2023-07-04 13:22:54 -07:00
Kubernetes Prow Robot
cb7acfd46e Merge pull request #119064 from sttts/sttts-move-kube-service-controller
pkg/controlplane: move bootstrap controller to controllers/kubernetesservice
2023-07-04 08:36:53 -07:00
Dr. Stefan Schimanski
616c959988 FIXUP: pkg/controlplane: move bootstrap controller to controllers/kubernetesservice 2023-07-04 16:38:14 +02:00
Kubernetes Prow Robot
0852a2759a Merge pull request #118965 from mengjiao-liu/use-cmp.Diff-scheduler-queue
scheduler test: Use cmp.Diff instead of reflect.DeepEqual for pkg/scheduler/internal/queue/
2023-07-04 05:29:05 -07:00
Dr. Stefan Schimanski
7b62d000a4 MOVE: pkg/controlplane: move bootstrap controller to controllers/kubernetesservice 2023-07-03 20:27:41 +02:00
Kubernetes Prow Robot
229dd79efd Merge pull request #117865 from aleksandra-malinowska/parallel-sts-3
Parallel StatefulSet pod create & delete
2023-07-03 10:16:51 -07:00
Dr. Stefan Schimanski
19cb6d036a kube-apiserver/corerest: remove redundant interface 2023-07-03 15:27:09 +02:00
Dr. Stefan Schimanski
36e458612a cmd/kube-apiserver: move back master count variable from generic controlplane 2023-07-03 13:20:29 +02:00
Kubernetes Prow Robot
a8cc22f416 Merge pull request #118680 from danwinship/not-that-kind-of-proxying
move an apiserver helper function out of pkg/proxy
2023-07-03 02:28:51 -07:00
Zhecheng Li
985cf718a4 [Dual-stack] Fix generateAPIPodStatus() of kubelet handling Secondary IP
hostIPs order may not be be consistent. If secondary IP is before
primary one, current logic adds primary IP twice into PodIPs, which
leads to error: "may specify no more than one IP for each IP family".
In this case, the second IP shouldn't be added.

Co-authored-by: Antonio Ojea <antonio.ojea.garcia@gmail.com>
2023-07-03 06:47:15 +00:00
Kubernetes Prow Robot
0a82bdbfdb Merge pull request #118173 from huiwq1990/feat-autoscale-variable
hpa: cleanup `currentReplicas` code
2023-07-02 23:00:50 -07:00
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
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
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
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
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
Daniel Vega-Myhre
e0af0a5a45 add test case param for feature flag 2023-06-29 21:51:15 +00:00
Stephen Kitt
b60a3a58df api-machinery: stop using deprecated io/ioutil
This replaces deprecated ioutil functions as follows:

* ioutil.ReadAll -> io.ReadAll
* ioutil.ReadFile -> os.ReadFile
* ioutil.TempDir -> os.MkdirTemp
* ioutil.TempFile -> os.CreateTemp
* ioutil.WriteFile -> os.WriteFile

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2023-06-29 17:48:39 +02:00
zach593
f7cf9effa3 fix kubelet podWorkers.SyncKnownPods() typo
Signed-off-by: zach593 <montenukem@outlook.com>
2023-06-29 22:32:03 +08: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
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
Mengjiao Liu
72294e4eff scheduler test: Use cmp.Diff instead of reflect.DeepEqual for pkg/scheduler/internal/queue/ 2023-06-29 15:28:42 +08:00
guoguangwu
0da37d8c54 chore: omit comparison to bool constant 2023-06-29 10:41:50 +08:00
Kubernetes Prow Robot
c3c731890c Merge pull request #117927 from kaisoz/add-FailedToRetrieveImagePullSecret-event
Log a warning if a ImagePullSecrets does not exist
2023-06-28 11:14:31 -07:00
Aleksandra Malinowska
d616cf72a3 Add unit tests for parallel StatefulSet create & delete 2023-06-28 16:55:38 +02:00
utam0k
ef26510164 Return Skip in PodTopologySpread#PreScore under specific conditions
Signed-off-by: utam0k <k0ma@utam0k.jp>
2023-06-28 12:08:10 +00:00
Kubernetes Prow Robot
52457842d1 Merge pull request #117055 from cyclinder/csi_migration
remove CSI-migration gate
2023-06-28 04:28:31 -07:00
Kubernetes Prow Robot
ddbf3575a7 Merge pull request #116729 from AxeZhan/handlers_sync
[Scheduler] Make sure handlers have synced before scheduling
2023-06-28 01:26:31 -07:00
Kubernetes Prow Robot
74bd77a9df Merge pull request #118917 from kmala/daemonsetfix
increase the log level for the GetTargetNodeName error message
2023-06-28 00:08:32 -07:00
Kubernetes Prow Robot
960830bc66 Merge pull request #118102 from RomanBednar/retro-sc-assignment-ga
graduate RetroactiveDefaultStorageClass feature to GA in 1.28
2023-06-27 20:46:32 -07:00
Daniel Vega-Myhre
cfa2fa6d77 put feature gate in alphabetical order 2023-06-27 22:20:17 +00:00
yanggang
860aab842d fix a reference to the wrong variable name
Signed-off-by: yanggang <gang.yang@daocloud.io>
2023-06-28 06:12:44 +08:00
kannon92
bb8766daaf feature flags should be ordered alphabetically 2023-06-27 19:16:16 +00:00
Daniel Vega-Myhre
a9afaa1eee add feature gate 2023-06-27 18:07:17 +00:00
Kubernetes Prow Robot
b3d94ae74f Merge pull request #118786 from pohly/dra-test-skip-prepare
dra: kubelet must skip NodePrepareResource if not used by any container
2023-06-27 09:58:32 -07:00