Commit Graph

2903 Commits

Author SHA1 Message Date
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
Wei Huang
0b27f25252 PreEnqueue implementation
- Add PreEnqueuePlugin to Scheduler Framework
- Implement PreEnqueuePlugin in scheduler queue
- Implementation of SchedulingGates plugin
- Metrics
2022-11-07 14:02:58 -08:00
Wei Huang
2de75d92bf API, Codegen, UT for PreEnqueue extension point 2022-11-07 14:02:57 -08:00
Kubernetes Prow Robot
f33209a6ed Merge pull request #111545 from jlsong01/rewrite_signature_of_StartEventWatcher
rewrite signature of function StartEventWatcher
2022-11-07 08:06:18 -08:00
Kubernetes Prow Robot
fce1fbec29 Merge pull request #113528 from iyear/remove-useless-set
scheduler/framework: remove useless SetFailedPlugin
2022-11-07 06:52:16 -08:00
Kubernetes Prow Robot
1d2e804287 Merge pull request #113505 from Abirdcfly/fixcomment
chore(scheduler): cleanup some minor issues in testing
2022-11-02 21:40:19 -07:00
Abirdcfly
bf8570029e chore(scheduler): cleanup some minor issues in testing 2022-11-03 09:07:28 +08:00
Kubernetes Prow Robot
447706238f Merge pull request #113419 from chrishenzie/rwop-integration-test
scheduler: integration test for ReadWriteOncePod alpha
2022-11-02 08:35:38 -07:00
iyear
a62f0c3b9f scheduler/framework: remove useless SetFailedPlugin
Signed-off-by: iyear <ljyngup@gmail.com>
2022-11-02 10:42:52 +08:00
Chris Henzie
2d0afbc054 scheduler: integration test for ReadWriteOncePod alpha
Tests scheduler enforcement of the ReadWriteOncePod PVC access mode.

- Creates a pod using a PVC with ReadWriteOncePod
- Creates a second pod using the same PVC
- Observes the second pod fails to schedule because PVC is in-use
- Deletes the first pod
- Observes the second pod successfully schedules
2022-11-01 15:08:01 -07:00
Kubernetes Prow Robot
4c657e5014 Merge pull request #110403 from claudiubelu/unittests-3
unittests: Fixes unit tests for Windows (part 3)
2022-10-31 15:52:44 -07:00
Michal Wozniak
fea883687f SSA to add pod failure conditions - ready for review 2022-10-27 18:21:33 +02:00
Yuan Chen
18f5b5c8e0 Replace deprecated pointer conversions in scheduler 2022-10-21 10:43:24 -07:00
Claudiu Belu
9f95b7b18c unittests: Fixes unit tests for Windows (part 3)
Currently, there are some unit tests that are failing on Windows due to
various reasons:

- paths not properly joined (filepath.Join should be used).
- Proxy Mode IPVS not supported on Windows.
- DeadlineExceeded can occur when trying to read data from an UDP
  socket. This can be used to detect whether the port was closed or not.
- In Windows, with long file name support enabled, file names can have
  up to 32,767 characters. In this case, the error
  windows.ERROR_FILENAME_EXCED_RANGE will be encountered instead.
- 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.
- path.Base() will return the same path. filepath.Base() should be used
  instead.
- path.Join() will always join the paths with a / instead of the OS
  specific separator. filepath.Join() should be used instead.
2022-10-21 19:25:48 +03:00
Kubernetes Prow Robot
18b81513b6 Merge pull request #112025 from kerthcet/refactor/handle-scheduling-failure
Refactor schedulingCycle and bindingCycle in scheduler
2022-10-21 08:31:51 -07:00
kerthcet
f7f857814f Refactor schedulingCycle and bindingCycle in scheduler
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-10-21 13:53:18 +08:00
Kubernetes Prow Robot
8305358630 Merge pull request #108494 from sanposhiho/RunScorePlugins-return-type
change framework.RunScorePlugins to return slice organized by node
2022-10-20 08:57:02 -07:00
sanposhiho
cbf1ea5e68 change framework.RunScorePlugins to return slice organized by node 2022-10-20 01:04:38 +00:00
Kubernetes Prow Robot
453039f47b Merge pull request #113153 from yuanchen8911/error
Replace error string with ErrorList in scheduler validation testing
2022-10-19 16:34:56 -07:00
Yuan Chen
dd1b4fa407 Replace error string with ErrorList in scheduler valiation test
Remove expected status

Remove unnecessary code

Revert changes to BindVerb
2022-10-19 12:14:57 -07:00
Kubernetes Prow Robot
ca17d9ba2b Merge pull request #113127 from tangwz/parallel_preemption
Do pod preemption in parallel.
2022-10-19 07:23:01 -07:00
tangwz
480ae2a7c1 Do pod preemption in parallel. 2022-10-19 09:28:53 +08:00