• v0.9.90 86ca363697

    0.9.90 Stable

    joshuaboniface released this 2024-01-11 10:23:02 -05:00 | 127 commits to master since this release

    Parallel Virtual Cluster version 0.9.90

    • [Client CLI/API Daemon] Adds additional backup metainfo and an emailed report option to autobackups.
    • [All] Adds a live migration maximum downtime selector to help with busy VM migrations.
    • [API Daemon] Fixes a database migration bug on Debian 10/11.
    • [Node Daemon] Fixes a race condition when applying Zookeeper schema changes.
    Downloads
  • v0.9.89 e9b6072fa0

    0.9.89 Stable

    joshuaboniface released this 2024-01-09 12:16:41 -05:00 | 136 commits to master since this release

    Parallel Virtual Cluster version 0.9.89

    • [API/Worker Daemons] Fixes a bug with the Celery result backends not being properly initialized on Debian 10/11.
    • [API Daemon] Fixes a bug if VM CPU stats are missing on Debian 10.
    Downloads
  • v0.9.88 1d480f5629

    0.9.88 Stable

    joshuaboniface released this 2023-12-29 14:57:38 -05:00 | 139 commits to master since this release

    Parallel Virtual Cluster version 0.9.88

    • [API Daemon] Adds an additional Prometheus metrics proxy for Zookeeper stats.
    • [API Daemon] Adds a new configuration to enable or disable metric endpoints if desired, defaulting to enabled.
    • [API Daemon] Alters and adjusts the metrics output for VMs to complement new dashboard.
    • [CLI Client] Adds a "json-prometheus" output format to "pvc connection list" to auto-generate file SD configs.
    • [Monitoring] Adds a new VM dashboard, updates the Cluster dashboard, and adds a README.
    Downloads
  • v0.9.87 8083b7a3e6

    0.9.87 Stable

    joshuaboniface released this 2023-12-27 13:42:49 -05:00 | 155 commits to master since this release

    Parallel Virtual Cluster version 0.9.87

    • [API Daemon] Adds cluster Prometheus resource utilization metrics and an updated Grafana dashboard.
    • [Node Daemon] Adds network traffic rate calculation subsystem.
    • [All Daemons] Fixes a printing bug where newlines were not added atomically.
    • [CLI Client] Fixes a bug listing connections if no default is specified.
    • [All Daemons] Simplifies debug logging conditionals by moving into the Logger instance itself.
    Downloads
  • v0.9.86 c64e888d30

    0.9.86 Stable

    joshuaboniface released this 2023-12-14 16:03:08 -05:00 | 176 commits to master since this release

    Parallel Virtual Cluster version 0.9.86

    • [API Daemon] Significantly improves the performance of several commands via async Zookeeper calls and removal of superfluous backend calls.
    • [Docs] Improves the project README and updates screenshot images to show the current output and more functionality.
    • [API Daemon/CLI] Corrects some bugs in VM metainformation output.
    • [Node Daemon] Fixes resource reporting bugs from 0.9.81 and properly clears node resource numbers on a fence.
    • [Health Daemon] Adds a wait during pvchealthd startup until the node is in run state, to avoid erroneous faults during node bootup.
    • [API Daemon] Fixes an incorrect reference to legacy pvcapid.yaml file in migration script.
    Downloads
  • v0.9.85 9dc5097dbc

    0.9.85 Stable

    joshuaboniface released this 2023-12-10 01:01:48 -05:00 | 209 commits to master since this release

    Parallel Virtual Cluster version 0.9.85

    • [Packaging] Fixes a dependency bug introduced in 0.9.84
    • [Node Daemon] Fixes an output bug during keepalives
    • [Node Daemon] Fixes a bug in the example Prometheus Grafana dashboard
    Downloads
  • v0.9.84 9aee2a9075

    0.9.84 Stable

    joshuaboniface released this 2023-12-09 23:47:05 -05:00 | 213 commits to master since this release

    Parallel Virtual Cluster version 0.9.84

    Breaking Changes: This release features a major reconfiguration to how monitoring and reporting of the cluster health works. Node health plugins now report "faults", as do several other issues which were previously manually checked for in "cluster" daemon library for the "/status" endpoint, from within the Health daemon. These faults are persistent, and under each given identifier can be triggered once and subsequent triggers simply update the "last reported" time. An additional set of API endpoints and commands are added to manage these faults, either by "ack"(nowledging) them (keeping the alert around to be further updated but setting its health delta to 0%), or "delete"ing them (completely removing the fault unless it retriggers), both individually, to (from the CLI) multiple, or all. Cluster health reporting is now done based on these faults instead of anything else, and the default interval for health checks is reduced to 15 seconds to accomodate this. In addition to this, Promethius metrics have been added, along with an example Grafana dashboard, for the PVC cluster itself, as well as a proxy to the Ceph cluster metrics. This release also fixes some bugs in the VM provisioner that were introduced in 0.9.83; these fixes require a reimport or reconfiguration of any provisioner scripts; reference the updated examples for details.

    • [All] Adds persistent fault reporting to clusters, replacing the old cluster health calculations.
    • [API Daemon] Adds cluster-level Prometheus metric exporting as well as a Ceph Prometheus proxy to the API.
    • [CLI Client] Improves formatting output of "pvc cluster status".
    • [Node Daemon] Fixes several bugs and enhances the working of the psql health check plugin.
    • [Worker Daemon] Fixes several bugs in the example provisioner scripts, and moves the libvirt_schema library into the daemon common libraries.
    Downloads
  • v0.9.83 988de1218f

    0.9.83 Stable

    joshuaboniface released this 2023-12-01 17:40:54 -05:00 | 274 commits to master since this release

    Parallel Virtual Cluster version 0.9.83

    Breaking Changes: This release features a breaking change for the daemon config. A new unified "pvc.conf" file is required for all daemons (and the CLI client for Autobackup and API-on-this-host functionality), which will be written by the "pvc" role in the PVC Ansible framework. Using the "update-pvc-daemons" oneshot playbook from PVC Ansible is required to update to this release, as it will ensure this file is written to the proper place before deploying the new package versions, and also ensures that the old entires are cleaned up afterwards. In addition, this release fully splits the node worker and health subsystems into discrete daemons ("pvcworkerd" and "pvchealthd") and packages ("pvc-daemon-worker" and "pvc-daemon health") respectively. The "pvc-daemon-node" package also now depends on both packages, and the "pvc-daemon-api" package can now be reliably used outside of the PVC nodes themselves (for instance, in a VM) without any strange cross-dependency issues.

    • [All] Unifies all daemon (and on-node CLI task) configuration into a "pvc.conf" YAML configuration.
    • [All] Splits the node worker subsystem into a discrete codebase and package ("pvc-daemon-worker"), still named "pvcworkerd".
    • [All] Splits the node health subsystem into a discrete codebase and package ("pvc-daemon-health"), named "pvchealthd".
    • [All] Improves Zookeeper node logging to avoid bugs and to support multiple simultaneous daemon writes.
    • [All] Fixes several bugs in file logging and splits file logs by daemon.
    • [Node Daemon] Improves several log messages to match new standards from Health daemon.
    • [API Daemon] Reworks Celery task routing and handling to move all worker tasks to Worker daemon.
    Downloads
  • v0.9.82 460a2dd09f

    0.9.82 Stable

    joshuaboniface released this 2023-11-25 15:39:56 -05:00 | 323 commits to master since this release

    Parallel Virtual Cluster version 0.9.82

    • [API Daemon] Fixes a bug where the Celery result_backend was not loading properly on Celery <5.2.x (Debian 10/11).
    Downloads
  • v0.9.81 3e001b08b6

    0.9.81 Stable

    joshuaboniface released this 2023-11-17 01:32:13 -05:00 | 326 commits to master since this release

    Parallel Virtual Cluster version 0.9.81

    Breaking Changes: This large release features a number of major changes. While these should all be a seamless transition, the behaviour of several commands and the backend system for handling them has changed significantly, along with new dependencies from PVC Ansible. A full cluster configuration update via pvc.yml is recommended after installing this version. Redis is replaced with KeyDB on coordinator nodes as a Celery backend; this transition will be handled grace fully by the pvc-ansible playbooks, though note that KeyDB will be exposed on the Upstream interface. The Celery worker system is renamed pvcworkerd, is now active on all nodes (coordinator and non-coordinator), and is expanded to encompass several commands that previously used a similar, custom setup within the node daemons, including "pvc vm flush-locks" and all "pvc storage osd" tasks. The previously-mentioned CLI commands now all feature "--wait"/"--no-wait" flags, with wait showing a progress bar and status output of the task run. The "pvc cluster task" command can now used for viewing all task types, replacing the previously-custom/specific "pvc provisioner status" command. All example provisioner scripts have been updated to leverage new helper functions in the Celery system; while updating these is optional, an administrator is recommended to do so for optimal log output behaviour.

    • [CLI Client] Fixes "--live" argument handling and duplicate restart prompts.
    • [All] Adds support for multiple OSDs on individual disks (NVMe workloads).
    • [All] Corrects and updates OSD replace, refresh, remove, and add functionality; replace no longer purges.
    • [All] Switches to KeyDB (multi-master) instead of Redis and adds node monitoring plugin.
    • [All] Replaces Zookeeper/Node Daemon-based message passing and task handling with pvcworkerd Celery workers on all nodes; increases worker concurrency to 3 (per node).
    • [All] Moves all task-like functions to Celery and updates existing Celery tasks to use new helpers and ID system.
    • [CLI Client] Adds "--wait/--no-wait" options with progress bars to all Celery-based tasks, "--wait" default; adds a standardized task interface under "pvc cluster task".
    • [Node Daemon] Cleans up the fencing handler and related functions.
    • [Node Daemon] Fixes bugs with VM memory reporting during keepalives.
    • [Node Daemon] Fixes a potential race condition during primary/secondary transition by backgrounding systemctl commands.
    • [API Daemon] Updates example provisioner plugins to use new Celery functions.
    Downloads