<div dir="ltr">We are proud to <span class="gmail-il">announce</span> that the 1.x release of
 ClusterVisor is now publicly available for those who want to upgrade 
from the 0.x release. The 1.x release includes many changes and 
improvements such as a revamped stats database, integration with SLURM, a
 new-and-improved redesign of the web interface, a new appliance node to
 help facilitate disaster recovery, and much more. All of the details 
can be found in our webinar that we made for the new release: <a href="https://www.advancedclustering.com/did-you-miss-our-clustervisor-1-x-launch-webinar-watch-it-here/" target="_blank">https://www.advancedclustering.com/did-you-miss-our-clustervisor-1-x-launch-webinar-watch-it-here/</a><br><br>Aside
 from critical bug patches, the 0.x release will not be receiving any 
further updates. So any and all new features for ClusterVisor will 
require upgrading to the 1.x, however we will continue to support 0.x 
releases should you wish to stay on that version for whatever reason. 
Also, while upgrading from 0.x to 1.x is free, it does require some 
migrations to be performed so if this is something you are interested in
 please contact us at <a href="mailto:support@advancedclustering.com" target="_blank">support@advancedclustering.com</a>
 and one of our technical support agents can help guide you through the 
process of getting the latest version of ClusterVisor on your cluster.<br><br>As a brief reminder as it is covered at the beginning of the aforementioned webinar above, the version schema is a bit different in the 1.x release. Now the version is tracked as 1.YY.MM-BUILD where YY is the year (23 for 2023), MM is the month (04 for April), and BUILD is the build ID (which monotonically increments with each build we make of CV); lastly the "1." for the major version will indicate compatibility and no breaking changes with your current setup, such that all new releases in 1.x can be upgraded via a `dnf update`. The
 rest of this email will be the release notes for all of the changes 
made between 0.5.44-5 and 1.23.04-2316 listed chronologically in reverse
 order:<br><br>Release 1.23.04<br><ul><li>Fourth Release</li></ul><ul style="margin-left:40px"><li>Fixed file handler limits in cv-serverd and cv-statsd daemons</li><li>Optimized performance of cv-stats to better handle querying large number of nodes</li><li>Optimized cv-clientd to minimize server calls on start to better handle large number of nodes starting at the same time</li><li>Optimized cv-serverd to maximize performance when initializing clients starting up</li><li>Fixed client-side to also handle chunked munge data for larger packets</li><li>Fixed bug in the networking config plugin to handle IP aliases correctly in EL9</li><li>Fixed bug in power stat plugin where it will disable itself if any IPMI query times out</li><li>Updated migrations to handle new format used by racklayout</li><li>Added --merge and --migrate to cv-db-image</li><li>Patched appliance-install script to ensure that cv-serverd is online before running CV client scripts</li><li>Patched cv-installer to use MongoDB 4.0 in EL9 to mitigate against cv-db-image breaking from API changes in 4.2+</li><li>Fixed bug where units for user-defined group stats were not included in the stat definition</li><li>Fixed bug in node selectors so that --rack and --chassis both work as expected again</li><li>Fixed bug in firmware stat plugin for bmc_version stat</li></ul><ul><li>Third Release</li></ul><ul style="margin-left:40px"><li>Patches clustervisor-migrate package to install with the correct dependencies without trying to upgrade CV to 1.x too early</li></ul><ul><li>Second Release</li></ul><ul style="margin-left:40px"><li>Fixed typo in schema file</li><li>Fixed bug in Slurm accounting API</li><li>Added fallback in megaraid stat plugin to check /opt/MegaRAID for storcli binary</li><li>Patched installer to use 4.0 for MongoDB to fix deprecation that breaks cv-db-image</li><li>Fixed bug in networking config plugin</li><li>Removed file handle cap on cv-serverd and cv-statsd</li><li>Fixed handling renames when no plugins have been run on the node yet</li><li>Patched cv-stats to support appliance nodes</li></ul><ul><li>First Release</li></ul><ul style="margin-left:40px"><li>Fixed bug in cv-reconfigure missing a variable definition</li><li>Fixed bug in networking config plugin that erroneously reconfigured the firewall</li><li>Fixes bug in infiniband stat plugin to run without crashing when counters are not present</li><li>Fixes bug in emails sent by monitoring rules having the wrong description</li><li>Adds ability to enable/disable monitoring actions without needing to disable every rule attached to it</li></ul>Release 1.23.03<br><ul><li>Fifth Release</li></ul><ul style="margin-left:40px"><li>Changed
 cv-statsd to not delete past retention period on start nor during loop,
 only delete what ought to be deleted since the time it started; this 
