Commit Graph

195 Commits

Author SHA1 Message Date
Maciek Pytel 3e42b26a22 Per NodeGroup config for scale-down options
This is the implementation of
https://github.com/kubernetes/autoscaler/issues/3583#issuecomment-743215343.
2021-01-25 11:00:17 +01:00
Kubernetes Prow Robot 58be2b7505
Merge pull request #3649 from ClearTax/cordon-node-issue-3648
Adding functionality to cordon the node before destroying it.
2021-01-14 04:19:04 -08:00
atul 7670d7b6af Adding functionality to cordon the node before destroying it. This helps load balancer to remove the node from healthy hosts (ALB does have this support).
This won't fix the issue of 502 completely as there is some time node has to live even after cordoning as to serve In-Flight request but load balancer can be configured to remove Cordon nodes from healthy host list.
This feature is enabled by cordon-node-before-terminating flag with default value as false to retain existing behavior.
2021-01-14 17:21:37 +05:30
Bartłomiej Wróblewski 0fb897b839 Update imports after scheduler scheduler/framework/v1alpha1 removal 2020-11-30 10:48:52 +00:00
Jakub Tużnik bf18d57871 Remove ScaleDownNodeDeleted status since we no longer delete nodes synchronously 2020-10-01 11:12:45 +02:00
Jakub Tużnik 3958c6645d Add an annotation identifying upcoming nodes 2020-07-24 15:20:34 +02:00
Maciek Pytel 655b4081f4 Migrate to klog v2 2020-06-05 17:22:26 +02:00
Jakub Tużnik 73a5cdf928 Address recent breaking changes in scheduler
The following things changed in scheduler and needed to be fixed:
* NodeInfo was moved to schedulerframework
* Some fields on NodeInfo are now exposed directly instead of via getters
* NodeInfo.Pods is now a list of *schedulerframework.PodInfo, not *apiv1.Pod
* SharedLister and NodeInfoLister were moved to schedulerframework
* PodLister was removed
2020-04-24 17:54:47 +02:00
Jakub Tużnik 8f1efc9866 Add NodeInfoProcessor for proccesing nodeInfosForNodeGroups 2020-03-20 15:19:18 +01:00
Łukasz Osipiuk a6023265e7 Add clarifying comment regarding podDestination and scaleDownCandidates variables 2020-03-10 15:18:52 +01:00
Aleksandra Malinowska ce18f7119c change order of arguments for TryToScaleDown 2020-03-10 11:36:57 +01:00
Aleksandra Malinowska 0b7c45e88a stop passing scheduled pods around 2020-03-03 16:23:49 +01:00
Aleksandra Malinowska 572bad61ce use nodes from snapshot in scale down 2020-03-03 16:23:49 +01:00
Aleksandra Malinowska 9c6a0f9aab Filter out expendable pods before initializing snapshot 2020-03-03 12:05:58 +01:00
Kubernetes Prow Robot dbbd4572af
Merge pull request #2861 from aleksandra-malinowska/delta-snapshot-15
Cleanup todo
2020-03-02 05:52:44 -08:00
Aleksandra Malinowska 0c13ce7248 add pods from upcoming nodes to snapshot 2020-02-27 14:12:31 +01:00
Aleksandra Malinowska 7ac3d27cf7 cleanup todo - no op 2020-02-27 11:13:37 +01:00
Julien Balestra 628128f65e cluster-autoscaler/taints: refactor current taint logics in the same package
Signed-off-by: Julien Balestra <julien.balestra@datadoghq.com>
2020-02-25 13:57:23 +01:00
Julien Balestra af270b05f6 cluster-autoscaler/taints: ignore taints on existing nodes
Signed-off-by: Julien Balestra <julien.balestra@datadoghq.com>
2020-02-25 13:55:17 +01:00
Kubernetes Prow Robot bbeead26ac
Merge pull request #2853 from aleksandra-malinowska/fix-ifs
Cleanup ifs in static autoscaler
2020-02-21 06:23:34 -08:00
Aleksandra Malinowska c4d376b9c2 Cleanup ifs in static autoscaler 2020-02-21 15:03:01 +01:00
Aleksandra Malinowska 468061dcfc move initializing snapshot after empty cluster check and API calls 2020-02-21 14:50:27 +01:00
Kubernetes Prow Robot af1dd84305
Merge pull request #2799 from aleksandra-malinowska/delta-snapshot-4
Add delta snapshot implementation
2020-02-14 09:20:17 -08:00
Jakub Tużnik 7a188ab50d Provide ScaleDownStatusProcessor with info about unremovable nodes 2020-02-11 15:27:33 +01:00
Aleksandra Malinowska 9c018ddb7a Cleanup cluster snapshot interface 2020-02-05 13:33:03 +01:00
Łukasz Osipiuk 4b30a6f499 Rename propagateClusterSnapshot to initializeClusterSnapshot 2020-02-04 20:52:08 +01:00
Łukasz Osipiuk 6ed2636f10 Drop PredicateChecker.SnapshotClusterState 2020-02-04 20:51:52 +01:00
Łukasz Osipiuk 98efd05b4b Do not add Pods pointing to inexistent nodes to snapshot 2020-02-04 20:51:49 +01:00
Łukasz Osipiuk d7770e3044 Use ClusterSnapshot in ScaleDown 2020-02-04 20:51:48 +01:00
Łukasz Osipiuk 9bb2fd15d7 Add TODO 2020-02-04 20:51:42 +01:00
Łukasz Osipiuk 69800ab176 Simulate scheduling of pods waiting for preemption in ClusterSnapshot 2020-02-04 20:51:37 +01:00
Łukasz Osipiuk d9891ae3ad Simplify PodListProcessor interface 2020-02-04 20:51:35 +01:00
Łukasz Osipiuk 7e62105cb9 Add upcoming nodes to ClusterSnapshot 2020-02-04 20:51:31 +01:00
Łukasz Osipiuk 83d1c4ff8a Add GetAllPods and GetAllNodes to ClusterSnapshot 2020-02-04 20:51:30 +01:00
Łukasz Osipiuk fa2c6e4d9e Propagate cluster state to ClusterSnapshot 2020-02-04 20:51:27 +01:00
Łukasz Osipiuk 036103c553 Add ClusterSnapshot to AutoscalingContext 2020-02-04 20:51:26 +01:00
Łukasz Osipiuk 373c558303 Extract PredicateChecker interface 2020-02-04 20:51:18 +01:00
Łukasz Osipiuk b01f2fca8f Drop ConfigurePredicateCheckerForLoop 2020-02-04 20:51:14 +01:00
dasydong 68433abb7c Remove duplicate comments 2019-12-28 01:06:22 +08:00
Kubernetes Prow Robot f6ed9c114a
Merge pull request #2588 from losipiuk/lo/snapshot
Snapshot cluster state for scheduler every loop
2019-11-28 05:25:03 -08:00
Łukasz Osipiuk b67854e800 Snapshot cluster state for scheduler every loop
Change-Id: If9d162b83ccc914fe1b02e4689bfe1f4b264407f
2019-11-28 14:02:08 +01:00
Łukasz Osipiuk 17a7bc5164 Ignore NominatedNodeName on Pod if node is gone
Change-Id: I4a119f46e55ca2223f9f0fdd3e75ce3f279e293b
2019-11-27 20:26:00 +01:00
Vivek Bagade 910e75365c remove temporary nodes logic 2019-11-12 11:58:29 +01:00
Jarvis-Zhou 7c9d6e3518 Do not assign return values to variables when not needed 2019-10-25 19:28:00 +08:00
Łukasz Osipiuk 7f083d2393 Move core/utils.go to separate package and split into multiple files 2019-10-22 14:23:40 +02:00
Łukasz Osipiuk 288d4107b2 Rename GetCreatedNodesWithOutOfResourcesErrors to GetCreatedNodesWithErrors 2019-10-14 10:56:56 +02:00
Thomas Hartland 474eef6d47 Invalidate node instances cache after deleting unregistered nodes 2019-09-30 14:29:02 +02:00
Thomas Hartland 7c17d52ec8 Invalidate node instances cache after deleting failed nodes 2019-09-30 13:56:33 +02:00
Kubernetes Prow Robot 791f0d8355
Merge pull request #2281 from DataDog/JulienBalestra/mig-block
cluster-autoscaler: blocked if an instance is detached from MIG
2019-09-11 05:03:22 -07:00
Julien Balestra 3441f616e1 cluster-autoscaler/skip-node: unblock cluster autoscaler when having a single nodegroup for node error
Signed-off-by: Julien Balestra <julien.balestra@datadoghq.com>
2019-09-11 13:40:23 +02:00