ballast
ballast copied to clipboard
Ballast manages kubernetes node pools to give you the cost of preemptible nodes with the confidence of on demand nodes.
Implement as a new `kind` to continue to support users that want to define their own pools. ```yaml kind: PoolGroupPolicy metadata: name: k8s-pool-name spec: cluster: demo minimumInstances: 10 maximumInstance: 100...
Currently the startTime is used to determine if a pod can be evicted. It should use [https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-conditions](status.conditions Ready) instead.
Policy for recycling nodes, specifically PVMs ```yaml apiVersion: ballast.bonny.run/v1 kind: RecyclePolicy spec: maxLifetime: 86400 # max lifetime of a node drainTimeout: 300 # time (s) to wait before killing a...
Implement a custom scheduler in ballast. This would watch for pods w/ the field selectors `spec.schedulerName=ballast,spec.nodeName=` then post `Binding`s between those pods and the optimal node. This would allow specific...
https://github.com/stoplightio/prism
``` ballast-859d47965c-7l4jh ballast 23:22:17.735 [error] Task #PID started from Ballast.Controller.V1.PoolPolicy terminating ballast-859d47965c-7l4jh ballast ** (MatchError) no match of right hand side value: %{"location" => "us-central1-a", "minimumInstances" => 1, "poolName" =>...
GIven 2 target pools, if pool B is unavailable for some reason, support an *opt-in* feature to shift its minimumPercent to pool A. ```yaml spec: enabledMinimumPercentShifting: true managedPools: - name:...
* [x] move `id/1` to an callback * [ ] Refactor `conn/0` ~token/0~ ~log_http_error/1~ into GKE adapter adapter to pave way for pluggable support. `conn` should be optional to all...
Adding an additional option to relatively set the maxSize ## Why Since the minSize is being dynamically adjusted, when the source pool is under heavy load, the `minSize` of a...