Jrasell Sherpa Versions Save

Sherpa is a highly available, fast, and flexible horizontal job scaling for HashiCorp Nomad. It is capable of running in a number of different modes to suit different requirements, and can scale based on Nomad resource metrics or external sources.

v0.4.2

4 years ago

Changelog

6baa7d2 Merge pull request #132 from jrasell/release-0.4.2 09888bf Release v0.4.2 0ee65bf Merge pull request #129 from jrasell/add-hobochili-readme 33b1e1f Add @hobochili to README contributors list. 7290887 Update CHANGELOG.md c89cbe8 Merge pull request #128 from catsone/fix-ext-scaling-dec-call e2f145d autoscale: pass group name to calculateExternalScalingDecision b9eec39 Update CHANGELOG.md 5d44360 Merge pull request #124 from jrasell/gh-123 0b6e80b docs: add new server CLI flag to enable debug endpoints. 773329b Add pprof Debug routes for Sherpa server profiling.

v0.4.1

4 years ago

Changelog

d215c85 Merge pull request #122 from jrasell/f-prep-0.4.1-release e37a625 Prepare for v0.4.1 release. 735a82b Update CHANGELOG.md 3ab0b32 Merge pull request #121 from jrasell/gh-120 cde24af Fix incorrect searching of allocs causing missed allocs in jobs. 69b6720 Merge pull request #119 from jrasell/gh-118 a50bf04 Update Dockerfile version to build v0.4.0.

v0.4.0

4 years ago

Changelog

212ca6e Update CHANGELOG.md a6149c9 Update CHANGELOG.md 562b6e5 Merge pull request #116 from jrasell/gh-113 3a03a49 update CLI description of consul-storage boolean flag. f661bde Merge pull request #115 from jrasell/general-docs-fixes 3202a59 Merge pull request #114 from jrasell/remove-rouge-dsstore 43ef52f docs: general fixes and additions based on read through. b789351 Remove rouge .DS_Store file committed before gitignore was present f97606f Update CHANGELOG.md b3de02f Merge pull request #110 from jrasell/gh-97 5829a4b Update CHANGELOG.md 0590253 Merge pull request #111 from jrasell/fix-metrics-cli-type-bug 2d67e08 Merge pull request #112 from jrasell/decision-log-better-provider-not-available 7d78761 autoscale: clarify log line to avoid duplicates. 99e6e4d cmd: fix system metric CLI listing samples incorrectly as counter. 29e7011 cmd: order scale status list by time recent->oldest. 5f4485b Merge pull request #109 from jrasell/policy-read-handle-external-checks 6aff35b Update CHANGELOG.md 4b7432b Merge pull request #108 from jrasell/sort-policy-list-cmd-alphabetical 9c72b5a Update CHANGELOG.md aef908a Merge pull request #107 from jrasell/gh-98 7ef3453 cmd: update policy read to handle nomad and external check entries bb3a9c7 cmd: sort policy list alphabetically for easier user groking. 86b8b30 Merge pull request #105 from jrasell/docs-update-new-check-policy 93011a2 Merge branch 'master' into docs-update-new-check-policy 13d8f43 docs: update to reference listing scale status by latest only. dd45906 Add the ability to list only the latest scaling events. a35cfe7 Update CHANGELOG.md 114932f Merge pull request #104 from jrasell/gh-102 2a1c71a Update CHANGELOG.md b95ff5e Merge pull request #106 from jrasell/gh-96 20a81a8 Reuse the Consul API client rather than create new for each use. 26beefa docs: add new policy external check and rework some structure. 607b34b Merge branch 'master' into gh-102 16e7541 Update config docs to reference new Prometheus metrics provider. 10ba795 Update vendored dependancies with Proemtheus API requirement. 58dc454 Allow policy to include external checks and add Prometheus backend 1c4ceb2 Update CHANGELOG.md fac19c9 Merge pull request #103 from jrasell/add-post-scale-method 7ec853e Update CHANGELOG.md 73cc751 Merge pull request #101 from jrasell/gh-100 557b8e5 Update docs to reference scale out/in POST use rather than PUT. 38b5bbd Scale out/in endpoints should use POST rather than PUT method. 474fac5 docs: update documentation to reference Prometheus metrics format. 7566ad3 server: add prometheus format option to metrics endpoint. 178e906 Update CHANGELOG.md 5a9154c Merge pull request #95 from jrasell/gh-37-autoscaler 5789fd3 Merge branch 'master' into gh-37-autoscaler 05ac7f0 Update CHANGELOG.md 1fc1f41 Merge pull request #94 from jrasell/gh-37-scaling-state-backend 37b7087 Merge branch 'master' into gh-37-scaling-state-backend d8feec4 Update CHANGELOG.md df43bb5 Merge pull request #99 from jrasell/refactor-system-endpoint 0ace90d Update CHANGELOG.md 8402639 Merge pull request #93 from jrasell/gh-37-policy-backend 213221c refactor: move system API endpoint into the server/v1 package. 4efaba7 docs: add details of available autoscaler metrics. e4aff64 autoscaler: add metrics to track errors, successes and latencies. a3d84c9 docs: add details of available scaling state backend metrics. 125c13d scaling-state: add metrics to track request latencies. 6c04ad7 docs: add details of available policy backend metrics. 840b537 policy-backend: add metrics to track request latencies.

