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.30.0
    v0.30.0
    
    Lots of internal changes, mostly tech debt and reliability improvements,
    but some bugfixes. Also of note: Kernel upgraded from 6.1.63 -> 6.1.92.
    
    Features:
    
    - api,agent/core: Make required ScalingConfig fields optional per-VM (#948)
    - neonvm-controller: replace failing reconciliation with per-VM failure interval  (#949)
    
    No breaking changes.
    
    No protocol changes.
    
    Fixes:
    
    - neonvm-controller: Rework zap setup & disable sampling (#947)
    - neonvm-controller: Fix k3s cluster detection (#956)
    
    Other changes:
    
    - plugin: Remove vmStore from AutoscaleEnforcer (#904)
    - plugin: Handle Buffer in reserveResources() (#904)
    - plugin: Replace readClusterState with existing watch events (#904)
    - neonvm-controller: rename VirtualMachine -> VM (#942)
    - pg16-disk-test: add mkfifo (#944)
    - Use github.com/samber/lo.ToPtr everywhere (#946)
    - neonvm: Switch to kernel 6.1.92 (#950)
    
    Upgrade path from v0.29.x:
    
    - No ordering requirements.
  • v0.29.3-k8s-1.26
    b1f1ec6d · Fix k3s cluster detection ·
    v0.29.3 but with 1.26 k8s API
  • v0.29.3
    v0.29.3
    
    Single change, just #937, changing neonvm-controller metrics to
    differentiate in the "currently failing reconcile" count between objects
    that were failing to reconcile due to conflicts vs objects that were
    failing from some other errors.
  • v0.29.2
    v0.29.2
    
    Single change, aiming to ease rollout for S3 billing chang:
    e3b2cec agent: don't check S3.Endpoint for emptyness (#934)
  • v0.29.1
    v0.29.1
    
    A hotfix after v0.29.0, containing a version bump, to fix S3 access:
    d932bc5 deps: upgrade aws/config and s3 packages (#933)
  • v0.29.0
    v0.29.0
    
    No known breaking changes.
    
    New features:
    9fbb531 runner: allow coredump collection (#931)
    3b08db3 neonvm: metrics for failing reconcile (#920)
    da5dbf2 agent: push metrics to S3 (#898)
    
    Bug fixes:
    669bb52 agent: don't treat downscale denies as failed request (#927)
    
    Deployment changes:
    8601caf neonvm-runner-image-loader: Faster rollout (#923)
    
    Deps updates:
    56a38a4 build(deps): bump google.golang.org/protobuf from 1.30.0 to 1.33.0 (#858)
    5b2b27e Update Rust: 1.74 -> 1.78 (#925)
    fa2c634 build(deps): bump golang.org/x/net from 0.17.0 to 0.23.0
    
    Developer workflow changes:
    774a6d5 Generate manifests via `make generate`, remove `make manifests` (#919)
    4d83eb6 github: Fix improvement template typo: facting => facing (#917)
    eff79b6 github: mv improvement_template.md => improvement-template.md (#917)
  • v0.28.1-k8s-1.26
    v0.28.1 but with 1.26 k8s API
  • v0.28.1
    v0.28.1
    
    This release fixes a critical issue in the backwards compatibility of
    v0.28.0 (and subsequent patches).
    
    In particular, it changes the type of the swap setting back to
    *resource.Quantity, and introduces a new field for *SwapInfo.
    
    See #912 for more info.
  • v0.28.0-patch2
    v0.28.0-patch2
    
    Another quick follow-up, fixing HTTP 400s for old autoscaler-agent
    instances.
    
    See #910 for more.
  • v0.28.0-patch1
    v0.28.0-patch1
    
    Tiny release, containing the fix for a panic in the scheduler plugin's
    handling of autoscaler-agent requests.
    
    See #909 for more details.
  • v0.28.0
    v0.28.0
    
    Large release after a while - lots of PRs without external changes, and
    then a hanful all at once.
    
    Features:
    
    - plugin: Make auto- live migration opt-in (#781)
    - plugin: Count shouldDeny from Reserve (#891)
      - new metric: autoscaling_plugin_reserve_should_deny_total
    - agent: Track more liveness in vm-stuck metrics (#855)
    - plugin: Add eventQueueSet metrics (#875)
      - new metric: autoscaling_plugin_eventqueue_depth
      - new metric: autoscaling_plugin_eventqueue_adds_total
      - new metric: autoscaling_plugin_eventqueue_duration_seconds
    - neonvm: Support resizeable swap via sized mkswap (#887)
    
    Breaking changes:
    
    - neonvm: Remove support for pre-v0.7.0 neonvm-runner versions (#836)
    - agent/billing: Make clients generic and allow >1 (#890)
      - Config format changed. See PR for details.
    - agent: Make billing config non-optional (#890)
    - neonvm: Changed type of VirtualMachine.Spec.Guest.Settings.Swap
    
    Protocol changes:
    
    - agent,plugin: Remove unused metrics from api.Metrics (#750)
    
    Fixes:
    
    - Sync versioning in VERSIONING.md and plugin (#894)
      - DISALLOWS versions <v3.0, which should have already been the case.
    - agent: Add missing validationf or .metrics.requestTimeoutSeconds
      (#892)
    
    Other changes:
    
    - api/vminfo: Move flags & scaling config to new Config field (#781)
    - plugin: Use api.VmConfig for per-VM settings (#781)
    - plugin: Don't fail in Reserve() (#891)
    - neonvm-runner: Log parallel errors before returning (#893)
    - agent,api: Remove custom Format()s for complex types (#902)
    
    Upgrade path from v0.27.0:
    
    - neonvm MUST be upgraded before any Go client libraries, if the client
      does any interactions with VMs with swap enabled.
    - the scheduler MUST be upgraded before the autoscaler-agents.
  • v0.27.0
    v0.27.0
    
    Incident followups:
     - c659485 plugin: construct VmInfo from pod, not vm (#865)
     - 63e618d plugin: Increase eventQueueWorkers: 16 -> 64 (#874)
     - 1fa43fa neonvm: Add neonvm-runner image loader (#857)
     - 6878837 plugin: Add pod desired AZ to plugin method metrics (#870)
    
    Other changes:
    - 63e1d72 runner: refactor to make some steps parallel (#864)
    - e7f8039 Release workflow: add neonvm-runner-image-loader (#876)
    
    Upgrade path from v0.26.2:
     - Need to deploy neonvm-controller before scheduler to wait for
     propagation of annotations
  • v0.26.2
    v0.26.2
    
    Small release containing only a few PRs - releasing now to get a
    critical scheduler fix out (see #851 for more).
    
    Fixes:
    
    - plugin: Use multiple event handler threads (#854)
    
    Other changes:
    
    - neonvm-controller: Enable seccomp profile (#833)
    - neonvm: Make .status.restartCount not a pointer (#845)
    - neonvm: Remove controller metrics auth proxy (#825)
    
    Upgrade path from v0.26.x:
    
    - No ordering requirements.
  • 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.