Skip to content

Releases: practo/k8s-worker-pod-autoscaler

v1.6.0

21 Feb 09:18
Compare
Choose a tag to compare

Changelog

  • #145 introduces a cooldown. Scale down delay of 10mins(default, configurable) after last scale activity. This prevents repeated scale down for workers whose WPA status are updated very frequently. This will make the scaling down smooth and prevent spiky scales ups and downs. Fixes #143. Thanks @michael-careplanner.

  • #142 Updates CRD to use v1 for k8s 1.22+ support.
  • #139 Fixes #53 slows down WPA for q's that does not exist.

Images

Images are available in Dockerhub and AWS public ECR:

practodev/workerpodautoscaler:v1.6.0
practodev/workerpodautoscaler:v1.6
practodev/workerpodautoscaler:v1
public.ecr.aws/practo/workerpodautoscaler:v1.6.0
public.ecr.aws/practo/workerpodautoscaler:v1.6
public.ecr.aws/practo/workerpodautoscaler:v1

v1.5.0

22 Sep 11:15
Compare
Choose a tag to compare

Changelog

  • #137 Fixes #136. WorkerPodAutoscaler pod on restarts was scaling workers to minReplicas. This was happening because it was taking scaling decisions based on uninitialized data. This was fixed, and now the control loop does not take scaling decisions if the data is not initliazed. Thanks @aleclerc-sonrai
  • #138 Upgrades Golang to 1.17.1, updates kubernetes to 1.21.4 and also other dependencies.

Images are available in Dockerhub and AWS public ECR:

Images

practodev/workerpodautoscaler:v1.5.0
practodev/workerpodautoscaler:v1.5
practodev/workerpodautoscaler:v1
public.ecr.aws/practo/workerpodautoscaler:v1.5.0
public.ecr.aws/practo/workerpodautoscaler:v1.5
public.ecr.aws/practo/workerpodautoscaler:v1

v1.4.1

15 Jun 06:25
da47e88
Compare
Choose a tag to compare

#134 Delete and recreate of WPA object of the same name was not working. Gets fixed in in #135 - @KangBK0120

v1.4.0

07 Jun 10:46
507157c
Compare
Choose a tag to compare

Changelog

Changes

  • #126 Kubernetes 1.20 support and Golang upgraded to 1.16.4
  • WPA images are released to Public ECR from this release as well. Dockerhub images are still the default.
practodev/workerpoduatoscaler:v1
practodev/workerpoduatoscaler:v1.4
practodev/workerpoduatoscaler:v1.4.0
public.ecr.aws/practo/workerpodautoscaler:v1
public.ecr.aws/practo/workerpodautoscaler:v1.4
public.ecr.aws/practo/workerpodautoscaler:v1.4.0

v1.3.0

21 Dec 10:38
2e2e547
Compare
Choose a tag to compare

Changelog

Changes

v1.2.0

22 Nov 01:45
029a435
Compare
Choose a tag to compare

Changelog

Changes

  • #108 Add omitempty to optional spec types. @matkam
  • #109 Verbosity level changes in the logging across the WPA code following the k8s standard.
  • #112 Use sync map for storing caches in SQS. Fixed #110
  • #114 Vendor updates
  • #115 #118 Golang was updated. Current golang is: 1.15.3
  • #120 Adds support for namespace scope in WPA. --namespace. Fixed #59 completely now. @nqkdev
  • #119 Prevent crash due to connection failures in both SQS and Beanstalk.
  • #123 Release changes for 1.2.0

v1.1.0

21 Jul 14:50
b05d967
Compare
Choose a tag to compare

Changelog

Changes

Significant changes that went out in v1.0.0 before v1.1.0

secondsToProcessOneJob
maxDisruption

v1.0.0

01 Jul 15:22
c9ef714
Compare
Choose a tag to compare

Changelog

Significant changes that went out after beta

  • #69 Beanstalk Support (includes #57). @sushant-115
  • #84 #59 #68 #56 CRD creation moves out from code to YAML, version v1 added, CRD openAPIV3 validation added.
  • #80 Partial scale down was not happening in one scenario. Fixed in #87.
  • #73 Scale up logic does not work well for long-running tasks. Fixed in #86.

Significant changes that went out in beta

Following WPA specs were added making scaling reliable in v1.0.0-beta release.

secondsToProcessOneJob
maxDisruption

Changes

  • #84 CRD and its validation added.
  • #72 Error instead of fatal, and log infor of min and maxDisruptable
  • #78 Add Verbosity level
  • #77 #79 #81 #83 Prometheus metrics for the WPA logs using klog and promlog
wpa_log_messages_total{severity="ERROR"} 0
wpa_log_messages_total{severity="WARNING"} 0
  • #85 Publish major, major-minor tags along with complete semver tags. @ryantate13

v1.0.0-beta

16 Apr 15:03
1cf1e7b
Compare
Choose a tag to compare
v1.0.0-beta Pre-release
Pre-release

Changelog

  • #62 #64 #63 Improve scaling calculation, instruments WPA, fixes WPA latency.
secondsToProcessOneJob
maxDisruption
wpa_controller_loop_count_success{workerpodautoscaler="priority-notification-10d4e"} 11
wpa_controller_loop_duration_seconds{workerpodautoscaler="priority-notification-10d4e"} 159
go_goroutines{endpoint="workerpodautoscaler-metrics"}	5843
--k8s-api-qps
--k8s-api-burst

#62: PR did a lot of improvements. For details please check the PR description:

  • #61 #37 SQS: Replaces EmptyReceive scale down metric with NumberOfMessagesReceived.
  • #60 disruptable flag was released (which was replaced with maxDisruption later)
  • #55 #51 #49 Upgrade dependencies (golang, k8s aws sdk, update deprecated apis)
  • #44 Adds WPA icon

v0.2.2

31 Oct 11:02
0114751
Compare
Choose a tag to compare

Changelog

Cross region support for SQS #41 #42 #43