This document summarizes a presentation about Rudder 3.0 and the future of Rudder. Some key highlights of Rudder 3.0 include a redesigned web interface with improved performance, new status reporting features, a technique editor, and support for classifying nodes with external data. The presentation outlines future plans for Rudder 3.1 and beyond, which include improvements to the API, role-based access controls, parameterization by tags, and additional extension points.
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Rudder 3.0 and beyond
1. Normation – Tous droits réservés
normation.com
Rudder 3.0 and beyond
Jonathan Clarke
jcl@normation.com
@jooooooon42 (7 'o's)
Nicolas CHARLES
nch@normation.com
@nico_charles
2. Normation – Tous droits réservés
normation.com
Who are we?
Jonathan Clarke
Origins: Sysadmin,
infrastructure management
jcl@normation.com
@jooooooon42 (7 'o's)
Co-founded and work at
Creators of and ncf.io
Nicolas CHARLES
Origins: Development
nch@normation.com
@nico_charles
3. Normation – Tous droits réservés
normation.com
This talk is about
Rudder
Overview & History
3.0 new features
Perspectives for 3.1
and beyond
5. Normation – Tous droits réservés
normation.com
Intro: Rudder release history
2013 2014 2015
Jan Apr Jul Nov Dec March July Feb
2.5 2.6 2.7 2.8 2.9 2.10 2.11 3.0
Release history
Release schedule
Major version (2.x, 3.x) every 3 months
Minor versions (2.x.y) are strictly bug-fix only,
release when needed or at minimum every month
6. Normation – Tous droits réservés
normation.com
Rudder 3.0
Rudder 3.0
A major step forward
7. Normation – Tous droits réservés
normation.com
Rudder 3.0: Redesigned web interface
Redesigned web interface
✔ Avoid wasted space
✔ One click access to all screens
✔ Familiar Bootstrap menu bar
✔ Improved user experience
✔ Refresh data in all tables
8. Normation – Tous droits réservés
normation.com
Rudder 3.0: Redesigned web interface
Before
After
9. Normation – Tous droits réservés
normation.com
Rudder 3.0: Redesigned web interface
Wasted space
Wastedspace
Wastedspace
Useful content
Pre-3.0
10. Normation – Tous droits réservés
normation.com
Rudder 3.0: Redesigned web interface
Useful content
Now in 3.0
11. Normation – Tous droits réservés
normation.com
Rudder 3.0: Redesigned web interface
One click access to all pages
Pre 3.0: double menu
First click
Second click
Now in 3.0: one menu
12. Normation – Tous droits réservés
normation.com
Rudder 3.0: Redesigned web interface
Improved user experience
Pre 3.0: tabbed Directive page
Now in 3.0: one menu
13. Normation – Tous droits réservés
normation.com
Rudder 3.0: Redesigned web interface
As of 3.0: single page, improved layout
Always available
Save button
14. Normation – Tous droits réservés
normation.com
Rudder 3.0: Redesigned web interface
As of 3.0: single page, improved layout
15. Normation – Tous droits réservés
normation.com
Rudder 3.0: Status reporting
Status reporting
✔ Display an overview of all states for a Rule
✔ Proportional to number of nodes
✔ Proportional to number of configurations
✔ Drilldown by node or by component
✔ Display recent changes (repairs) over time
✔ List recent changes (repairs)
16. Normation – Tous droits réservés
normation.com
Rudder 3.0: Status reporting
Status reporting
Error
Unexpected
No response
Applying...
Success
Not
applicable
(eg SSH on
Windows)
Multi-colour progress bar displayed for each
rule and as a global overview
17. Normation – Tous droits réservés
normation.com
Rudder 3.0: Status reporting
Status reporting
Recent changesCompliance
18. Normation – Tous droits réservés
normation.com
Rudder 3.0: Status reporting
Overview + drilldown
Exhaustive
Focus on what is relevant
19. Normation – Tous droits réservés
normation.com
Rudder 3.0: Status reporting
History of changes on nodes
Keep an eye on what changed
20. Normation – Tous droits réservés
normation.com
Rudder 3.0: Status reporting
Overview: dashboard
21. Normation – Tous droits réservés
normation.com
Rudder 3.0: Status reporting
Reporting: behind the scenes
Two compliance modes
Full compliance
Changes only
Varies logs sent from nodes to server:
Explicit “success” message vs silence means OK + regular heartbeat
10:00 ComponentA Success
10:00 ComponentB Repaired
10:05 ComponentA Success
10:05 ComponentB Success
10:10 ComponentA Success
10:10 ComponentB Success
→ Saves a lot of bandwidth (syslog messages) + storage (DB)
10:00 ComponentB Repaired
10:10 Heartbeat I'm alive!
vs
22. Normation – Tous droits réservés
normation.com
Rudder 3.0: Technique editor
Create your own Techniques via a web interface
Technique editor
23. Normation – Tous droits réservés
normation.com
Rudder 3.0: Technique editor
Builds on the ncf framework and available methods
Technique editor
Example of a method
66generic methods as of today
24. Normation – Tous droits réservés
normation.com
Rudder 3.0: Node classification data
Insert external data to classify nodes on key=value pairs
Node classification data
1. Set key=value pairs for any nodes via the REST API
See REST API documentation on
http://www.rudder-project.org/rudder-api-doc/
Can be used to
integrate with any
third party CMDB,
inventory/asset
database, ...
25. Normation – Tous droits réservés
normation.com
Rudder 3.0: Node classification data
Insert external data to classify nodes on key=value pairs
Node classification data
1. Set key=value pairs for any nodes via the REST API
2. View, search and group in the web interface
26. Normation – Tous droits réservés
normation.com
Rudder 3.0: CLI
Wrapper for common commands
Command line interface
# rudder agent
Usage: rudder agent help
rudder agent <command> [parameters ...]
Run commands on agent.
Available commands:
disable forbid rudder-agent to be run by cron or service
enable re-enable a disabled rudder-agent
inventory force the agent to create and send a new inventory
reinit re-initialise the agent to make it be seen as a new
reset reset agent status and cache
run force run agent promises
update update promises on agent
version get the agent version
27. Normation – Tous droits réservés
normation.com
Rudder 3.0: CLI
Wrapper for common commands
Command line interface
# rudder server debug <node_IP>
# Starts a temporary cf-serverd process on a different port
# and uses a firewall rule to redirect traffic from that node
# to the temporary server, running in verbose mode
29. Normation – Tous droits réservés
normation.com
What's new in Rudder 3.0
Performance improvement
Much faster interface
Super fast compliance
Tested with 5000+ nodes
Example: List nodes page for 2000 nodes
Rudder 2.11: 2 seconds
Rudder 3.0: 80 ms
Various other changes
Package (deb/rpm) for relay servers
{yum,apt-get} install rudder-server-relay
systemd support
ncf methods
Rudder Techniques
New OS support
RHEL/CentOS 7
Debian 8
Run frequency by node
Set run frequency from
5 minutes to 6 hours
on a global schedule
+ override by node
30. Normation – Tous droits réservés
normation.com
Rudder 3.1 and beyond
Rudder > 3.0
Perspectives for the future
31. Normation – Tous droits réservés
normation.com
Rudder roadmap
Rudder 3.1 with API focus in March 2015
Beyond:
● Tags everywhere
● RBAC authorisations
● Parameters by tags
● Check only mode
● Better forms for Directives
● Technique editor that exposes parameters
● Add extension points
● Plugins for third party tools
32. Normation – Tous droits réservés
normation.com
Rudder inside!
Questions?
Jonathan Clarke
jcl@normation.com
@jooooooon42 (7 'o's)
Nicolas CHARLES
nch@normation.com
@nico_charles