Commit Graph
501 Commits
Author SHA1 Message Date
yanggang 71fb4a2117 Do some code cleans.
Signed-off-by: yanggang <gang.yang@daocloud.io>
2023-05-01 23:09:33 +08:00
Kubernetes Prow Robot c7a025237e Merge pull request #1127 from ingvagabund/update-documents-evict-ep
Drop remaining mentions of evict extension point
2023-04-28 02:18:16 -07:00
Jan Chaloupka 4565184481 Drop remaining mentions of evict extension point 2023-04-26 09:59:49 +02:00
Mike Dame d9316d1872 Add json tags to internal fields and basic config test 2023-04-24 12:54:43 +00:00
Jan Chaloupka 76e7e4f57b Drop Evict extension point
The Evict extension point is not currently in use.
All DefaultEvictor plugin functionality is exposed through Filter and
PreEvictionFilter extension points instead.
Thus, no need to limit the number of evictors enabled.
2023-04-20 17:52:40 +02:00
yanggang e96c570ff4 Fix typo log message for cachedClient
Signed-off-by: yanggang <gang.yang@daocloud.io>
2023-04-07 09:31:47 +08:00
yanggang aef6c05032 Delete "io/ioutil" package.
Signed-off-by: yanggang <gang.yang@daocloud.io>
2023-04-06 11:29:22 +08:00
Kubernetes Prow Robot ce0d31fd5f Merge pull request #1097 from ingvagabund/list-of-extension-points
Populate extension points automatically for deschedule, balance, filter and preEvictionFilter
2023-04-03 08:17:51 -07:00
Jan Chaloupka 3510aba01d Detect individual extension points from plugin types
- Populate extension points automatically from plugin types
- Make a list of enabled extension points based on a profile
  configuration
- Populate filter and pre-eviction filter handles from their
  corresponding extension points
