Skip to content
Snippets Groups Projects

Tags

Tags give the ability to mark specific points in history as being important
  • Name
  • Oldest updated
  • Updated date
  • Latest version
  • Oldest version
This project is mirrored from https://github.com/neondatabase/autoscaling. Pull mirroring updated .
  • v0.17.4
    v0.17.4
    
    Hotfix-ish release containing a few improvements, from all of the
    following PRs: #481, #496, #499, #500, and #501.
    
    Except for #481 (randomize plugin scores), these are all improving the
    behavior around agent <-> monitor communication.
  • v0.17.3
    v0.17.3
    
    Hotfix release containing a number of fixes, primarily for the agent's
    vm-monitor connection handling, but also a couple for the neonvm-controller.
    The PRs contributing to this release are all of:
      #461, #491, #495, #494, #493, #497, and #498
  • v0.17.2
    v0.17.2
    
    Another hotfix release, fixing a false positive in the "stuck VMs"
    metric & associated alert, when communicating directly with the
    vm-monitor. This release contains a single commit, from #489.
  • v0.17.1
    v0.17.1
    
    Hotfix release for some agent/monitor communication issues that popped
    up on staging, with only the changes from #487 and #488.
  • v0.17.0
    v0.17.0
    
    This release contains bugfixes, breaking changes, features, and
    quality-of-life improvements. Previous hotfix or single-PR releases
    since v0.16.0 are also included here (notably v0.16.3, which shouldn't
    have been just a patch release).
    
    Breaking API changes:
    
    - neonvm: Make spec.enableAcceleration a pointer (#474)
      - This should be backwards compatible at the k8s API server level (and
        with existing clients), but may cause compilation failures for usage
        of the Go client.
    
    Features:
    
    - neonvm/builder: add flag to configure uid of cgroup (#480)
      - already released in v0.16.2
    
    Fixes:
    
    - plugin: Fix nodeConfig.ScorePeak JSON name (#478)
      - already released in v0.16.1
    - plugin: Fix Score scale usage (#479)
      - already released in v0.16.1
    - neonvm/controller: Handle pod termination during Scaling phase (#483)
    - agent: harden dispatcher concurrency (#484)
    
    Protocol changes:
    
    - agent: establish connection with monitor instead of informant (#442)
      - NOTE: this removes the vm-informant from everywhere.
      - already released in v0.16.3
    
    Other changes:
    
    - plugin: Add availability zone label to node metrics (#482)
    
    Upgrade path from v0.16.x:
    
    - No ordering requirements for cluster-wide components (i.e.
      neonvm/scheduler/agents)
    - autoscaler-agents *must* be updated before using the updated
      vm-builder
    - #474 may require updating usage of the EnableAcceleration field.
  • v0.16.3
    v0.16.3
    
    Another single-PR release, this time for #442, which is a significant PR
    that adds handling in the autoscaler-agent to connect directly to the
    vm-monitor, if it's listening on the port that the vm-informant *was* on.
  • v0.16.2
    v0.16.2
    
    Tiny release just adding #480, to allow configuring what vm-builder sets
    as the admin user for the neon-postgres cgroup.
  • v0.16.1
    v0.16.1
    
    Hotfix release containing #478 and #479, fixing a config field name and
    a bug in the plugin's Score method that caused scheduling failures.
  • v0.16.0
    v0.16.0
    
    This release contains a couple new features, but mostly groups together
    a handful of recent hotfix releases.
    
    No breaking API changes.
    
    Features:
    
    - neonvm/builder: Add flags to enable informant/monitor (#477)
    - plugin: Penalize underfull nodes during Score (#476)
    
    Fixes:
    
    - agent: Fix endpointAssignedAt for VMs added with endpoint (#463)
      - Hotfixed as v0.15.1
    - neonvm/runner: Handle hybrid cgroup v1/v2 systems (#467)
      - Hotfixed as v0.15.3
    - neonvm/builder: Add additional fields to vm-monitor conn str (#469)
      - Hotfixed as v0.15.4
    - agent/metrics: Fix runner state metrics deletion hanlding (#471)
      - Hotfixed as v0.15.5
    - Disable zap's enabled-by-default log sampling (#475)
    
    No protocol changes.
    
    Other changes:
    
    - agent/metrics: Initialize runnersCount label pairings to 0 (#465)
      - Hotfixed as v0.15.2
    - neonvm/builder: Remove cgexec entrypoint prefix (#477)
    
    Upgrade path from v0.15.x:
    
    - No ordering requirements. Note that vm-builder now requires adding
      '-enable-informant' and '-enable-monitor' to keep the previous
      behavior.
  • v0.15.5
    v0.15.5
    
    Yet another hotfix, this time to hopefully fix an issue with the agent's
    runner state metrics. See #470 and #471 for more.
  • v0.15.4
    v0.15.4
    
    Another hotfix release: We weren't providing a host or port in the
    vm-monitor's connection string, which the informant didn't need because
    they were included by default in Go's pq postgres driver, but they *are*
    needed in the monitor.
  • v0.15.3
    v0.15.3
    
    Another hotfix release, fixing neonvm-runner for hybrid cgroup v1/v2
    setups. The only difference between v0.15.2 and this is #467.
  • v0.15.2
    v0.15.2
    
    Another hotfix release, adding better metrics initialization to #459,
    from PR #465.
  • v0.15.1
    v0.15.1
    
    Hotfix release, fixing incorrectly setting podStatus.endpointAssignedAt
    to nil, which caused staging to crash-loop with a nil pointer
    dereference on startup. This release contains only #463 on top of v0.15.0
  • v0.15.0
    v0.15.0
    
    This release contains a new NeonVM feature, a security improvement,
    a new component (vm-monitor), and BREAKING CHANGES TO METRICS!
    
    Breaking API changes:
    
    Features:
    
    - neonvm: Add user-defined additional InitContainers (#433)
    
    No "fixes".
    
    No protocol changes.
    
    Other changes:
    
    - informant: Move scaling logic into (new!) vm-monitor (#362)
    - agent: Use fixed port for informant -> agent connections (#447)
    - agent: Move "runner" state tracking from GaugeFuncs to GaugeVec (#447)
      - The following metrics were removed:
        - autoscaling_errored_vm_runners_current
        - autoscaling_panicked_vm_runners_current
        - autoscaling_agent_tracked_vms_current
        - autoscaling_vms_unsuccessful_communication_with_informant_current
        - autoscaling_billed_vms_unsuccessful_communication_with_informant_current
      - The following metric was added:
        - autoscaling_agent_runners_current
    
    Upgrade path from v0.14.2:
    
    - No ordering requirements, but all components must be upgraded before
      there's *any* usage of NeonVM's new extraInitContainers.
  • v0.15.0-alpha1
    release workflow fix; see v0.15.0-alpha
  • v0.15.0-alpha
    v0.15.0-alpha
    
    This is the initial release of the monitor.
    
    Features:
    The monitor replaces the informants upscaling/downscaling capabilities.
    At the moment, it is started by vm-builder and connects to the
    informant. In the future, the monitor will be started by compute_ctl
    and will connect to the agent.
    
    No protocol changes besides the addition of the
    monitor<->informant/agent protocol.
    
    No other changes.
  • v0.14.2
    v0.14.2
    
    (very) Minor release, changing the behavior of VMs on kernel panic.
    
    No breaking API changes.
    
    No features.
    
    Fixes:
    
    - neonvm/runner: Add panic=-1 to kernel command line (#448)
      - panic=-1 triggers restart, but we run with --no-restart, so this
        will cause QEMU to exit, and the VM runner pod to be recreated,
        ultimately meaning that we restart on kernel panic, instead of hanging.
    
    No protocol changes.
    
    No "other" changes.
    
    Upgrade path from v0.14.1:
    
    - No ordering requirements, only NeonVM updated.
  • v0.14.1
    v0.14.1
    
    This release is just bugfixes and improvements to existing behavior.
    
    No breaking API changes.
    
    No features.
    
    Fixes:
    
    - plugin: Handle VM 'Buffer' on delete (#438)
    - agent/billing: Don't record events if VM watch is failing (#439)
    - neonvm/runner: Create QEMU cgroup inside current one (#441)
      - This should fix the cAdvisor issue, and cgroup cleanup issue.
    
    No protocol changes.
    
    Other changes:
    - plugin: make Filter unknownPods less verbose (#434)
    - agent: "billed stuck" metric takes into account endpoint assignment
      timestamp (#425)
    
    Upgrade path from v0.14.0:
    
    - No ordering requirements.
  • v0.14.0
    v0.14.0
    
    This release is *mostly* a collection of bugfixes, some that were
    previously backported as hotfixes, and some more notable ones that
    haven't yet been released.
    
    No breaking API changes.
    
    No new features.
    
    Fixes:
    
    - Fix errors from `go list` due to cilium replace directives (#417)
    - agent: Fix LA-based scaling being 4x too small (#421)
    - plugin: Fix 'Buffer' underflow (#424)
      - Backported in v0.13.4
    - plugin: Ignore completed pods in Filter (#423)
      - Backported in v0.13.4
    - plugin: Fix scoring to use current resources (#426)
      - Backported in v0.13.5
    - plugin: Calculate "remaining reservable" resources via SaturatingSub (#428)
    - plugin: Fix event queue usage (#430)
      - Backported in v0.13.6
    
    No protocol changes.
    
    Other changes:
    
    - plugin: Log 'Buffer' in more places (#424)
      - Backported in v0.13.4
    
    Upgrade path from v0.13.x:
    
    - No ordering requirements.