Kubernetes Prow Robot
4dfd2fe74d
Merge pull request #115922 from sourcelliu/impovevolume
...
Improve performance of method haveOverlap
2023-02-21 11:34:08 -08:00
mantuliu
edc0455c5c
Improve performance of method haveOverlap
...
Signed-off-by: mantuliu <240951888@qq.com>
2023-02-22 00:51:55 +08:00
mantuliu
af85f410a2
Improve the performance of slice usage
...
Signed-off-by: mantuliu <240951888@qq.com>
2023-02-21 19:30:27 +08:00
mantuliu
e1e07e34e3
Improve performance of method haveOverlap
...
Signed-off-by: mantuliu <240951888@qq.com>
2023-02-21 16:50:10 +08:00
Yoon Park
c6276cc2ab
Fix typo at most_allocated_test.go
2023-02-21 10:32:40 +09:00
Wei Huang
72863f65d6
Graduate PodSchedulingReadiness to beta
2023-02-17 18:45:20 -08:00
Kubernetes Prow Robot
77af0be42f
Merge pull request #115519 from sanposhiho/move-metric-recorder
...
cleanup(scheduler): move metricRecorder to metrics package
2023-02-16 03:57:38 -08:00
Kensei Nakada
aa7b1766e5
cleanup(scheduler): move metricRecorder to metrics package
2023-02-16 07:27:08 +00:00
Kubernetes Prow Robot
40deade20d
Merge pull request #115583 from lianghao208/scheduling-gate
...
Optimization on running prePreEnqueuePlugins before adding pods into activeQ
2023-02-15 15:28:59 -08:00
lianghao208
c01fa8279d
Optimization on running prePreEnqueuePlugins before adding pods into activeQ
2023-02-15 11:13:21 +08:00
Kubernetes Prow Robot
fdc117a6dd
Merge pull request #114887 from binacs/binacs/simplify-pickOneNodeForPreemption
...
cleanup: simplify pickOneNodeForPreemption in preemption
2023-02-14 14:25:51 -08:00
Kubernetes Prow Robot
a0878eb715
Merge pull request #115709 from yoongon/feature/default-binder-testnode
...
Use predefined variable instead of duplicated string
2023-02-13 14:53:49 -08:00
kidddddddddddddddddddddd
f5a69ffda9
feature(scheduler): won't run Score if PreScore returned a Skip status ( #115652 )
...
* allow preScore to return skip status to skip running the corresponding score extension
* add test case for all skipped
* add test case for select host
* update plugin status
* skip score when all plugins are skipped
* update
2023-02-13 14:53:29 -08:00
Kubernetes Prow Robot
b8b18ecd85
Merge pull request #114051 from chrishenzie/rwop-preemption
...
[scheduler] Support preemption of pods using ReadWriteOncePod PVCs
2023-02-13 11:45:30 -08:00
Lucas Severo Alves
6b34fafdaf
Add ctx logging involved in KS startup ( #115588 )
...
* ctx logging involved in startup
as per https://github.com/kubernetes/kubernetes/pull/111155#pullrequestreview-1283257121
* use klog.Background().Error in flag handling
* revert scheduler_perf changes
* refence issue in code comment
* enable ctx logcheck for cmd/kube-scheduler
2023-02-13 09:19:29 -08:00
Yoon
a3405f35b4
Use predefined variable instead of duplicated string
2023-02-12 20:50:39 +09:00
Kubernetes Prow Robot
95c65ca3a0
Merge pull request #115454 from dgrisonnet/promote-pod-resource-metrics
...
Promote pod resource metrics to stable
2023-02-09 12:36:16 -08:00
Damien Grisonnet
49da8a1d4a
scheduler: promote pod resource metrics to stable
...
Signed-off-by: Damien Grisonnet <dgrisonn@redhat.com>
2023-02-09 20:30:45 +01:00
Kensei Nakada
4f7717842c
feature(scheduler): implement plugin_evaluation_total metric
2023-02-04 07:21:03 +00:00
Chris Henzie
dbc7d8ded0
feat: support preemption for pods using ReadWriteOncePod PVCs
...
PVCs using the ReadWriteOncePod access mode can only be referenced by a
single pod. When a pod is scheduled that uses a ReadWriteOncePod PVC,
return "Unschedulable" if the PVC is already in-use in the cluster.
To support preemption, the "VolumeRestrictions" scheduler plugin
computes cycle state during the PreFilter phase. This cycle state
contains the number of references to the ReadWriteOncePod PVCs used by
the pod-to-be-scheduled.
During scheduler simulation (AddPod and RemovePod), we add and remove
reference counts from the cycle state if they use any of these
ReadWriteOncePod PVCs.
In the Filter phase, the scheduler checks if there are any PVC reference
conflicts, and returns "Unschedulable" if there is a conflict.
This is a required feature for the ReadWriteOncePod beta. See for more context:
https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/2485-read-write-once-pod-pv-access-mode#beta
2023-01-30 10:59:22 -08:00
BinacsLee
b3af95cb8a
cleanup: simplify pickOneNodeForPreemption in preemption
2023-01-29 19:55:43 +08:00
Todd Neal
69f04a2fc1
update comment to match implementation
2023-01-27 13:59:40 -06:00
Sunny Song
5e2f12e943
Fix nil pointer error in nodevolumelimits csi logging
2023-01-25 09:37:46 -08:00
Patrick Ohly
bc6c7fa912
logging: fix names of keys
...
The stricter checking with the upcoming logcheck v0.4.1 pointed out these names
which don't comply with our recommendations in
https://github.com/kubernetes/community/blob/master/contributors/devel/sig-instrumentation/migration-to-structured-logging.md#name-arguments .
2023-01-23 14:24:29 +01:00
Kubernetes Prow Robot
7b1b8d5734
Merge pull request #114889 from sanposhiho/skip/inter-pod-affinity
...
feature(InterPodAffinity): return Skip in PreFilter
2023-01-18 20:36:35 -08:00
Kensei Nakada
3b20a007ed
feature(InterPodAffinity): return Skip in PreFilter
2023-01-19 01:24:18 +00:00
Kubernetes Prow Robot
98da10e4f2
Merge pull request #115052 from kidddddddddddddddddddddd/fix/volume_zone
...
fix volume_zone, iterate all topologyLabels when check node
2023-01-18 10:54:46 -08:00
Kubernetes Prow Robot
f16e62ae0c
Merge pull request #114897 from kidddddddddddddddddddddd/volumebinding
...
feature(volumebinding): return Skip in PreFilter
2023-01-16 23:38:32 -08:00
HirazawaUi
3b18e80fb4
delete unused functions in pkg directory
2023-01-16 21:43:36 +08:00
kidddddddddddddddddddddd
2ba4c00b3c
hasAnyNodeConstraint
2023-01-14 15:29:54 +08:00
Kubernetes Prow Robot
eabb70833a
Merge pull request #114896 from kidddddddddddddddddddddd/volume_zone
...
feature(volume_zone): return Skip in PreFilter
2023-01-13 23:14:13 -08:00
Kubernetes Prow Robot
3a8e2e399b
Merge pull request #114393 from danielvegamyhre/myfeature
...
Option to ignore existing pods' preferred inter-pod affinities if the incoming pod has no preferred inter-pod affinities
2023-01-13 17:28:15 -08:00
Daniel Vega-Myhre
41817b1888
optionally ignore preferred terms of existing pods unless incoming pod
...
has inter-pod affinities
2023-01-13 23:15:53 +00:00
Michal Wozniak
437179afc3
Do not include scheduler name in the preemption event message
2023-01-11 09:32:21 +01:00
Kubernetes Prow Robot
1d6ae20301
Merge pull request #114798 from kerthcet/cleanup/code-refactor
...
Code refactor for readability in `RunFilterPlugins`
2023-01-09 17:31:12 -08:00
Kubernetes Prow Robot
1e3946ce9d
Merge pull request #114923 from mimowo/do-not-leak-pod-name-in-event
...
Adjust preemption event message to do not include preemptor pod metadata
2023-01-09 13:51:28 -08:00
Kubernetes Prow Robot
eb7fd7f51c
Merge pull request #114914 from mimowo/do-not-leak-pod-name
...
Adjust DisruptionTarget condition message to do not include preemptor pod metadata
2023-01-09 11:15:40 -08:00
Michal Wozniak
f79a34d267
Do not leak cross namespace pod metadata in preemption events
2023-01-09 18:30:19 +01:00
Michal Wozniak
bdf58ce2eb
Adjust DisruptionTarget condition message to do not include preemptor metadata
2023-01-09 12:22:19 +01:00
kidddddddddddddddddddddd
733d5695f2
always run filter in test
2023-01-08 11:13:16 +08:00
kidddddddddddddddddddddd
5411c05460
save state data for reserve
2023-01-08 10:49:35 +08:00
kidddddddddddddddddddddd
0abdf6abc2
revert check in filter
2023-01-07 22:30:16 +08:00
kidddddddddddddddddddddd
059d520537
return skip
2023-01-07 21:58:54 +08:00
kidddddddddddddddddddddd
de7c8db7cb
return skip
2023-01-07 21:48:30 +08:00
Kensei Nakada
570c2d7036
cleanup(nodeaffinity): remove impossible scenario from test cases
2023-01-07 08:46:35 +00:00
Kante Yin
2ceadfe885
Code refactor for readability
...
Signed-off-by: Kante Yin <kerthcet@gmail.com>
2023-01-07 11:31:46 +08:00
Kubernetes Prow Robot
c549b59983
Merge pull request #114125 from sanposhiho/skip-reimplementation
...
feature(scheduler): won't run Filter if PreFilter returned a Skip status
2023-01-06 02:25:59 -08:00
Kubernetes Prow Robot
bd43394467
Merge pull request #114623 from Huang-Wei/feat/smart-preemption-identification
...
Enhanced logic to identify eligible preemption node
2023-01-06 00:23:59 -08:00
Kensei Nakada
e5b536755f
feature(scheduler): won't run Filter if PreFilter returned a Skip status
2023-01-06 07:38:15 +00:00
Kubernetes Prow Robot
8dd70a16ad
Merge pull request #114699 from kerthcet/feat/distinguish-unschedulabel-with-unresolvable
...
Distinguish between Unschedulable and UnschedulableAndUnresolvable in scheduler's PostFilter
2023-01-05 12:53:57 -08:00
Wei Huang
9b64025f36
rename 'PreemptionByKubeScheduler' to 'PreemptionByScheduler'
2023-01-05 10:31:57 -08:00
Wei Huang
91742e2393
Enhanced logic to identify eligible preemption node
2023-01-05 10:31:57 -08:00
Kubernetes Prow Robot
67622be450
Merge pull request #114653 from kerthcet/cleanup/remove-waitstop
...
Stop Cache in scheduler when tests tear down
2023-01-05 09:11:59 -08:00
Kante Yin
2c205e291d
Distinguish unschedulable with unresolvable in scheduler
...
Before, in RunPostFilterPlugins, we didn't distinguish between unschedulable and unresolvable
because we only have one postFilterPlugin by default, now, we have at least two, we should
make sure that once a postFilterPlugin returns unresolvable, we'll return directly
Signed-off-by: Kante Yin <kerthcet@gmail.com>
2023-01-05 16:59:19 +08:00
Kante Yin
49e7e80999
Modify the return type of RunFilterPlugins to *Status
...
Before, the return type of RunFilterPlugins is a Map, but considering we'll return immediately
once we met unsuccessful status, this is not necessary.
Signed-off-by: Kante Yin <kerthcet@gmail.com>
2023-01-03 14:33:58 +08:00
Kubernetes Prow Robot
3a5829044c
Merge pull request #114098 from kidddddddddddddddddddddd/feat/pv_list
...
Optimize volumebinding by moving PV list calls to PreFilter
2022-12-22 10:11:37 -08:00
Kubernetes Prow Robot
419e0ec3d2
Merge pull request #114390 from tangwz/improve_NodeResourcesFit_replace_small_maps_with_slices
...
Improve performance of NodeResourcesFit scoring
2022-12-22 06:57:26 -08:00
Kante Yin
febf95cc43
Stop Cache in scheduler when test tears down
...
Signed-off-by: Kante Yin <kerthcet@gmail.com>
2022-12-22 15:38:38 +08:00
kidddddddddddddddddddddd
27c5c0a16d
pv_list to prefilter
2022-12-22 14:59:41 +08:00
Kubernetes Prow Robot
70c28f3e12
Merge pull request #114486 from kerthcet/cleanup/make-preemption-more-readable
...
Make handling scheduleResult more readable
2022-12-21 15:01:25 -08:00
Kante Yin
c8908716ee
Make handling scheduleResult more readable
...
Signed-off-by: Kante Yin <kerthcet@gmail.com>
2022-12-22 01:22:34 +08:00
tangwz
a4ab559ba4
Improve performance of NodeResourcesFit scoring
...
Signed-off-by: tangwz <tangwz.com@gmail.com>
2022-12-21 23:23:47 +08:00
Kubernetes Prow Robot
a3ca5fd2c8
Merge pull request #114456 from kidddddddddddddddddddddd/status_with_error
...
return error message when calling status.Message()
2022-12-19 11:09:43 -08:00
kidddddddddddddddddddddd
e789beb213
errMsg
2022-12-19 23:52:06 +08:00
Jordan Liggitt
78cb3862f1
Fix indentation/spacing in comments to render correctly in godoc
2022-12-17 23:27:38 -05:00
Kubernetes Prow Robot
94fd106a17
Merge pull request #110453 from claudiubelu/unittests-4
...
unittests: Fixes unit tests for Windows (part 4)
2022-12-16 06:16:16 -08:00
Wei Huang
0aecf6b3d5
Fix a regression that scheduler always go through all Filter plugins
...
The correct behavior is to stop upon the first Filter failure.
2022-12-15 12:02:27 -08:00
Kubernetes Prow Robot
c2b5457dfa
Merge pull request #109877 from yibozhuang/local-pv-prefilter-result
...
scheduler volumebinding: leverage PreFilterResult for bound local PVs
2022-12-13 14:53:34 -08:00
Kubernetes Prow Robot
6228b914ad
Merge pull request #114273 from TommyStarK/unit-tests/pkg-scheduler-internal
...
scheduler/internal: Improving cache and heap test coverage
2022-12-12 23:11:33 -08:00
Kubernetes Prow Robot
dc1e77143f
Merge pull request #114082 from kidddddddddddddddddddddd/refactor_handleSchedulingFailure
...
pass status to handleSchedulingFailure
2022-12-12 22:05:34 -08:00
kidddddddddddddddddddddd
6ca62eb2cb
refactor
2022-12-13 11:36:12 +08:00
TommyStarK
94a29efe2f
scheduler/internal: Improving cache and heap test coverage
...
Signed-off-by: TommyStarK <thomasmilox@gmail.com>
2022-12-12 20:08:24 +01:00
Kubernetes Prow Robot
2e3055863d
Merge pull request #113456 from sanposhiho/use-totalscore-in-NodePluginScores
...
use TotalScore summarized in NodePluginScores
2022-12-12 09:01:45 -08:00
Kensei Nakada
9fd15f1fa3
use TotalScore summarized in NodePluginScores
2022-12-12 11:43:22 +00:00
Kubernetes Prow Robot
bc6afee049
Merge pull request #114361 from kerthcet/cleanup/emit-errors-more-precise
...
Tune the error messages in scheduler cache
2022-12-12 00:15:44 -08:00
Kubernetes Prow Robot
c80b03fee8
Merge pull request #113499 from kerthcet/cleanup/map-empty-judgement
...
Fix: resourceToWeightMap will never be nil here
2022-12-12 00:15:33 -08:00
Kubernetes Prow Robot
4f28854c09
Merge pull request #114223 from sathyanarays/improve_scheduler_test_coverage
...
Improving scheduler extender unit tests
2022-12-10 07:54:44 -08:00
Kubernetes Prow Robot
a800f1e0c0
Merge pull request #114216 from alculquicondor/avoid-serialization
...
Avoid serialization of maps when log level < 10
2022-12-10 07:54:24 -08:00
Kubernetes Prow Robot
1de943d9cf
Merge pull request #114149 from kidddddddddddddddddddddd/volume_zone
...
Implement PreFilter for VolumeZone plugin for performance
2022-12-10 06:04:48 -08:00
Kubernetes Prow Robot
eeaddd17c1
Merge pull request #114055 from aimuz/fix-80289
...
kubernetes components using leader election to leases
2022-12-10 06:04:10 -08:00
kerthcet
180b082c49
Make the error messages in scheduler cache more precise
...
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-12-08 15:41:43 +08:00
Sathyanarayanan Saravanamuthu
bf4f907bfa
Improving schedule extender test coverage
...
Signed-off-by: Sathyanarayanan Saravanamuthu <sathyanarays@vmware.com>
2022-12-05 12:10:10 +05:30
kidddddddddddddddddddddd
9e0a7c7ee7
add pre_filter for volume_zone
2022-12-03 02:11:04 +08:00
Aldo Culquicondor
4e1c3a5855
Dedup serialization of status
...
Change-Id: Iaba63ea31e948933e162b3148cda2588af0fdaa3
2022-11-30 13:05:07 -05:00
Aldo Culquicondor
b62541fe84
Avoid serialization of maps when log level < 10
...
Change-Id: If264c26ae599602d5b4919301f011c2095d706ee
2022-11-30 12:53:52 -05:00
Claudiu Belu
4dc7a260ec
unittests: Fixes unit tests for Windows (part 4)
...
Currently, there are some unit tests that are failing on Windows due to
various reasons:
- paths not properly joined (filepath.Join should be used).
- files not closed, which means that they cannot be removed / renamed.
- time.Now() is not as precise on Windows, which means that 2
consecutive calls may return the same timestamp.
2022-11-29 16:32:26 +00:00
aimuz
059acc2f5a
kubernetes components using leader election to leases
...
Signed-off-by: aimuz <mr.imuz@gmail.com>
2022-11-23 10:59:08 +08:00
Wei Huang
a731a44596
Fix an accuracy issue of scheduler_pending_pods
metric
2022-11-21 21:33:16 -08:00
Yibo Zhuang
380c7f248e
scheduler volumebinding: leverage PreFilterResult
...
This change will leverage the new PreFilterResult
to reduce down the list of eligible nodes for pod
using Bound Local PVs during PreFilter stage so
that only the node(s) which local PV node affinity
matches will be cosnidered in subsequent scheduling
stages.
Today, the NodeAffinity check is done during Filter
which means all nodes will be considered even though
there may be a large number of nodes that are not
eligible due to not matching the pod's bound local
PV(s)' node affinity requirement. Here we can
reduce down the node list in PreFilter to ensure that
during Filter we are only considering the reduced
list and thus can provide a more clear message to
users when node(s) are not available for scheduling
since the list only contains relevant nodes.
If error is encountered (e.g. PV cache read error) or
if node list reduction cannot be done (e.g. pod uses
no local PVs), then we will still proceed to consider
all nodes for the rest of scheduling stages.
Signed-off-by: Yibo Zhuang <yibzhuang@gmail.com>
2022-11-17 21:37:24 -08:00
Kubernetes Prow Robot
d1c0171aed
Merge pull request #111023 from pohly/dynamic-resource-allocation
...
dynamic resource allocation
2022-11-11 16:21:56 -08:00
Patrick Ohly
d2ff210c20
scheduler: add dynamic resource allocation plugin
...
The plugin handles the interaction with ResourceClaims that are referenced by a
Pod.
2022-11-11 21:58:03 +01:00
Jan Safranek
5b284a50b7
Revert "Remove references to openstack and cinder"
...
This reverts commit 9bbf01bae9
.
2022-11-10 18:25:30 +01:00
kerthcet
7b7da83a8a
Fix: resourceToWeightMap will never be nil
...
Use len() instead of telling whether it's nil
Add tests to guarantee that when resourceToWeightMap is nil, scheduler will not crash
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-11-10 14:07:02 +08:00
Kubernetes Prow Robot
c84e920a48
Merge pull request #113786 from sanposhiho/revert-prefilter-skip
...
Revert "feature(scheduler): won't run Filter if PreFilter returned a Skip status"
2022-11-09 10:08:13 -08:00
Kensei Nakada
f3868abfed
Revert "feature(scheduler): won't run Filter if PreFilter returned a Skip status"
...
This reverts commit 786be73b4b
.
2022-11-09 11:55:33 +00:00
Michal Wozniak
b3e9d8ef4c
Cleanup the default_preemption_test by indexing the potential victim pods
2022-11-09 10:26:08 +01:00
Michal Wozniak
c803892bd8
Enable the feature into beta
2022-11-09 09:02:40 +01:00
Wei Huang
0f66366aff
Fix an issue that pod may be added to backoffQ
2022-11-08 10:05:32 -08:00
Kubernetes Prow Robot
2b7b5245ea
Merge pull request #112637 from sanposhiho/pre-filter-skip
...
feature(scheduler): won't run Filter if PreFilter returned a Skip status
2022-11-08 06:16:37 -08:00
Kensei Nakada
786be73b4b
feature(scheduler): won't run Filter if PreFilter returned a Skip status
2022-11-07 23:47:48 +00:00