interfacing infrastructure as code with non expert users
play

Interfacing infrastructure as code with non-expert users Jonathan - PowerPoint PPT Presentation

Interfacing infrastructure as code with non-expert users Jonathan CLARKE jcl@normation.com @jooooooon42 (that's 7 'o's) Normation CC-BY-SA normation.com Who am I? Jonathan Clarke Origins: Sysadmin, infrastructure management Work at


  1. Interfacing infrastructure as code with non-expert users Jonathan CLARKE – jcl@normation.com @jooooooon42 (that's 7 'o's) Normation – CC-BY-SA normation.com

  2. Who am I? Jonathan Clarke Origins: Sysadmin, infrastructure management Work at Creator of and ncf.io Co-organizer of events: 2 Normation – CC-BY-SA normation.com

  3. Automated configuration rocks! Automated configuration rocks! Save time Improve reliability Deploy faster & be more Avoid manual errors, responsive to changes harmonize configurations Scalable Manage 1 to > 100000 servers the same way 3 Normation – CC-BY-SA normation.com

  4. Automated configuration rocks! Automated The proper way configuration rocks! to manage systems Save time Improve reliability Deploy faster & be more Avoid manual errors, responsive to changes harmonize configurations Scalable Manage 1 to > 100000 servers the same way 4 Normation – CC-BY-SA normation.com

  5. On automation and sharing “Typical” IT team Develop applications and deploy them, manage IT operations, security, etc etc etc ... 5 Normation – CC-BY-SA normation.com

  6. On automation and sharing “Typical” IT team adopts CM A minority of the team will learn a tool and it's language. Let's call them “the experts”. 6 Normation – CC-BY-SA normation.com

  7. On automation and sharing What about the others? Changes, deployments, new features... all end up requiring <your chosen CM tool>, therefore the “experts”. 7 Normation – CC-BY-SA normation.com

  8. On automation and sharing What about the others? ? ? ? ? They have a choice: learn or get left behind. 8 Normation – CC-BY-SA normation.com

  9. On automation and sharing Does this look good? ? ? ? ? Are we actually standing in the way of automated configuration by pushing ahead? 9 Normation – CC-BY-SA normation.com

  10. On automation and sharing What are we asking users to do? BEFORE ssh box.company.com rpm -i software .rpm vi /etc/ software .conf service software restart AFTER (or similar!) and more, and git/svn, etc... 10 Normation – CC-BY-SA normation.com

  11. Getting everyone on board? Getting everyone on board for infrastructure as code is hard Steep learning curve Lack of motivation New concepts, non obvious “What do I have to gain syntaxes, paradigm, ... from using this tool?” Frustration “I can do it quicker by hand or with a shell script” 11 Normation – CC-BY-SA normation.com

  12. Or as XKCD puts it... 12 Normation – CC-BY-SA normation.com Illustration CC BY-NC 2.5 from http://xkcd.com

  13. Example of getting non-experts to use complex stuff 13 Normation – CC-BY-SA normation.com Photo CC BY-NC-SA 2.0 from https://www.flickr.com/photos/albaum/

  14. Getting everyone on board? Let's make it easier for everyone to use CM! Steep learning curve Lack of motivation New concepts, non obvious “What do I have to gain syntaxes, paradigm, ... from using this tool?” → Provide simpler interfaces! → Show the benefits! Frustration “I can do it quicker by hand or with a shell script” → Enable quick wins! 14 Normation – CC-BY-SA normation.com

  15. Approach Steep learning curve New concepts, non obvious syntaxes, paradigm, ... 1) Separate content and controls 2) Provide access to key parameters without hacking {CFEngine,Puppet,Chef,etc} code 15 Normation – CC-BY-SA normation.com

  16. Approach Lack of motivation “What do I have to gain from using this tool?” 1) Show the benefits to all users 2) Provide nice reports showing what works, how many machines are impacted 16 Normation – CC-BY-SA normation.com

  17. Approach Frustration “I can do it quicker by hand or with a shell script” 1) Make it easy and quick to achieve success 2) Provide ready-to-use configuration techniques and share in-house ones simply 17 Normation – CC-BY-SA normation.com

  18. What should it look like? Idea for IT team and CM stack Define Analyse Decision level goals reports Consolidation layer Use available Focus on Main IT level methods task at hand Abstraction layer Fine tune Manage Expert level modules stack 18 Normation – CC-BY-SA normation.com

  19. What should it look like? Idea for IT team and CM stack Define Analyse Decision level goals reports Consolidation layer Use available Focus on Main IT level methods task at hand Abstraction layer Stuff we're good at Fine tune Manage Expert level modules stack 19 Normation – CC-BY-SA normation.com

  20. What should it look like? Idea for IT team and CM stack Define Analyse Decision level goals reports Stuff we don't talk about a lot Consolidation layer Use available Focus on Main IT level methods task at hand Abstraction layer Stuff we're good at Fine tune Manage Expert level modules stack 20 Normation – CC-BY-SA normation.com

  21. An example An example based on ncf and Rudder ncf.io www.rudder.cm Open source - GPLv3 21 Normation – CC-BY-SA normation.com

  22. What is ncf? ncf ncf is a framework that runs in pure CFEngine language, to help structure CFEngine policy and provide reusable , single purpose components distributed under the GPLv3 license. 22 Normation – CC-BY-SA normation.com

  23. What should it look like? Idea for IT team and CM stack Define Analyse Decision level goals reports Consolidation layer Use available Focus on Main IT level methods task at hand ncf Abstraction layer Fine tune Manage Expert level modules stack 23 Normation – CC-BY-SA normation.com

  24. ncf: A layered approach A layered approach Unit tasks: “Copy file”, “Install package”, … Generic methods Implement the “how” 24 Normation – CC-BY-SA normation.com

  25. ncf: A layered approach A layered approach Use the provided methods, keep focus Techniques Supply “data” Unit tasks: “Copy file”, “Install package”, … Generic methods Implement the “how” 25 Normation – CC-BY-SA normation.com

  26. ncf: A layered approach A layered approach Get an overview Services Benefit from CM Use the provided methods, keep focus Techniques Supply “data” Unit tasks: “Copy file”, Generic methods “Install package”, … Implement the “how” 26 Normation – CC-BY-SA normation.com

  27. What is ncf? Example === 1000 words With ncf: 27 Normation – CC-BY-SA normation.com

  28. An even nicer interface Simple web interface – ncf builder 28 Normation – CC-BY-SA normation.com

  29. Rudder Rudder Rudder sets up an environment with sane defaults to automate configuration , building on ncf methods without any code and including automatic feedback . 29 Normation – CC-BY-SA normation.com

  30. Overview Simplified configuration 30 Normation – CC-BY-SA normation.com

  31. Overview Built-in reporting 31 Normation – CC-BY-SA normation.com

  32. Overview Built-in reporting 32 Normation – CC-BY-SA normation.com

  33. Overview Dashboard overview 33 Normation – CC-BY-SA normation.com

  34. What should it look like? Idea for IT team and CM stack R Define Analyse u Decision level goals reports d Consolidation layer d Use available Focus on e Main IT level methods task at hand r ncf Abstraction layer Fine tune Manage Expert level modules stack 34 Normation – CC-BY-SA normation.com

  35. On automation and sharing Next IT team? 35 Normation – CC-BY-SA normation.com

  36. Questions? Check it out on: Check it out on: http://www.ncf.io/ http://rudder.cm/ Jonathan CLARKE – jcl@normation.com @jooooooon42 (that's 7 'o's) Normation – CC-BY-SA normation.com

Recommend


More recommend