Commit Graph

3476 Commits

Author SHA1 Message Date
Jordan Liggitt
03d48b7683 Move CEL env initialization out of package init()
This ensures compatibility version and feature gates can be initialized
before cached CEL environments are created.
2024-07-19 15:06:48 -04:00
bells17
e1aa8197ed volumebinding: scheduler queueing hints - CSIStorageCapacity (#124961)
* volumebinding: scheduler queueing hints - CSIStorageCapacity

* Fixed points mentioned in the review

* Fixed points mentioned in the review

* Update pkg/scheduler/framework/plugins/volumebinding/volume_binding.go

Co-authored-by: Kensei Nakada <handbomusic@gmail.com>

* Update pkg/scheduler/framework/plugins/volumebinding/volume_binding_test.go

Co-authored-by: Kensei Nakada <handbomusic@gmail.com>

* Fixed points mentioned in the review

* volume_binding.go を更新

Co-authored-by: Kensei Nakada <handbomusic@gmail.com>

---------

Co-authored-by: Kensei Nakada <handbomusic@gmail.com>
2024-07-19 07:53:52 -07:00
Kubernetes Prow Robot
01eb9f4754 Merge pull request #125929 from sanposhiho/requeueing-metrics
add: implement event_handling_duration_seconds metric
2024-07-19 04:43:00 -07:00
Kensei Nakada
9ff3227b15 add: implement event_handling_duration_seconds metric 2024-07-18 18:16:57 +09:00
Kubernetes Prow Robot
24fbb13eaf Merge pull request #126113 from googs1025/enqueueExtensions_refactor
scheduler: Add ctx param and error return to EnqueueExtensions.EventsToRegister()
2024-07-18 00:53:25 -07:00
googs1025
a3978e8315 scheduler: Add ctx param and error return to EnqueueExtensions.EventsToRegister() 2024-07-18 12:22:17 +08:00
Kubernetes Prow Robot
5d40866fae Merge pull request #125994 from carlory/fix-job-api
clean up codes after PodDisruptionConditions was promoted to GA
2024-07-17 14:37:09 -07:00
Kubernetes Prow Robot
d879103c28 Merge pull request #125820 from macsko/add_separate_lock_for_pod_nominator_scheduling_queue
Add a separate lock for pod nominator in scheduling queue
2024-07-17 12:06:10 -07:00
Maciej Skoczeń
5def93b10a Add a separate lock for pod nominator in scheduling queue 2024-07-17 07:58:59 +00:00
bells17
4c3c4128af volumebinding: scheduler queueing hints - StorageClass 2024-07-17 15:03:17 +09:00
bells17
aceb4468b6 volumebinding: scheduler queueing hints - PersistentVolumeClaim 2024-07-16 12:48:50 +09:00
Kubernetes Prow Robot
ae1caa40a2 Merge pull request #125961 from Jerry-yz/master
Chore: fix scheduler code comment typos
2024-07-15 19:27:30 -07:00
Kubernetes Prow Robot
c7dab2a507 Merge pull request #125280 from HirazawaUi/add-pvc-events-queueinghintfn
Add QueueingHintFn for pvc events in VolumeRestriction plugin
2024-07-12 11:47:30 -07:00
HirazawaUi
cd13be8654 Add QueueingHintFn for pvc events in VolumeRestriction plugin 2024-07-13 00:25:39 +08:00
Kubernetes Prow Robot
bae59799e9 Merge pull request #126050 from sanposhiho/refactor-move
cleanup: refactor the way extracting Node smaller events
2024-07-12 08:13:12 -07:00
Kubernetes Prow Robot
31062790a1 Merge pull request #125855 from googs1025/refactor_scheduler_ut
chore: call close framework when finishing
2024-07-12 05:14:35 -07:00
Hiroyuki Moriya
52a622ad6d volumezone: scheduler queueing hints: pv (#125001)
* volumezone: scheduler queueing hints

* add_comment
2024-07-12 05:14:27 -07:00
Kensei Nakada
fe96bfa348 cleanup: refactor the way extracting Node smaller events 2024-07-12 20:45:02 +09:00
Kensei Nakada
9772ff2848 cleanup: move NodeSchedulingPropertiesChange 2024-07-12 19:21:48 +09:00
googs1025
d4627f16a5 chore: call close framework when finishing
Signed-off-by: googs1025 <googs1025@gmail.com>
2024-07-12 18:11:04 +08:00
Kubernetes Prow Robot
2d4514e169 Merge pull request #125802 from mmorel-35/testifylint/len+empty
fix: enable empty and len rules from testifylint on pkg and staging package
2024-07-11 23:12:06 -07:00
Kubernetes Prow Robot
7f23ebedc4 Merge pull request #124996 from Gekko0114/volumezone_hint_storageclass
volumezone: scheduler queueing hints: storageclass
2024-07-11 21:25:49 -07:00
Kubernetes Prow Robot
e446c59bd0 Merge pull request #125692 from macsko/lock_utilization_improvements_in_scheduling_queue
Improve lock utilization in scheduling queue to increase scheduling throughput while many gated pods
2024-07-11 12:15:58 -07:00
moriya
ac15717653 volumezone: scheduler queueing hints 2024-07-11 14:24:49 +00:00
Kubernetes Prow Robot
5b49afa66b Merge pull request #125000 from Gekko0114/vz_pvc
volumezone: scheduler queueing hints: pvc
2024-07-11 06:29:09 -07:00
carlory
850bc09e9b clean up codes after PodDisruptionConditions was promoted to GA and locked to default 2024-07-11 10:40:21 +08:00
Kubernetes Prow Robot
90615231a6 Merge pull request #125097 from YamasouA/ft/queuehit-csinode
volumebinding: scheduler queueing hints - CSINode
2024-07-09 17:53:05 -07:00
Kubernetes Prow Robot
4a214f6ad9 Merge pull request #125461 from mimowo/pod-disruption-conditions-ga
Graduate PodDisruptionConditions to stable
2024-07-09 11:08:13 -07:00
Maciej Skoczeń
31e89b1f4d Add activeQLock to scheduling queue to improve Pop() throughput 2024-07-09 11:37:19 +00:00
Kubernetes Prow Robot
e48d42d81d Merge pull request #122627 from sanposhiho/remove-AssignedPodUpdated
take PodTopologySpread into consideration when requeueing Pods based on Pod related events
2024-07-08 16:21:11 -07:00
Jerry-yz
bd90e99b2a fix: schedule code comment typo
Signed-off-by: Jerry-yz <yz386071268@gmail.com>
2024-07-09 00:04:18 +08:00
Matthieu MOREL
f014b754fb fix: enable empty and len rules from testifylint on pkg package
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

Co-authored-by: Patrick Ohly <patrick.ohly@intel.com>
2024-07-06 23:15:43 +00:00
Kensei Nakada
41f7607c04 cleanup: remove non-necessary ifs 2024-07-06 13:19:24 +00:00
Kensei Nakada
e16aa35865 address review suggestions 2024-07-06 13:17:17 +00:00
Kensei Nakada
533140f065 take PodTopologySpread into consideration when requeueing Pods based on Pod related events 2024-07-06 13:17:14 +00:00
Kubernetes Prow Robot
b6899c5e08 Merge pull request #122251 from olderTaoist/unschedulable-plugin
register unschedulable plugin  for those plugins that PreFilter's PreFilterResult filter out some nodes
2024-07-05 05:44:26 -07:00
olderTaoist
b478621596 register unscheduable plugin when prefileter with NodeNames 2024-07-02 13:02:45 +08:00
Maciej Skoczeń
c5d376dc20 Fix typos and error messages in scheduling queue tests 2024-07-01 11:37:53 +00:00
Kubernetes Prow Robot
a326cfa2b5 Merge pull request #125691 from kerthcet/fix/multi-profil
fix flaky integration test about multi profiles
2024-06-30 23:09:06 -07:00
kerthcet
20a70e2301 Fix flaky test in maxSurge integration tests
Signed-off-by: kerthcet <kerthcet@gmail.com>
2024-07-01 10:45:18 +08:00
Kubernetes Prow Robot
ac9aec9f9b Merge pull request #125116 from pohly/dra-one-of-source
DRA: remove "source" indirection from v1 Pod API
2024-06-28 12:46:45 -07:00
Michal Wozniak
780191bea6 review remarks for graduating PodDisruptionConditions 2024-06-28 17:32:27 +02:00
Michal Wozniak
bf0c9885a4 Graduate PodDisruptionConditions to stable 2024-06-28 16:36:51 +02:00
Kubernetes Prow Robot
eb66365bc4 Merge pull request #124931 from pohly/dra-scheduler-prebind-fix
DRA: fix scheduler/resource claim controller race
2024-06-28 05:57:24 -07:00
kerthcet
a7ef06da87 Set permit timeout to 10s in test
Signed-off-by: kerthcet <kerthcet@gmail.com>
2024-06-28 14:02:36 +08:00
Patrick Ohly
bde9b64cdf DRA: remove "source" indirection from v1 Pod API
This makes the API nicer:

    resourceClaims:
    - name: with-template
      resourceClaimTemplateName: test-inline-claim-template
    - name: with-claim
      resourceClaimName: test-shared-claim

Previously, this was:

    resourceClaims:
    - name: with-template
      source:
        resourceClaimTemplateName: test-inline-claim-template
    - name: with-claim
      source:
        resourceClaimName: test-shared-claim

A more long-term benefit is that other, future alternatives
might not make sense under the "source" umbrella.

This is a breaking change. It's justified because DRA is still
alpha and will have several other API breaks in 1.31.
2024-06-27 17:53:24 +02:00
Patrick Ohly
4bddebc48e DRA: fix scheduler/resource claim controller race with retry
The JSON patch approach works, but it is complex. A retry loop is easier to
understand (detect conflict, get new claim, try again). There is one additional
API call (the get), but in practice this scenario is unlikely.
2024-06-27 15:03:56 +02:00
Patrick Ohly
ecbafb8de5 DRA: fix scheduler/resource claim controller race
There was a race caused by having to update claim finalizer and status in two
different operations:
- Resource claim controller removes allocation, does not yet
  get to remove the finalizer.
- Scheduler prepares an allocation, without adding the finalizer
  because it's there.
- Controller removes finalizer.
- Scheduler adds allocation.

This is an invalid state. Automatic checking found this during the execution of
the "with translated parameters on single node.*supports sharing a claim
sequentially" E2E test, but only when run stand-alone. When running in
parallel (as in the CI), the bad outcome of the race did not occur.

The fix is to check that the finalizer is still set when adding the
allocation. The apiserver doesn't check that because it doesn't know which
finalizer goes with the allocation result. It could check for "some finalizer",
but that is not guaranteed to be correct (could be some unrelated one).

Checking the finalizer can only be done with a JSON patch. Despite the
complications, having the ability to add multiple pods concurrently to
ReservedFor seems worth it (avoids expensive rescheduling or a local retry
loop).

The resource claim controller doesn't need this, it can do a normal update
which implicitly checks ResourceVersion.
2024-06-27 15:03:06 +02:00
googs1025
8ce056df84 add DefaultSelector method ut
Signed-off-by: googs1025 <googs1025@gmail.com>
2024-06-27 11:23:48 +08:00
Kubernetes Prow Robot
084d6c4968 Merge pull request #125699 from pohly/scheduler-framework-logging
scheduler: fix klog.KObjSlice when applied to []*NodeInfo
2024-06-26 01:50:23 -07:00