v0.3.0

4 years ago

Changelog

d2b4401 Merge pull request #92 from jrasell/f-release-0.3.0 eaab0b7 Release v0.3.0. c598ea5 Merge pull request #91 from jrasell/gh-80 798a390 Merge pull request #90 from jrasell/gh-81 3c85c1b docs: add documentation for metadata params on scaling activites. 2199321 docs: add documentation for cooldown param within scaling policies 9e9971f Merge pull request #89 from jrasell/add-meta-scale-status-cmd d339b1c Merge pull request #88 from jrasell/meta-unique-per-group 6e481b9 cmd/scale: add meta info to status info output. 5d8737f scale-meta: meta should be unique per job group. 0365cb5 Merge pull request #87 from jrasell/update-autoscale-meta-params 7c41afd Update CHANGELOG.md d300b3b Merge pull request #86 from jrasell/as-handle-mixed-action-needs 4ba8924 autoscale: meta submission allows multiple resource entrie. 7f522a8 autoscale: provide additional decision context on scaling choices 6b11493 Update CHANGELOG.md 4de23a8 Merge pull request #85 from iadvize/fix-scaling-order 6f4d575 fix(autoscaling): test out before in 6ad120c Update CHANGELOG.md 4c3377c Merge pull request #83 from jrasell/gh-76 b1a894d cluster: fix a big where cluster state get overwritten on restart. 543384d Update CHANGELOG.md 69875a7 Add cooldown functionality to scaling policies and storage backend. (#77) 03f65d1 Merge pull request #82 from jrasell/add-commarla-readme-contrib 68c4072 Add commarla to README contributors listing. f874e99 Update CHANGELOG.md 1bfdbbf Merge pull request #79 from iadvize/fix-typo 9b32d16 style(meta): wrong copy paste 98ae941 Update CHANGELOG.md 23cc3a2 Merge pull request #74 from pmcatominey/scale-event-meta bcadf81 Merge pull request #78 from jrasell/add-numiralofe-readme 5219516 Add numiralofe to README.md contributors. 2b41ada Update CHANGELOG.md dd946f2 Merge pull request #75 from numiralofe/added-job-direction-and-count-to-webui 7eac568 added job count and direction to webui 7605461 pkg/state: add metadata to scaling events

v0.2.1

4 years ago

Changelog

be871e9 Merge pull request #73 from jrasell/f-release-0.2.1 27f39e4 Release v0.2.1 85893f6 Update CHANGELOG.md 5d8d497 Merge pull request #72 from jrasell/update-ants-vendor e33ead2 mod/vendor: update panjf2000/ants to latest v2 release. bf1e263 Update CHANGELOG.md 04108cb Merge pull request #71 from jrasell/gh-70 31ef124 Update CHANGELOG.md 39d8ca1 Merge pull request #69 from jrasell/fix-v1-scale-log-msgs 2866310 Fix issue when autoscaling job with mix of groups w/wo policies. 6787c68 endpoint: fix malformed server log messages.

v0.2.0

4 years ago

Changelog

