Skip to content

Commit

Permalink
Changed the default to have only sqs
Browse files Browse the repository at this point in the history
  • Loading branch information
alok87 committed Jun 18, 2020
1 parent 657ccd4 commit ce08a91
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 4 deletions.
12 changes: 9 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
Scale kubernetes pods based on the Queue length of a queue in a Message Queueing Service. Worker Pod Autoscaler automatically scales the number of pods in a deployment based on observed queue length.

Currently the supported Message Queueing Services are:
- AWS SQS
- Beanstalkd
- [AWS SQS](https://aws.amazon.com/sqs/)
- [Beanstalkd](https://beanstalkd.github.io/)

There is a plan to integrate other commonly used message queing services.

Expand Down Expand Up @@ -107,12 +107,18 @@ Flags:
--k8s-api-qps float qps indicates the maximum QPS to the k8s api from the clients(wpa). (default 5)
--kube-config string path of the kube config file, if not specified in cluster config is used
--metrics-port string specify where to serve the /metrics and /status endpoint. /metrics serve the prometheus metrics for WPA (default ":8787")
--queue-services string comma separated queue services, the WPA will start with (default "sqs,beanstalkd")
--queue-services string comma separated queue services, the WPA will start with (default "sqs")
--resync-period int sync period for the worker pod autoscaler (default 20)
--sqs-long-poll-interval int the duration (in seconds) for which the sqs receive message call waits for a message to arrive (default 20)
--sqs-short-poll-interval int the duration (in seconds) after which the next sqs api call is made to fetch the queue length (default 20)
--wpa-default-max-disruption string it is the default value for the maxDisruption in the WPA spec. This specifies how much percentage of pods can be disrupted in a single scale down acitivity. Can be expressed as integers or as a percentage. (default "100%")
--wpa-threads int wpa threadiness, number of threads to process wpa resources (default 10)

```
For adding multiple queue provider support, you can add comma supported providers.
```
--queue-services=sqs,beanstalkd
```
### Troubleshoot (running WPA at scale)
Expand Down
1 change: 1 addition & 0 deletions artifacts/deployment-template.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ spec:
- --k8s-api-qps=5.0
- --k8s-api-burst=10
- --wpa-default-max-disruption=100%
- --queue-services=sqs
resources:
limits:
cpu: 100m
Expand Down
2 changes: 1 addition & 1 deletion cmd/workerpodautoscaler/run.go
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ func (v *runCmd) new() *cobra.Command {
flags.Int("sqs-long-poll-interval", 20, "the duration (in seconds) for which the sqs receive message call waits for a message to arrive")
flags.Int("beanstalk-short-poll-interval", 20, "the duration (in seconds) after which the next beanstalk api call is made to fetch the queue length")
flags.Int("beanstalk-long-poll-interval", 20, "the duration (in seconds) for which the beanstalk receive message call waits for a message to arrive")
flags.String("queue-services", "sqs,beanstalkd", "comma separated queue services, the WPA will start with")
flags.String("queue-services", "sqs", "comma separated queue services, the WPA will start with")

flags.String("metrics-port", ":8787", "specify where to serve the /metrics and /status endpoint. /metrics serve the prometheus metrics for WPA")
flags.Float64("k8s-api-qps", 5.0, "qps indicates the maximum QPS to the k8s api from the clients(wpa).")
Expand Down

0 comments on commit ce08a91

Please sign in to comment.