2023-04-03 17:04:31 +02:00
Kubernetes Prow Robot 347f89533c Merge pull request #1105 from yanggangtony/fix-notes-for-podutil
fix go doc for method IsPodWithPVC
2023-04-03 06:19:51 -07:00
yanggang 4955ed5353 fix IsPodWithPVC func notes.
Signed-off-by: yanggang <gang.yang@daocloud.io>
2023-04-02 08:49:52 +08:00
yanggang 90905d2c21 fix if condition for the right value of EvictLocalStoragePods
Signed-off-by: yanggang <gang.yang@daocloud.io>
2023-04-02 08:13:01 +08:00
Jan Chaloupka 3897ff069f Extend PluginRegistry with plugin type 2023-03-30 10:55:59 +02:00
Amir Alavi d5b7c362dc fix gofumpt violation 2023-03-25 11:08:07 -04:00
Jan Chaloupka 757661110a Move framework types under framework/types 2023-03-23 19:00:55 +01:00
Jan Chaloupka bcc6c8eb2a Descheduling profile with PoC fake plugin (#1093)
* Descheduling profile

* Fake plugin + profile unit testing

* Rename Profile config type into DeschedulerProfile

To avoid resamblance with profileImpl

* First run deschedule, then balance extension points
2023-03-23 09:14:33 -07:00
Kubernetes Prow Robot a86345ec97 Merge pull request #1063 from JaneLiuL/master
Add k8s compatibility warnings to logs
2023-03-13 18:05:12 -07:00
JaneLiuL 7068fc6082 Add k8s compatibility warnings to logs 2023-03-13 19:30:40 +08:00
Jannik Straube 176d3ac024 Fix typo in nodeutilization types 2023-03-06 10:31:32 +01:00
Kubernetes Prow Robot ab18575b15 Merge pull request #1057 from xiaoanyunfei/bugfix/podnum
check pod number
2023-03-02 05:40:56 -08:00
sunxiaofei b9ddbf12ed fitsRequest check pod num 2023-02-16 20:20:38 +08:00
lucming 02b1e8b8b9 remove some logic useless 2023-02-16 17:25:00 +08:00
Harsha Narayana 93a014ef5e metrics: enable loop duration and strategy duration metrics (#1041)
* metrics: enable loop duration and strategy duration metrics

* metrics: enable loop duration and strategy duration metrics
2023-02-03 20:08:28 -08:00
gustavo.carneiro 2470252841 Copyright date from 2022 to 2023
Signed-off-by: Gustavo Carneiro <gustavo.mfc@icloud.com>
2023-01-30 13:05:58 -03:00
gustavo.carneiro 82cbc15380 Fix v1alpha1 conversion to use universal decoder 2023-01-30 12:53:18 -03:00
Kubernetes Prow Robot 49f60bfc43 Merge pull request #1034 from a7i/client-connection
support client connection configuration to provide QPS and burst
2023-01-18 11:26:34 -08:00
Lucas Severo Alves 137f3b20dc add v1alpha2 registry based conversion (#1006)
* add v1alpha2 registry based conversion

* test defaults, set our 1st explicit default

* fix typos and dates

* move pluginregistry to its own dir

* remove unused v1alpha2.Namespace type

* move migration code folders, remove switch

* validate internalPolicy a single time

* remove structured logs

* simplify return

* check for nil methods

* properly check before adding default evictor

* add TODO comment

* bump copyright year
2023-01-17 08:10:34 -08:00
Amir Alavi 46e43a07bf support client connection configuration to provide QPS and burst 2023-01-05 22:00:33 -05:00
Amir Alavi 923921a1aa update license year by running make gen
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2023-01-04 13:09:50 -05:00
xin.li e73634f04d cleanup: remove ioutil for new go version
Signed-off-by: xin.li <xin.li@daocloud.io>
2022-12-26 10:52:18 +08:00
Lucas Severo Alves da8b145980 use plugin registry and prepare for conversion (#1003)
* use plugin registry and prepare for conersion

* Register plugins explicitly to a registry

* check interface impl instead of struc var

* setup plugins at top level

* treat plugin type combinations

* pass registry as arg of V1alpha1ToInternal

* move registry yet another level up

* check interface type separately
2022-12-01 06:05:54 -08:00
Jan ChaloupkaandLucas Severo Alves 6e953b2ff3 Separate migration of strategy configuration from the constructing and running the plugins (#999)
* Remove log level from Errors

Every error printed via Errors is expected to be important and always
printable.

* Invoke first Deschedule and then Balance extension points (breaking change)

* Separate plugin arg conversion from pluginsMap

* Seperate profile population from plugin execution

* Convert strategy params into profiles outside the main descheduling loop

Strategy params are static and do not change in time.

* Bump the internal DeschedulerPolicy to v1alpha2

Drop conversion from v1alpha1 to internal

* add tests to v1alpha1 to internal conversion

* add tests to strategyParamsToPluginArgs params wiring

* in v1alpha1 evictableNamespaces are still Namespaces

* add test passing in all params

Co-authored-by: Lucas Severo Alves <lseveroa@redhat.com>
2022-11-14 08:48:41 -08:00
Furkan 99868a41de run: gofumpt -w -extra .
Enable gofumpt in golangci

Signed-off-by: Furkan <furkan.turkal@trendyol.com>
2022-11-07 09:11:27 +03:00
FurkanandEmin fa1f7969d1 add warning when enabling both dryRun and leaderElection
Signed-off-by: Furkan <furkan.turkal@trendyol.com>
Co-authored-by: Emin <emin.aktas@trendyol.com>
2022-11-02 19:50:22 +03:00
Lucas Severo Alves 398ffa7ee0 add namespace filter to nodeutilization 2022-10-30 00:52:30 +02:00
Kubernetes Prow Robot da3ebb7293 Merge pull request #961 from vholer/issue-960
includeSoftConstraints not being respected for TopologySpreadConstraint
2022-09-27 03:57:50 -07:00
Kubernetes Prow Robot 9e2c323aa9 Merge pull request #954 from spike-liu/master
Plugin arguments defaulting + moving plugin arguments to each corresponding plugin #925
2022-09-27 03:21:51 -07:00
Vlastimil Holer 7349b398e5 includeSoftConstraints not being respected for TopologySpreadConstraint
Issue #960

Signed-off-by: Vlastimil Holer <vh@fortrabbit.com>
2022-09-26 13:44:34 +02:00
Kubernetes Prow Robot 1d79f8761f Merge pull request #956 from xiaoanyunfei/bugfix/informerfactory
fix sharedInformerFactory register
2022-09-26 04:39:44 -07:00
vlc刘诚 ac0261fafb fix pull-descheduler-verify-master build error 2022-09-24 09:29:42 +08:00
vlc刘诚 bfb688e016 RemovePodsViolatingTopologySpreadConstraintArgs defaulting 2022-09-23 11:32:38 +08:00
vlc刘诚 0d8106a32d RemovePodsViolatingNodeTaintsArgs defaulting 2022-09-23 11:32:38 +08:00
vlc刘诚 7b1ddf1edb RemovePodsViolatingNodeAffinityArgs defaulting 2022-09-23 11:32:38 +08:00
vlc刘诚 28ed86f079 RemovePodsViolatingInterPodAntiAffinityArgs defaulting 2022-09-23 11:32:38 +08:00
vlc刘诚 fa874844a1 RemovePodsHavingTooManyRestartsArgs defaulting 2022-09-23 11:32:38 +08:00
vlc刘诚 63396d4afc RemoveFailedPodsArgs defaulting 2022-09-23 11:32:38 +08:00
vlc刘诚 acc267b0b3 RemoveDuplicatesArgs defaulting 2022-09-23 11:32:38 +08:00
vlc刘诚 1d3e130366 PodLifeTimeArgs defaulting 2022-09-23 11:32:38 +08:00
vlc刘诚 35aff52ec4 NodeUtilizationArgs defaulting 2022-09-23 11:32:38 +08:00
vlc刘诚 a665a7b4e6 DefaultEvictorArgs defaulting 2022-09-23 11:32:38 +08:00