6f829f6 Merge pull request #66 from jrasell/f-release-0.2.0 293db6a Release v0.2.0 b450ef4 Merge pull request #65 from jrasell/remove-leader-protect-system 35f1a4b Merge pull request #64 from jrasell/gh-47 f7ae858 server: remove leader protection from all system routes. fcfb18f docs: add high availability feature documentation. d0eecb2 Update CHANGELOG.md 77647b6 Merge pull request #62 from jrasell/gh-59 f4a6849 Merge pull request #61 from jrasell/fix-makefile-test-target 8d63c43 Fix incorrect response code and msg when scaling breaks thresholds 2bc2329 Fix makefile test target by rename to tests to avoid dir conflict. ac16b93 Merge pull request #60 from jrasell/add-scale-and-meta-policy-acctests 106b55c Update CHANGELOG.md d592fd5 Add acceptance test for meta policy engine and scaling actions. 498aea8 Merge pull request #58 from jrasell/gh-55 5567cd5 Move Nomad Meta policy to satisfy policy interface. 660d6ea Update CHANGELOG.md f411186 Merge pull request #56 from jrasell/gh-44 b060ffd Update CHANGELOG.md b155576 Merge pull request #57 from jrasell/meta-watch-initial-index-1 2cb40b8 Policy meta watcher should start index at 1, not 0. bf32103 Do not scale a job group when it is in deployment. a821ebe Merge pull request #54 from pmcatominey/acctest-policy 295b59b test: establish acceptance tests for policy API 0abde9c Update CHANGELOG.md 0d6c67c Merge pull request #53 from pmcatominey/policy-get-panic 3857923 pkg/policy: fix panic in get policy by job and group 7ad44ee Update CHANGELOG.md 020fdcd Merge pull request #52 from pmcatominey/policy-client-write 3f823f2 Update CHANGELOG.md 7e139f3 Merge pull request #51 from pmcatominey/consul-policy-list afd31e6 pkg/api: accept JobGroupPolicy type for Write 1d6cbac backend/consul: fix job group policy list 3d06c0c Merge pull request #48 from jrasell/add-demo-docs-readme 3a69341 Merge pull request #50 from jrasell/fix-memory-cluster-panic c98ea0d Fix panic within the cluster memory backend. 826bb31 Add quick-start demo to the docs guide. e64f187 Update CHANGELOG.md 77f89d6 Merge pull request #45 from jrasell/gh-42 e0c74ad Merge pull request #46 from jrasell/add-contributors-readme bc92e29 Add contributors section to README to list user links. e8fd8f7 Fix some style errors after self review. 88ddead Add Sherpa cluster leadership allowing HA server deployments. 28b0610 Update README.md

v0.1.0

4 years ago

Changelog

24d2b4b Merge pull request #43 from jrasell/f-release-0.1.0 19b5c70 Release v0.1.0. 6847077 Update CHANGELOG.md c3fc54d Update system info to reference more generic storage backend. (#41) acb975d Merge pull request #40 from jrasell/gh-29 44e64e7 Update CHANGELOG.md db115d5 Merge pull request #39 from jrasell/dont-use-period-cli-short bd035d4 Add documentation for new scaling state feature. 5ac2eb9 Fix style issue where scale cmd helped ended with fullstop. 4dea6cd Merge pull request #38 from jrasell/gh-34 2806ed0 Update docs to reference new web UI feature with image example. be267a7 Update CHANGELOG.md 4bf5aea Merge pull request #36 from jrasell/autoscaler-log-req-adebug 524e2b9 Autoscaler log to debug when it suggests a group should be scaled. 4d88175 Update CHANGELOG.md 2aeb29a Merge pull request #33 from jrasell/gh-31 de49e9d Merge pull request #35 from jrasell/makefile-tools-gomodoff 259e29b Ensure go mod is not enabled when install makefile tools. 6ee8ab5 Add simple UI to provide visual overview of scaling events. f9a9492 Merge pull request #32 from jrasell/fix-consul-state-latestevents-write 7844d9d Write Consul state latest-events to the correct jobgroup key. bd512a7 Update CHANGELOG.md 39ccd30 Add scaling event state management to track event details. (#28) b47ff5e Update CHANGELOG.md f2b9dd8 Merge pull request #30 from jrasell/getpolicies-memory-lock d64f210 Use mutex when reading out all policies to remove possible race. 257c016 Update CHANGELOG.md f25fd1a Merge pull request #24 from jrasell/gh-23 ba37aaa Merge pull request #25 from jrasell/fix-policy-cmd-write 04c0212 Update CHANGELOG.md 29dc5f4 Fix incorrect policy write command example within docs. 76be6e4 Update docs to detail new autoscaler thread CLI parameter. 5a1b116 Use goroutine pool within autoscaler to limit concurrency.