offsets the edge case of expensive starts of cv-statsd after long gaps 
of inactivity to clear out older stats to a later point in time of the 
sysadmin's choosing</li><li>Patches plugin system behavior when appliance is not present</li><li>Added --toggle-stats to cv-serveradm to toggle on/off the stats loop in cv-serverd without restarting the server</li><li>Added --offline to cv-migrate to tweak migrations to support offline clusters</li><li>Prevent clustervisor-migrate package from updating any other CV packages</li><li>Improved error messages in cv-installer</li><li>Patched bug in cloner-reconfigure writing erroneous entries to GRUB in EL8</li><li>Patched bug in Slurm wrapper for CV not returning the correct HTTP status codes</li><li>Patched bug in IPMI stat plugin to prevent disabling the plugin from false positives during runtime</li><li>Added handler for "firewall" field to networking config plugin to enable/disable firewalld</li><li>Fixed config template for cluster-mces-errors monitoring rule</li><li>Fixed edge case bug for config plugins firing when not triggered by unrelated fields</li><li>The help text for 'list-roles' is now 'distro-roles' in cv-image image-new</li><li>Added cv-slurmadm to synchronize system users with slurm users</li><li>Patched cv-useradm to delete LDAP users from groups when a user is being deleted</li></ul><ul><li>Fourth Release</li></ul><ul style="margin-left:40px"><li>Makes clustervisor-migrate package accessible in air gap environments</li><li>Fixes behavior in cv-useradm when deleting LDAP users to also remove them from their groups first</li></ul><ul><li>Third Release</li></ul><ul style="margin-left:40px"><li>Fixes build system to embed the correct cloner-reconfigure binary in the EL9 release of the RPMs</li></ul><ul><li>Second Release</li></ul><ul style="margin-left:40px"><li>Fixes race condition in config plugin system in cv-serverd</li><li>Fixes
 cloner-reconfigure to use a backwards compatible build to ensure cloner
 works for any supported OS combination regardless of the hosting OS 
version</li></ul><ul><li>First Release</li></ul><ul style="margin-left:40px"><li>Fixed bug in cv-image to ensure clustervisor-client package is fully installed during image creation</li><li>Fixed bug in cv-statsd causing partial crashing behavior when device list is changed</li><li>Fixes bug in power stats plugin for slower IPMI devices</li><li>Removes clustervisor-migrate package when updating clustervisor-server if it is still installed</li></ul>Release 1.23.02<br><ul><li>Second Release</li></ul><ul style="margin-left:40px"><li>Fixes
 bug in cv-statsd that causes process to hang after two weeks of 
