This project is mirrored from https://github.com/neondatabase/autoscaling.
Pull mirroring updated .
-
-
v0.23.011787831 · ·
v0.23.0 Substantial release with many bugfixes and quality-of-life improvements. Notable inclusions: SSH support for VMs, opt-in higher log throughput, tech debt resolution inside the scheduler. Features: - neonvm: Clock synchronization using kvm_ptp (#732) - neonvm: Enable SSH access into the VMs (#726) - neonvm-controller: Expose default set of metrics (#739) - neonvm-controller: Custom reconciler metrics (#757) No breaking changes (kind of; see "Protocol changes"). Protocol changes: - agent,plugin: Refer to memory quantities in bytes, not memory slots (#653) - agent: Send compute unit in requests to plugin (#744) Fixes: - neonvm-runner: Use the right file extension for ISO images (#735) - agent: Add small random amount to plugin requset tick (#745) - agent: Sleep for random delay before first metrics request (#746) - neonvm-runner: Pass logs through virtio-serial (#724) No other changes. Upgrade path from v0.22.0: - The neonvm deployment must be updated BEFORE making use of the new vm-builder version, else ssh access and clock synchronization will not work. - The new `spec.enableSSH` field on VMs is ignored by previous versions of the scheduler and autoscaler-agents; no ordering requirement there. - The scheduler MUST be updated before autoscaler-agents, due to the protocol changes between them.
-
v0.22.0a23780d8 · ·
v0.22.0 Larger-than-normal release, been a while since the last one because of holidays. Contains a bunch of substantial bugfixes, alongside some other smaller improvements. No new features. No breaking changes (kind of; see "Protocol changes"). Protocol changes: - agent,plugin: Don't send ComputeUnit from plugin (#707) Fixes: - neonvm-runner: Fix iptables rules for traffic from localhost (#701) - neonvm-controller: Fix runner pod cgroup cpu scaling (#702) - neonvm-controller: Update VM resources status once the scaling phase is done (#708) - neonvm-controller: Unify up/down memory scaling (#704) Other changes: - agent: Add project ID label to per VM metrics (#699) - neonvm: Add manual QMP access (#703) - agent: Send monitor requests in 1 CU increments (#713) - neonvm-controller: Extract QMP commands for memory scaling (#704) Upgrade path from v0.21.0: - Scheduler must be upgraded before autoscaler-agent (and, if rolling back, rolled back after), due to protocol change in #707. - The per-VM metrics have a new label added; this *may* inadvertently break certain usage.
-
v0.21.02d9b2527 · ·
v0.21.0 Relatively small release, with significant changes to per-VM metrics, and some other minor improvements elsewhere. Features: - agent: Include autoscaling bounds annotation in per-VM metrics (#695) Breaking changes: - agent: Separate per-VM memory and cpu metrics (#684) - The `autoscaling_vm_resources` metric is now split into `autoscaling_vm_cpu_cores` and `autoscaling_vm_memory_bytes`, with the "resource" label removed. No protocol changes. Fixes: - neonvm/whereabouts: Require amd64 to fix issues with ARM nodes (#691) - Previously released as v0.20.0-patch1 - plugin: Fix nil deref on failed ExtractVmInfo on VM update (#690) - Previously released as v0.20.0-patch1 - agent: Clarify some logs about monitor requests (#687) - Revert neonvm/runner: Treat guest-side disk flush requests as no-ops (#628) - This was previously released as v0.20.0-patch2. Other changes: - vm-builder: Set vector scrape interval from 15s to 1s (#650) Upgrade path from v0.20.0: - Components can be deployed in any order. - The per-VM metrics exposed by the autoscaler-agent have changed in a backwards-incompatible way. Any usage must be updated.
-
v0.20.0-patch25e754ecd · ·
v0.20.0-patch2 Reverts the neonvm/runner 'cache=unsafe' change. See #694 for more.
-
v0.20.0-patch18cf814b0 · ·
v0.20.0-patch1 Small release with a couple bugfixes: - neonvm/whereabouts: Require amd64 to fix issues with ARM nodes (#691) - This was a regression from v0.19.x because v0.20.0 unintentionally removed the affinity selector. - plugin: Fix nil deref on failed ExtractVmInfo on VM update (#690) - Not a regression, but occurs more on staging after v0.20.0 because of unrelated changes.
-
v0.20.0436edea2 · ·
v0.20.0 A larger release, focused on stability and cleaning up internals. Features: - neonvm/controller: Add pprof endpoint (#670) Breaking changes: - plugin: Remove config nodeOverrides (#654) - plugin: Make compute unit config global (#655) Protocol changes: - agent,plugin: Requests include agent's last permit (#649) Fixes: - agent: Fix plugin approved resource metrics (#647) - util/watch: Fix triggered relist (#667) Other changes: - neonvm: Whereabouts CNI updated v0.6.1 → v0.6.2 (#636) - util/watch: Remove resourceVersion from List calls (#672) - neonvm/runner: Treat guest-side disk flush requests as no-ops (#628) - Sets "cache=unsafe" for various disk mounts - agent/billing: Log URL on billing requests (#681) - agent: Log config on startup (#682) - agent: Replace schedwatch/trackcurrent with global value (#675) Upgrade path from v0.19.x: - Upgraded scheduler MUST be released before upgraded autoscaler-agents. If you need to roll back, the autoscaler-agents MUST be completely rolled back before the scheduler.
-
v0.19.1-patch1c6dc97b3 · ·
v0.19.1-patch1 Adds #643 - forgot to change kernel version in release workflow.
-
v0.19.16cf6227b · ·
v0.19.1 Small release: Kernel upgrade, deps upgrade, and neonvm devx improvements. Main items are: - Go 1.21 (#639) - Kubernetes 1.25.16 (#640) - neonvm: Allow per-VM custom runner image (#632) - neonvm: Switch to kernel 6.1.63 (#638)
-
v0.19.00e67b150 · ·
v0.19.0 Somewhat larger release, lots of new, small features in NeonVM and some larger changes finally merged. Features: - neonvm: Enable symbolified kernel backtraces (#618) - agent: Expose per-VM size metrics on :9101 (#596) - neonvm: Allow per-VM custom kernel images (#621) - neonvm: Add ability to append to kernel command line (#625) Fixes: - neonvm/controller: Remove noisy webhook validation log lines (#613) Other changes: - vm-builder: Remove neon-specifics (#600) - agent/billing: Use `autoscaling.neon.tech/billing-endpoint-id` for events (#579) - vm-builder: Use same output format as `docker build` (#605) Upgrade path from v0.18.x: - No ordering requirements. Don't use the new NeonVM CRD fields until all components have been updated.
-
v0.18.6-patch345a7c791 · ·
v0.18.6-patch3 Just one change, the fix from #614 - fixing an autoscaler-agent bug when there's a scheduler restart during a monitor upscale request.
-
v0.18.6-patch216248537 · ·
v0.18.6-patch2 Another couple bugfixes: - neonvm: Update in resources for neonvm controllers (#610) - neonvm/controller: Set migration as failed if underlying VM not found (#611) - agent/schedwatch: Fix deadlock (#612)
-
v0.18.6-patch12d3ec713 · ·
v0.18.6-patch1 Follow-up release to v0.18.6, forgot to include the fix to neonvm ipam acquiring from #598.
-
v0.18.643b3194f · ·
v0.18.6 Medium-size release, mostly fixes, with one new feature :) Fixes: - vm-builder: fail on docker errors (#599) - plugin: Fix watch events for migration pods (#601) - Fix indirect dependency on k8s.io/*@v0.21.3 (#607) Features: - neonvm: Add support for spec-defined sysctl settings (#547)
-
v0.18.5053b34c7 · ·
Even smaller release, disabling prepared statements support in vm-builder's pgbouncer config. For more, see #589.
-
v0.18.4cc6398d6 · ·
v0.18.4 Small release, fixing vm-builder's pgbouncer config that prevented dropping databases. For more, see #584.
-
v0.18.3071d2722 · ·
v0.18.3 Bugfix (#585) for scheduler's handling when a migration is deleted. The bug was introduced in v0.18.1. No other changes.
-
v0.18.2883706f1 · ·
v0.18.2 Another relatively small release. Bugfixes: - vm-builder: Turn off --auto-discover-databases (#571) - agent/core: Fix never downscaling after single failure (#573) - agent/core: Add rate limit for vm-monitor downscale (#574) Other changes: - agent: Log when handling VM events (#583)
-
v0.18.123adc189 · ·
v0.18.1 Relatively small release, mostly to get the vm-builder changes in. Also some dependency bumps that are worth releasing separately. External changes: - util: Move patch.go into its own package (#535) - vm-builder: Update pgbouncer to 1.21.0 + support prepared statements (#566) Bugfixes and misc changes to components: - agent: Fix oversized websocket close frames (#569) - plugin: Use pod ownerReferences to tell if VM, not label (#563) Devx changes: - Makefile: Check kubectl context before applying (#540) - lint workflow: Add job to check generated go code (#546) - golangci: Enable unparam linter (#562) - Fix vm-monitor build (#570) Dep bumps: - bump github.com/cilium/cilium (#532) - bump golang.org/x/net (#559)
-
v0.18.0-patch28b0de9d0 · ·
v0.18.0-patch2 Another handful of fixes for issues noticed on staging. This release contains only the changes from #556, #557, #558, and #560. The various PRs for follow-ups from v0.18.0 are all tracked in #550.