Sensu Core version 0.27 is now available!

We are very excited to announce the general release of Sensu Core version 0.27, which is now available to download and install.

As some aspects of this release are considered breaking and known to be incompatible with older Sensu configurations, please see the official changelog for a complete list of fixes, new features and improvements before heading over to the downloads page to give it a whirl.

This release represents a significant set of changes to how Sensu is built, packaged and managed. The tool chain used to build Sensu has been completely overhauled to produce packages tailored to the specific platform versions that they target. This effort was undertaken in the interest of providing packages which make use of the service managers and other conventions (e.g. systemd) specific to the various platforms that Sensu runs on.

Although these changes are intended to make life easier for Sensu operators, they come with some potential pitfalls during the upgrade process. There are two major areas of concern when upgrading, both of which apply primarily to Linux platforms:

Package repository changes

Because Sensu is now being packaged for a larger number of platform-version combinations, changes to package repository configuration are required in order to install Sensu 0.27 and later.

On Debian and Ubuntu systems, the previous apt configuration was the same across the board. For 0.27, that configuration now requires the use of the distribution version “codename” (e.g. wheezy, jessie, precise, xenial). Similarly, yum repository configuration now requires use of both $releasever and $basearch variables.

For detailed information on configuring your systems for the new package repository structure, please see the 0.27 documentation for your platform. Old package repository structures will continue to work but will not be updated with newer versions of Sensu.

Service management changes

The aforementioned changes to build more tailored packages make it possible for Sensu to use service management facilities specific to the platform version where it is running. Specifically, this means that Sensu will now install systemd unit files, instead of sysv init scripts, for service management on Linux systems where systemd is the default init.

NOTE: In many cases this is not necessarily a breaking change, as most Linux platforms offer some backward compatibility in both their service and systemctl implementations, but it is worth noting that transitioning from one init style to another may cause unforeseen hiccups during the package upgrade process.

Windows client changes

For some time now Sensu has supported Windows systems as clients, and the 0.27 release collects some significant changes in the Windows package. Whereas previous versions of the Windows client used Ruby 2.0.0, which is now EOL, the new release ships with Ruby 2.3.0. Likewise, we have upgraded winsw, the wrapper used to run Sensu as a Windows service, from version 1.16 to 2.0. We believe this combination of changes will address a wide range of issues previously reported by Windows users. Finally, Windows packages are no longer built for 32bit (x86) systems.

EXCITE!!!

This release includes significant changes as described above and in the more comprehensive changelog, and our team is excited to ship these changes to Sensu users all over the world. We’ve done our best to make this upgrade experience as seamless as possible, however, some users may encounter difficulties. Should you run into problems, please make use of available support resources.