Rundeck's History and Future


Published on

Alex Honor's presentation at the San Francisco Rundeck Meeting in September 2013.

Published in: Technology

Rundeck's History and Future

  1. 1. SF#1 San Francisco User Group
  2. 2. Why Rundeck? A bit of history Big in 2010
  3. 3. Why Rundeck? Apr 2010 A bit of history
  4. 4. Why Rundeck? A bit of history Broke process into reusable workflows
  5. 5. Why Rundeck? A bit of history “the future rundeck” SSH Node info via Rightscale API
  6. 6. Why Rundeck? Relative time given to each project phase (YMMV) Development Testing Ops Ops requests are interrupt driven and usually at the last moment in the project life cycle
  7. 7. Why Rundeck? README ------------• “Do step 1” • “Do step 2” and/or Tasks.xls and/or “Do this, then that” • Goto README#2 “Do this, then that” handoff methods don’t scale
  8. 8. Why Rundeck? “Islands” of disconnected tools B d uil gt ols to gM f Notification mo C DBs Repos Script s Re te e xe Packa ge Logging IaaS c
  9. 9. Why Rundeck? “Islands” across business units ild Bu gt M g ls too Re Cf te DBs Repos Scrip ts mo ex d uil d il Bu ec Notification Re Cf mo te Packa ts ge Re Cf mo te DBs d ex ls too ec Logging gM gt Re Cf mo te DBs Repos Scrip Packa ge IaaS il Bu Logging IaaS Notification gt M g ts Notification ex ec DBs Logging Repos ts to gt Repos Scrip IaaS ls too Scrip gM B Packa ge Notification ols ex ec Packa ge IaaS Logging
  10. 10. 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”
  11. 11. 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)
  12. 12. Use: Standard operating procedures Safely share code, not error prone “this, then that” information “NOC” user App devs PagerDuty incident
  13. 13. Use: 0-click deploy in test Enable continuous delivery for QA Jenkins, Bamboo, Go Nexus, Artifactory, Yum, apt Email, Webhook, Hipchat, PagerDuty Puppet, Chef, CFEngine, Saltstack
  14. 14. Use: Data processing on AWS Automate server provisioning and data processing work
  15. 15. Use: VMWare test environments Self serve provisioning of version and/or branch specific environments for testers QA tester
  16. 16. 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
  17. 17. Demo
  18. 18. 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
  19. 19. 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.
  20. 20. Who does what? This is a gross generalization ● ● ● ● Admins stand up Rundeck service Anybody can write and run jobs Devs create plugins Ops runs standard operating procedures
  21. 21. 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
  22. 22. Roadmap: Vote on the trello board ● Work in progress for v2.0 < Caution: may break stuff! ○ ○ ○ ○ ○ ○ ○ Software stack: New grails, Java, Jetty, Bootstrap,... Codahale metrics library (/metrics) Job libraries and project SCM support GUI: More user friendly job follow page < Sponsored API: Endpoints for rundeck administration, ++ Dev! Github org change: /dtolabs > /rundeck New logos!
  23. 23. 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 enhancement