Rudder 3.0 and beyond
-
Upload
jonathan-clarke -
Category
Technology
-
view
465 -
download
1
Transcript of Rudder 3.0 and beyond
Normation – Tous droits réservésnormation.com
Rudder 3.0 and beyond
Jonathan Clarke
[email protected]@jooooooon42 (7 'o's)
Nicolas CHARLES
[email protected]@nico_charles
Normation – Tous droits réservésnormation.com
Who are we?
Jonathan Clarke
Origins: Sysadmin,infrastructure management
[email protected]@jooooooon42 (7 'o's)
Co-founded and work at
Creators of and ncf.io
Nicolas CHARLES
Origins: Development
[email protected]@nico_charles
Normation – Tous droits réservésnormation.com
This talk is about
RudderOverview & History
3.0 new features
Perspectives for 3.1 and beyond
Normation – Tous droits réservésnormation.com
Intro: Rudder overview
DesktopCloudDatacenter Smart infrastructureMobile
3. Universality – Lightweight & multi-platform agent technology
1. Simplification – Web interface, role separation
2. Compliance – Continuous checking
Normation – Tous droits réservésnormation.com
Intro: Rudder release history
2013 2014 2015Jan 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 scheduleMajor 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
Normation – Tous droits réservésnormation.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
Normation – Tous droits réservésnormation.com
Rudder 3.0: Redesigned web interface
Wasted space
Was
ted
sp
ace
Was
ted
sp
ace
Useful content
Pre-3.0
Normation – Tous droits réservésnormation.com
Rudder 3.0: Redesigned web interface
Useful content
Now in 3.0
Normation – Tous droits réservésnormation.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
Normation – Tous droits réservésnormation.com
Rudder 3.0: Redesigned web interface
Improved user experiencePre 3.0: tabbed Directive page
Now in 3.0: one menu
Normation – Tous droits réservésnormation.com
Rudder 3.0: Redesigned web interface
As of 3.0: single page, improved layout
Always available Save button
Normation – Tous droits réservésnormation.com
Rudder 3.0: Redesigned web interface
As of 3.0: single page, improved layout
Normation – Tous droits réservésnormation.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)
Normation – Tous droits réservésnormation.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
Normation – Tous droits réservésnormation.com
Rudder 3.0: Status reporting
Status reporting
Recent changesCompliance
Normation – Tous droits réservésnormation.com
Rudder 3.0: Status reporting
Overview + drilldownExhaustiveFocus on what is relevant
Normation – Tous droits réservésnormation.com
Rudder 3.0: Status reporting
History of changes on nodesKeep an eye on what changed
Normation – Tous droits réservésnormation.com
Rudder 3.0: Status reporting
Reporting: behind the scenesTwo compliance modesFull complianceChanges only
Varies logs sent from nodes to server:Explicit “success” message vs silence means OK + regular heartbeat
10:00 ComponentA Success10:00 ComponentB Repaired10:05 ComponentA Success10:05 ComponentB Success10:10 ComponentA Success10:10 ComponentB Success
→ Saves a lot of bandwidth (syslog messages) + storage (DB)
10:00 ComponentB Repaired
10:10 Heartbeat I'm alive!
vs
Normation – Tous droits réservésnormation.com
Rudder 3.0: Technique editor
Create your own Techniques via a web interfaceTechnique editor
Normation – Tous droits réservésnormation.com
Rudder 3.0: Technique editor
Builds on the ncf framework and available methodsTechnique editor
Example of a method
66 generic methods as of today
Normation – Tous droits réservésnormation.com
Rudder 3.0: Node classification data
Insert external data to classify nodes on key=value pairsNode classification data
1. Set key=value pairs for any nodes via the REST API
See REST API documentation onhttp://www.rudder-project.org/rudder-api-doc/
Can be used to integrate with any third party CMDB, inventory/asset database, ...
Normation – Tous droits réservésnormation.com
Rudder 3.0: Node classification data
Insert external data to classify nodes on key=value pairsNode classification data
1. Set key=value pairs for any nodes via the REST API2. View, search and group in the web interface
Normation – Tous droits réservésnormation.com
Rudder 3.0: CLI
Wrapper for common commandsCommand 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 node on the server reset reset agent status and cache run force run agent promises update update promises on agent version get the agent version
Normation – Tous droits réservésnormation.com
Rudder 3.0: CLI
Wrapper for common commandsCommand 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
Normation – Tous droits réservésnormation.com
Rudder 3.0: CLI
Collect and centralise usage statistics to help development
Usage statistics (opt-in, anonymous)
"audit_log_enabled": "true", "reportscleaner_frequency": "daily", "os_name": "Debian", "uuid": "9480df7a-249c-4972-9593-648a60f769a1", "report_line_count": "16427", "expected_report_count": "118", "nodes_count": "3", "parameter_count": "1", "report_db_size": "8272 kB", "rule_count": "10", "reportscleaner_archive_ttl": "3", "os_version": "7.4", "installation_date": "2015-01-30 08:56:58.982185054 +0000", "db_size": "16 MB", "package_version": "rudder-server-root 3.0.0-wheezy0", "report_count_last_day": "156", "directive_count": "14", "reportscleaner_delete_ttl": "90", "agent_run_interval": "5", "rudder_workflow_enabled": "false”
Sample statistics
Normation – Tous droits réservésnormation.com
What's new in Rudder 3.0
Performance improvementMuch faster interfaceSuper fast complianceTested with 5000+ nodes
Example: List nodes page for 2000 nodesRudder 2.11: 2 secondsRudder 3.0: 80 ms
Various other changes
Package (deb/rpm) for relay servers{yum,apt-get} install rudder-server-relay
systemd supportncf methodsRudder Techniques
New OS supportRHEL/CentOS 7Debian 8
Run frequency by nodeSet run frequency from5 minutes to 6 hourson a global schedule+ override by node
Normation – Tous droits réservésnormation.com
Rudder 3.1 and beyond
Rudder > 3.0
Perspectives for the future
Normation – Tous droits réservésnormation.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
Normation – Tous droits réservésnormation.com
Rudder inside!
Questions?
Jonathan Clarke
[email protected]@jooooooon42 (7 'o's)
Nicolas CHARLES
[email protected]@nico_charles