Rudder Community Blog

Rudder 4.0.6 and 4.1.3 released

The following versions were released on 23th May 2017:

  • 4.0.6 (changelog, upgrade documentation) – Rudder 4.0 will reach end of life the 30th June 2017. We recommend that any installations using 4.0 be upgraded to Rudder 4.1 as soon as possible.
  • 4.1.3 (changelog, upgrade documentation) – Rudder 4.1 will become an ESR release, after a stabilization and observation period. It will hence be maintained at least 6 months after the following ESR release is announced.

Changelog summary

In total, 3 bugs were fixed in these releases, see the full changelog (4.0, 4.1) for details. A few highlights are mentioned below.

We made this release due to a bug in rudder-agent packages, preventing it from sending an inventory right after the installation (would only be generated during inventory time (00:00 am – 06:00 am) and when triggered manually via rudder agent inventory).

Upgrading

These are bug fix releases, and all installations should be upgraded when possible.

We are impatient to hear your feedback, be it comments, questions on Twitter (@RudderProject) or on IRC (#rudder on Freenode), bug reports or feature requests on the bug tracker (or of course GitHub pull requests).

As usual, follow the upgrade documentation (4.0, 4.1) to install new releases.

Recent Weeks in Rudder – 3 (20 Feb. 2017)

This is a (approximately, and quite old … was lost in the Draft space, but better late than never!) 2 weeks summary of the activity in the Rudder community, highlighting events, discussions and development activity. Writing these updates is open, all contributions are welcome in the collaborative writing space!

Announcements and Blog Posts

  • Rudder 4.1 beta 2 and 4.1 beta 3 were published. We are getting closer to the next major release of Rudder. Feedback from users is very precious to us, thanks for testing!
    • As a side note, if you want to test file sharing between nodes in beta 3, you need to apply a fix for #10184: run “chmod 770 /var/rudder/shared-files” on all servers and relays after update.
  • Rudder 3.2 reached End-of-Life on 10th Feb. 2017, and the last update will be included in the next batch of minor releases. You should upgrade to 4.0 as soon as possible.
  • A new FAQ / knowledge base site was announced during CfgMgmtCamp, http://faq.rudder-project.org/. It contains answers to general questions about Rudder as well as frequently encountered technical problems.

Events

Development

Besides preparing the next minor releases, our main focus is currently finishing and stabilizing the 4.1 release.

    • Initial (beta) release of data source plugin for 4.1 https://github.com/Normation/rudder-plugin-datasources/releases/tag/4.1-0.2
    • Changelogs are now based on the Git log (and not only on Redmine tickets), to ensure an easy tracking of changes across branches and releases.
    • [#10214] The techniques were almost all renamed in 4.1, from small typographical changes to complete renaming. We want to get consistent, readable and understandable names. See the new naming guidelines below.
    • [#10169] Node properties can now be modified in the Web interface
    • We continued improving our release process with more automated steps and a new build server that allows us to build sources and packages of a complete Rudder release in less than 3 hours.
    • We are working on ARM builds and looking for feedback about you use cases:

The following documentation sources were added:

 

Rudder 3.1.20, 4.0.5 and 4.1.2 released

The following versions were released on 22th May 2017:

  • 3.1.20 ESR (changelog, upgrade documentation) – Rudder 3.1 ESR will be maintained 6 months after the 4.1 release is announced as ESR.
  • 4.0.5 (changelog, upgrade documentation) – Rudder 4.0 will reach end of life the 30th June 2017. We recommend that any installations using 4.0 be upgraded to Rudder 4.1 as soon as possible.
  • 4.1.2 (changelog, upgrade documentation) – Rudder 4.1 will become an ESR release, after a stabilization and observation period. It will hence be maintained at least 6 months after the following ESR release is announced.

Changelog summary

In total, 97 bugs were fixed in these releases, see the full changelog (3.1, 4.0, 4.1) for details. A few highlights are mentioned below.

These releases include the following changes:

  • [#10568, 4.1] You can now adapt the behavior of Rudder when a Node is deleted with hooks
  • We made a lot of changes to the documentation to improve its content, and its readability, so we hope that this new version of the documentation is much more interesting for you to use.

The following important bugs were fixed:

  • [#8774, 3.1, 4.0 and 4.1] A read only user can access API tokens (which have read/write access)
  • [#10734, 3.1, 4.0 and 4.1] Installation fails due to broken nss/nss-softokn detection on CentOS6
  • [#9448, 3.1, 4.0 and 4.1] Missing “user techniques” in the technique editor when exporting / importing archives
  • Lots of small glitches in UI fixed
  • Lots of reporting bugs in techniques fixed

Upgrading

These are bug fix releases, and all installations should be upgraded when possible.

We are impatient to hear your feedback, be it comments, questions on Twitter (@RudderProject) or on IRC (#rudder on Freenode), bug reports or feature requests on the bug tracker (or of course GitHub pull requests).

As usual, follow the upgrade documentation (3.1, 4.0, 4.1) to install new releases.

Rudder 3.1.19, 4.0.4 and 4.1.1 released

The following versions were released on 19th April 2017:

  • 3.1.19 (changelog, upgrade documentation) – Rudder 3.1 is currently the ESR version of Rudder. It will be maintained 6 months after the 4.1 release is considered as ESR.
  • 4.0.4 (changelog, upgrade documentation) – Rudder 4.0 is currently the old-latest release of Rudder. It will reach end of life the 30th June 2017. We recommend that any installations using 4.0 be upgraded to Rudder 4.1 as soon as possible.
  • 4.1.1 (changelog, upgrade documentation) – Rudder 4.1 is currently the latest stable release of Rudder. It will become the next ESR release, after a stabilization and observation period. It will hence be maintained at least 6 months after the following ESR release is announced.

Changelog summary

In total, 59 bugs were fixed in these releases, see the full changelog (3.1, 4.0, 4.1) for details. A few highlights are mentioned below.

These releases include the following changes:

  • [#10556, 4.1] rudder-server-relay now includes a new rudder-pkg command. Alongside with a package format (.rpkg), it allows easy installation and upgrade of Rudder plugins. In particular, plugins will now be kept across Rudder upgrades.
  • [#10576 3.1, 4.0 and 4.1] After noticing the Rudder agent was particularly slow when manipulating policies containing large variables, for example many instances of the same technique, we looked for the cause. We found an inefficient handling of variables in some contexts, leading to a lot of useless copies of variables in memory. Fixing this issue allows adding 500 users on a node in 16 seconds (compared to 10 minutes previously). The run time for an almost empty policy can be reduced up to 50% as well. This change has two practical effects:
    • Greatly lower the agent’s run time, allowing large policies to run smoothly, and reducing the overhead of the agent
    • Improve the policy generation time thanks to faster policy syntax checks

The following important bugs were fixed:

  • [#10312, 3.1, 4.0 and 4.1] The “Download files from the shared folder” technique may replace an existing directory instead of copying a file inside
  • [#9448, 3.1, 4.0 and 4.1] Missing “user techniques” in the technique editor when exporting / importing archives
  • [#10569, 4.1] JSON node properties added from the Web interface are considered as plain text
  • [#10574, 4.1] Rudder Debian 8 repository contains unneeded packages from backports repositories (that cause dependency issues when running an upgrade or dist-upgrade)

Upgrading

These are bug fix releases, and all installations should be upgraded when possible.

We are impatient to hear your feedback, be it comments, questions on Twitter (@RudderProject) or on IRC (#rudder on Freenode), bug reports or feature requests on the bug tracker (or of course GitHub pull requests).

As usual, follow the upgrade documentation (3.1, 4.0, 4.1) to install new releases.

Rudder 3.1.18, 3.2.11 and 4.0.3 released

The following versions were released on 20th February 2017:

  • 3.1.18 (changelog, upgrade documentation) – Rudder 3.1 is currently the ESR version of Rudder. It will be maintained 6 months after the next ESR release is announced.
  • 3.2.11 (changelog, upgrade documentation) – Rudder 3.2 was the latest release before 4.0, and it reached end of life the 10th February 2017, this release will hence be the last on the 3.2.x branch. We recommend that any installations still using 3.2 be upgraded to Rudder 4.0 as soon as possible.
  • 4.0.3 (changelog, upgrade documentation) – Rudder 4.0 is currently the latest stable release of Rudder. It will be maintained 3 months after the next major release comes out.

These are bug fix releases, and all installations should be upgraded when possible. We are impatient to hear your feedback, be it comments, questions on Twitter (@RudderProject) or on IRC (#rudder on Freenode), bug reports or feature requests on the bug tracker (or of course GitHub pull requests).

Changelog summary

The following important bugs were fixed:

  • [#9872, 3.1, 3.2 and 4.0] The service management technique is not able to disable services at boot.
  • [#9500, 3.1, 3.2 and 4.0] The technique to copy files from the Rudder server reports an error when destination is a symbolic link.
  • [#9913, 3.1, 3.2 and 4.0] SELinux configuration is missing in rudder-server-relay package, SELinux can now be enabled on relays.
  • [#9822, 3.1, 3.2 and 4.0] Jobs are not run in Technique JobScheduler 2.0.
  • [#10171, 3.1, 3.2 and 4.0] If the Rudder Web Interface is interrupted during the second step of reports archiving, then it would never succeed in archiving again.

These releases include some new features:

  • [#9976, 3.1, 3.2, and 4.0] API endpoint to get information about queue status of uploaded inventories.
  • [#10157, 3.1, 3.2, and 4.0] Option to not display rule status/recent changes in directives screen, this allows improving performance of the directive page for large deployments.
  • [#7422, 3.1, 3.2, and 4.0] Node breakdown in the dashboard now displays actual numbers in addition to percentages.

 

Recent Weeks in Rudder – 2 (30 Jan. 2017)

This is a (approximately) 2 week summary of the activity in the Rudder community, highlighting events, discussions and development activity. Writing these updates is open, all contributions are welcome in the collaborative writing space!

Announcements and Blog Posts

  • There will be a Rudder room at CfgMgmtCamp (Monday, February 6)!
  • Rudder 4.1 beta 1 was released (changelog). The features planned for the final release are all included, with some rough edges for now. For reference, these features include:
    • A new API on all Rudder relays, allowing remote triggering of the agent and file sharing between nodes.
    • Datasources, to integrate data from external APIs into Rudder policies. This feature will be available as a plugin for Rudder. We are currently improving our development and build processes for plugins, and you will likely see new Rudder plugins in the future. Why use plugins?
      • They help to keep Rudder’s code base lighter and simpler
      • They allow for more flexible release management, by adding or updating features without affecting the main Rudder application
      • They allow installing some advanced features only when they are needed, keeping the default user interface simple
    • Tags on directives and rules, to allow an easy filtering. Here is an overview of Directives filtering:

Events

  • [Upcoming] Rudder community will gather at the Rudder room at CfgMgmtCamp, 6 and 7 Feb., Gent (Belgium)

Development

  • Work on the 4.1 release, see the beta 1 changelog for details.
  • Load testing was made on 3.1 and 4.0 versions, and will lead to performance improvements in the next minor releases (#9835 and #9869).
  • Packaging change in 4.1: rudder-server-relay is now a dependency of rudder-webapp. This package now does all the policy distribution and inventory collection on both root server and relay servers. It is totally transparent for users and require no specific action.
  • We worked on changing the Java required version in 4.1 to Java 8 (#9917). This will lead to some minor changes in our dependencies, but we will provide the necessary package to avoid having to another repository for platforms that do not provide Java 8. This will be documented in installation documentation before the final release.

The following documentation sources were updated:

Rudder room at CfgMgmtCamp Gent 2017

The Rudder community will soon gather at the occasion of the Configuration Management Camp Gent.

The Configuration Management Camp is an event for people interested in Open Source configuration management, that exists since 2014. It is a community-oriented event where different projects meet each other and share knowledge and experiences internally. The Rudder community has been participating since the first edition, and will this year will have a dedicated room for the first time. Presentations will be made by Rudder developers and users, and we will also keep time for open discussions.

The Rudder room will take place the Monday, February 6 (in room B4.042) . The planned schedule is:

And in the main track, the Tuesday, February 7:

We look forward to meeting you! You can subscribe to this blog to get notified when we publish the slides and summaries of the talks.

Recent Weeks in Rudder – 1 (20 Dec. 2016)

This is a (approximately) 2 week summary of the activity in the Rudder community, highlighting events, discussions and development activity. Writing these updates is open, all contributions are welcome in the collaborative writing space!

Announcements and Blog Posts

Events

Development

  • We started working on Rudder 4.1, the two main features will be an API on all Rudder relays allowing file sharing between nodes and remote run across relay, and a way to include data from external APIs in Rudder properties
    • #8353 Implement notifications for different server-side actions and events (hooks), with ongoing discussion about implementation in the issue
    • #9698 Import node properties from external data sources
    • #9707 Relay API for file sharing between nodes and remote run across relays, see the thread on [rudder-dev] for more information
    • #9698 Import node properties from external Web APIs
    • #9733 Add tags in Directive/Rules
    • #9737 Upgrade of CFEngine in Rudder agent to 3.10.0b1 (3.10 will be the next LTS release, and includes major performance improvements for data manipulation)
  • #9706 Discussion about a new method to set sysctl settings
  • Reworked README for the main project, including a functional diagram of Rudder
  • The changelogs have all be moved from the old foswiki to the Rudder project website, and the sources are now in git
  • Updated Reference documentation about Techniques (including new report types in 4.0), that now live in the manual

Rudder 3.1.17, 3.2.10 and 4.0.2 released

The following versions were released on 12th December 2016:

  • 3.1.17 (changelog, upgrade documentation) – Rudder 3.1 is currently the ESR version of Rudder. It will be maintained 6 months after the next ESR release is announced.
  • 3.2.10 (changelog, upgrade documentation) – Rudder 3.2 was the latest release before 4.0, and it will reach end of life the 10th February 2017. We recommend that any installations still using 3.2 be upgraded to Rudder 4.0 as soon as possible.
  • 4.0.1, followed the 20th December by 4.0.2 (changelog, upgrade documentation) – Rudder 4.0 is currently the latest stable release of Rudder. It will be maintained 3 months after the next major release comes out.

These are bug fix releases, and all installations should be upgraded when possible. We are impatient to hear your feedback, be it comments, questions on Twitter (@RudderProject) or on IRC (#rudder on Freenode), bug reports or feature requests on the bug tracker (or of course GitHub pull requests).

Changelog summary

Note: The 4.0.1 release contained an inconvenient warning message in the scripts that regularly checks Rudder agent state (#9799), and a bug in the display of the “Download a file from the shared folder” Directive (#9804), which lead to quickly release the 4.0.2 version.

The 4.0.1 and 4.0.2 releases fix some rough edges of the initial 4.0 release. No major issues have been reported, and 3.2 users should consider upgrading to 4.0 soon (as support will end 10th February 2017).

The following important bugs were fixed:

  • [#9402, 3.1, 3.2 and 4.0] The promises were not updated when the node properties were updated using the API, which lead to out-of-sync node properties on the nodes.
  • [#9761, 3.1, 3.2 and 4.0] It is now possible to upgrade to a specific version (that may not be the latest) in the apt and rpm package techniques, as well as in the package_install* generic methods.
  • [#9751, 3.2 and 4.0] No error output in “rudder agent update” when the agent could not download configuration from its policy server
  • [#9691, 4.0] The “node.env” special variable containing the environment variables on the node was broken

These releases include some new features:

  • [#8127, 3.1, 3.2, and 4.0] The inventories are now checked on agent side, just after their creation, to avoid sending broken inventories. It avoids having to wait for 24 hours when the first inventory after installation is done before all necessary information are available.

The documentation have also been improved:

 

New Rudder blog – a community channel

A blog for the Rudder community

We decided to open a new communication channel for the Rudder community. Its main goal is to provide a place for development and community-oriented content, easier to discover and browse than mailing-list archives.

This blog will include:

  • Major and minor release announcements, with a focus on highlighting important changes and fixes
  • Regular news about Rudder development, called Recent weeks in Rudder (see the explanation below)
  • and more!

This blog is an open place for the community, and we would be glad to publish content from users outside of the development team.

Recent weeks in Rudder

Like other Open Source projects already do (for example This Week in Rust), we want to create a regular newsletter about Rudder community and development activity. It will centralize links to all recent content about Rudder, and will summarize the activity of the development team.

It will be published every few weeks (2 is the initial goal, but it may vary depending on the activity level), the first one will be published very soon. Writing these updates is public and open, and anyone can propose changes in the collaborative writing space.

Get notified and contribute!

To follow the Rudder news, you can subscribe to the RSS feed of this blog using your favorite feed reader. Furthermore, this blog is open to contributions from Rudder developers and users, so if you want to share Rudder usecases, tips, etc., you can send your post proposals to contact@rudder-project.org.