v0.0.2

4 years ago

Changelog

43b2ec3 Merge pull request #20 from jrasell/release-0.0.2 3f9f926 Update CHANGELOG.md fcc9d6b Merge pull request #21 from jrasell/handle-jobs-allocs-api-call-error 72ac449 Check error returned when calling Nomad Job Allocations in scaler. e5ac11a Prepare for the release of 0.0.2. b6ccb1d Merge pull request #19 from jrasell/fix-dockerfile-small 496ecfb Update CHANGELOG.md 6b2a930 Fix bug where meta policy engine would not process job updates. (#16) 344d37b Update Dockerfiles to use ENTRYPOINT correctly and env var version 9f40720 Update CHANGELOG.md 7d4dc7b Merge pull request #18 from zumper/m.only_use_running_allocs_for_percent_resource_utilization 36851c2 use alloc status consts to filter allocations 7c15872 Update CHANGELOG.md 9dc3424 Merge pull request #17 from zumper/m.update_resource_usage_percent_calculation_for_autoscaling 0109333 filter out the allocations that arent actively running or pending d1caab4 update resource usage calculation to multiply first and then divide 709c859 Update CHANGELOG.md 4944420 Merge pull request #11 from jrasell/fix-consul-tnx-error-msg 046adb1 Fix incorrect error message return within Consul backend. ff7c685 Update CHANGELOG.md e45903d Merge pull request #10 from jrasell/f-autoscaling-thresholds-policy-docs a6f6870 Merge pull request #9 from jrasell/f-allow-autoscaling-thresholds-policy cf7690f Upadte docs to reference new auto-scaling policy thresholds. f8dbde3 Ensure API is updated to track new scaling policy parameters. a3df77e Internal autoscaling thesholds are now configurable within policy. 736b16b Merge pull request #7 from jrasell/use-last-tag-local-build-version 082fecf Merge pull request #6 from jrasell/update-doc-links 2a7ce50 When building locally, the version should be based on the last tag. 937413b Update README and Dockerfile binary links based on v0.0.1 release.

v0.0.1

5 years ago

Changelog

88cdad6 Ensure Goreleaser is installed when running Travis builds. 9e7572e Merge pull request #5 from jrasell/f-prepare-0.0.1-release 72b16be Update CHANGELOG to set 0.0.1 release date. 915a914 Merge pull request #4 from jrasell/readme-docs-link-update e1d5094 The docs README should link to docs directory, not dir readme. 3e6b041 Merge pull request #3 from jrasell/metrics-api-and-command 833a30f Update vendored packages. f14bf15 Update docs to include metrics API endpoint and CLI command. 269169a Add metrics API endpoint and command to retrive server telemetry. f922d06 Merge pull request #2 from jrasell/add-telemetry-config-runtime-stats 5ee46d0 Add initial support for statsite and statsd runtime telemetry. 256ad65 Link to docs directory rather than README in main README file. bbc0ac1 Merge pull request #1 from josegonzalez/patch-1 ad1d682 docs: add missing quote marks 6beee7f The Travis build file needs to be named yml not yaml. 20da234 Add github directory with PR and issue templates. 60f3041 Update server CLI flags to be more consistent and user friendly. aa0babf Fix dead link to Nomad website in README.md. 3f0951d Add additional api tests for request file. 871984e Add policy init command to print example job group policy. 2adb495 Update docs to include new TLS server and client params. c3e6041 Configure basic TLS server and client support. a5a8d1a Fix build Dockerfile which was pulling binary from incorrect dir. 767629c Add vendor directory using go mod vendor. 848a7e8 Add Travis file for running builds and tests via Travis automation 5892056 Move goreleaser file to root and update ldflags to correct pkg. 835c136 Ensure all CLI flags have correct value and description. 9219770 Update guide README and add additional autoscaler guide details. 4a44a99 Add gitignore file to ignore standard files and local build items. fbe571a Ensure govvv is populating the correct pkg with ldflags. c06f800 Fix Makefile build command to work with cmd sub-dir not root dir. 85c1090 Enable go modules. 34d1802 Add LICENSE file containing Mozilla Public License for Sherpa. f1bade1 Initial commit.