continuously running (e.g. after the first data retention period for 
stats data)</li><li>Improveed performance of cv-statsd</li><li>Minor bug fixes for stat plugins used by cv-clientd (i.e. disks, mem, net, power, and tuned)</li></ul><ul><li>First Release</li></ul><div style="margin-left:40px">Server:<br></div><ul style="margin-left:40px"><li>Fixed edge case for handling renamed or deleted monitoring rules to cease tracking them afterwards.</li><li>Added stat plugin for BIOS and BMC versions.</li><li>Added templates for common monitoring rules</li><li>Added feature to cv-image to update an installed OS to the packages and config in the cv-image template</li><li>Include new plugins added in 1.x to migration from 0.x to 1.x for nodes.</li><li>Fixed minor bug in cv-serverd that occurred sometimes on startup</li><li>Fixed minor bug in cloner for EL8 and existing systems</li><li>Fixed cloner to not require installation of clustervisor-client in image during cloning process</li></ul><div style="margin-left:40px">Web:<br></div><ul style="margin-left:40px"><li>Added heatmap min/max support to the rack dashboard widget</li><li>Added templates for dashboard and device details, includes upload/download for templates</li><li>Added support for 0U slots for PDUs in rack diagram</li><li>Added lazy loading for device details charts for tabs with multiple devices to improve first load time</li><li>Fixed exports download to work for non-Chrome browsers</li><li>Fixed minor issues with monitoring rules, expression builder, and dashboard shown in web interface</li></ul>Release 1.23.01<br><div style="margin-left:40px"><i>Highlights of the changes made (in no particular order)</i></div><ul><li>New global tmp directory within CVNew schema version, 1.0 to 1.1</li><li>New /clustervisor directory for holding application state (backups, images, netboot, databases, etc)</li><li>New hourly backup of the ClusterVisor database<br></li><li>New appliance system for dedicated nodes running ClusterVisor</li><li>New templates system for more quickly creating configuration entries</li><li>Renamed cv-yumrepod to cv-packaged</li><li>New test profile system for the testing framework</li><li>Moved the server plugins into the common module; now called the "config plugins"</li><li>New config plugins added: limits, lmod, selinux, bootoptions, tuned</li><li>ClusterVisor is now licensed and requires a license file from ACT to start the ClusterVisor server</li><li>Config plugins are now run on compute nodes to distribute load and remove majority of server caching</li><li>Bug fixes for cv-authsync, cv-conf, cv-clientd, and the config plugin system</li><li>Addition to cv-cloner to show cloner states</li><li>Addition to cv-commit to clear both reconfigure and overflow queue from the utility</li><li>Addition to cv-serveradm to send a test email</li><li>Addition to cv-clientd to retain its own stats in memory</li><li>Addition to cv-conf to support multi-line strings in YAML</li><li>Addition to cv-serverd to serve a bootstrapping system for new nodes</li><li>Addition to ldapauth plugin to support multiple LDAP domains</li><li>Addition to yumrepo_server to support multiple repos</li><li>Addition to ssh config plugin to support setting the PermitRootLogin setting for the SSH server</li><li>Addition to cv-reconfigure to re-run enable instructions for config plugins on demand</li><li>Addition to cli commands with node selectors to include -A / --appliance for including appliance nodes</li><li>Added cv-scheduler to interop with slurm</li><li>Added common.cv_parser for handling expression language</li><li>Added common.cv_sqlite for interfacing with SQLite databases</li><li>Added cv-migrate to migrate from 0.x to 1.x</li><li>Added cv-image for building base install images to bootstrap nodes</li><li>Added appliance collection and support for multiple collections that map to a "node-like" entity</li><li>Added an automated installation system for the appliance</li><li>Fixed memory leak bug in pymunge</li><li>Node groups are now a collection that link to devices (not just nodes)</li><li>Authorized SSH keys for root user can now be distributed using new config.ssh configurations</li><li>Nodes can now be bootstrapped into ClusterVisor through a single command provided by the server</li><li>Support added for EL9</li><li>Rewrote stat plugins and moved into common package</li><li>Removed background server plugins (was deprecated)</li><li>Removed hide_* fields from config.permissions (no longer needed after web UI rewrite)</li><li>Removed 0.4 schema (was deprecated)</li><li>Replaced InfluxDB with cv-statsd and new custom stats database system</li><li>Replaced the monitoring system, now uses new stats database and expression language</li></ul></div>