SF#1 San Francisco User Group http://rundeck.org
Dec 04, 2014
SF#1
San Francisco User Group
http://rundeck.org
Why Rundeck? A bit of history
Big in 2010
Why Rundeck? A bit of history
Apr 2010
Why Rundeck? A bit of history
Broke process into reusable workflows
Why Rundeck? A bit of history
“the future rundeck”
Node info via Rightscale API
SSH
Why Rundeck?
Development Testing Ops
Relative time given to each project phase (YMMV)
Ops requests are interrupt driven and usually at the last moment in the project life cycle
Why Rundeck?
“Do this, then that” handoff methods don’t scale
README-------------
• “Do step 1”• “Do step 2”
• Goto README#2
and/or Tasks.xls
“Do this, then that”
and/or
Why Rundeck?
Scripts
Build tools
Package
IaaS
Cfg MgtRemote execDBsRepos
LoggingNotification
“Islands” of disconnected tools
Why Rundeck?
Scripts
Build tools
Package
IaaS
Cfg MgtRemote execDBsRepos
LoggingNotification
“Islands” across business units
Scripts
Build tools
Package
IaaS
Cfg MgtRemote execDBsRepos
LoggingNotification
Scripts
Build tools
Package
IaaS
Cfg MgtRemote execDBsRepos
LoggingNotification
Scripts
Build tools
Package
IaaS
Cfg MgtRemote execDBsRepos
LoggingNotification
Why Rundeck?
Project vision● Central service for visibility of operations tasks● “Jobs” for easy hand offs between teams and users● Create interfaces between disparate tools and
resources● Give managers auditing, access control, logging● APIs to create and share reusable “Ops services”
New idea: “Operations as a Service”
What is Rundeck?
● A Server for people that want to create reusable task automation○ Enable operations teams to be service providers○ Increase visibility and trust between teams○ Lower “mean-time to button” and a friendly end
user experience
● An open source software project at GitHub (Apache 2.0 license)
Use: Standard operating procedures
Safely share code, not error prone “this, then that” information
“NOC” user
App devs
PagerDuty incident
Use: 0-click deploy in testEnable continuous delivery for QA
Jenkins, Bamboo, Go
Nexus,Artifactory,Yum, apt
Email, Webhook,Hipchat, PagerDuty
Puppet, Chef, CFEngine,Saltstack
Use: Data processing on AWSAutomate server provisioning and data processing work
Use: VMWare test environments
Self serve provisioning of version and/or branch specific environments for testers
QA tester
Use: “Powered-by” Rundeck
● Past “tool developers” now create automation SaaS for internal users.
● API only. Users never see Rundeck GUI.○ Examples:
■ Fidelity: “click-to-compute”■ Adobe: “CDOT”■ Major bank: firmwide depl.■ Salesforce■ UShareSoft: Transcend■ Axemblr: Provisionr
Demo
Demo - Takeaways
● Job data context: Nodes and Options● Role specific access● Error-handling workflows● Plugins: logstash, hipchat, pagerduty, aws,
puppet, salt, chef, winrm, jenkins, nexus
How do you use Rundeck?
● Make jobs from multi-step workflows.● Execute tasks on nodes using your favorite
command, tool, transport and agent.● Define reusable environment independent
procedures.● Limit user access using ACL policies.
Who does what?
● Admins stand up Rundeck service● Anybody can write and run jobs● Devs create plugins ● Ops runs standard operating procedures
This is a gross generalization
System view
● Deploy standalone or as webapp● Packages: launcher, RPM/DEB, WAR● Authentication: LDAP/AD, PAM, file● Database: H2, Mysql, Oracle● Plugins: Java or shell script
Roadmap: Vote on the trello board
● Work in progress for v2.0 ○ Software stack: New grails, Java, Jetty, Bootstrap,...○ Codahale metrics library (/metrics)○ Job libraries and project SCM support○ GUI: More user friendly job follow page○ API: Endpoints for rundeck administration, ++○ Github org change: /dtolabs > /rundeck○ New logos!
< Caution: may break stuff!
< Sponsored Dev!
How to get involved
● Participate on the mail list● IRC: #rundeck on freenode● Twitter: @rundeck● Talk about your uses and successes● Write a plugin!● Submit a pull request
Sponsor a feature [email protected]