Skip to content

Tags

Tags give the ability to mark specific points in history as being important
This project is mirrored from https://github.com/neondatabase/autoscaling. Pull mirroring updated .
  • v0.26.1
    v0.26.1
    
    Patch release with only the contents of:
    
     - agent/dispatcher: Fix inbound monitor msg metrics (#838)
    
    Made as a part of autoscaling release training.
  • v0.26.0
    v0.26.0
    
    Fixes:
    - neonvm-controller: Catch Reconcile() panics (#829)
    
    Other changes:
    - upgrade test vm image to pg 16 (#810)
    - neonvm: increase neonvm-controller replicas (#823)
    - neonvm: log VM name in the neonvm webhook manager (#816)
    - neonvm: Cleanup kustomize (#824)
    
    Upgrade path from v0.25.0:
    
    - No ordering requirements.
  • v0.25.2
  • v0.25.1
    v0.25.1
    
    Patch release with only the contents of:
    
    - plugin: Remove client_addr metrics label (#815)
    
    Refer to the PR for more info.
  • v0.25.0
    v0.25.0
    
    Even mix of fixes and features, centered around improving stability and
    reliability.
    
    Features:
    
    - neonvm: Add support for having a swap disk in VMs (#801)
    - neonvm: Add InitScript to spec (#782)
    
    No breaking changes.
    
    No protocol changes.
    
    Fixes:
    
    - plugin: Fix k8s status message if pod scheduling fails (#804)
    - neonvm-controller: Fix field name typo in webhook validation (#793)
    - neonvm-runner: log forward: Wait for QEMU startup and prevent panic (#811)
    
    Other changes:
    
    - plugin: Handle panics from agent requests (#785)
    - neonvm-controller: Bump CPU limits 4 -> 8 (#805)
    - neonvm-controller: Enable container-mgr by default (#803)
    - neonvm: Merge init-roodisk and sysctl containers (#769)
    - neonvm: Tune QEMU disk cache settings (#776)
    - neonvm-controller: Add reconcile metrics debug endpoint (#798)
    
    Upgrade path from v0.24.0:
    
    - No ordering requirements.
  • v0.24.0
    v0.24.0
    
    Large release - lots of fixes, with a side of new features thrown in to
    spice it up. This is actually a re-attempt of the same release, due to
    issues and noticing a critical bug, that have now been fixed.
    
    Features:
    
    - neonvm-controller: Make max concurrency configurable via CLI (#773)
      - This was previously released as v0.23.2.
    - neonvm: Add .status.restartCount (#754)
    - neonvm-controller: VM startup metrics (#774)
    
    No breaking changes.
    
    No protocol changes.
    
    Fixes:
    
    - neonvm-controller: Fix overwriting runner version (#753)
    - neonvm-runner: Don't log i/o timeout (#768)
    - neonvm: Use crictl to change container CPU, ditch cgroup (#738)
      - This is a BIG change! It's disabled by default, can be enabled with
        a neonvm-controller flag.
    - neonvm-runner: Fix "dnsmasq: failed to create inotify .." errors (#786)
    - agent: Fix unregistered metric lastSendDuration (#787)
    - neonvm-controller: Don't retry update on conflict (#796)
    - neonvm-controller: Update VM's .Status.PodName immediately on API server (#797)
    
    Other changes:
    
    - neonvm-runner: Skip QEMU powerdown if already exited (#526)
    - plugin: Unify reserve and unreserve logic (#666)
    - neonvm: Use container statuses, not pod phase, to trigger restart (#749)
    - neonvm-controlller: Use --concurrency-limit=128 (#783)
    
    Upgrade path from v0.23.x:
    
    - No ordering requirements.
  • v0.23.2
    v0.23.2
    
    Backport of #773 to allow configuring max neonvm-controller max
    concurrency.
    
    Now that we have neonvm-controller metrics, we discovered that a couple
    regions were sometimes saturating the concurrency limit for extended
    periods of time.
    
    Refer to #773 for more details.
  • v0.23.1
    v0.23.1
    
    Enables SSH access to VMs by default — see #766 and #726 for more.
  • v0.23.0
    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.0
    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.0
    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-patch2
    v0.20.0-patch2
    
    Reverts the neonvm/runner 'cache=unsafe' change. See #694 for more.
  • v0.20.0-patch1
    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.0
    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-patch1
    v0.19.1-patch1
    
    Adds #643 - forgot to change kernel version in release workflow.
  • v0.19.1
    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.0
    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-patch3
    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-patch2
    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-patch1
    v0.18.6-patch1
    
    Follow-up release to v0.18.6, forgot to include the fix to neonvm ipam
    acquiring from #598.