AutomateIt: Creating agile infrastructure through server automation



AutomateIt is an open source tool for automating the setup and maintenance of UNIX-like servers, applications and their dependencies. Compared to cfengine and Puppet, AutomateIt is easier to work with, more powerful, and uses syntax that will be immediately familiar to anyone that's written a shell script. AutomateIt's author, Igal Koshevoy, is a veteran software engineer and systems administrator that's managed hundreds of servers at a time and has over a decade of automation experience working with companies like Intel, Oracle, and many startups. He'll discuss how to effectively use server automation, and demonstrate how to use AutomateIt's features, along with code samples, that address real world automation needs.


  • Concepts
    • What is server automation and how does it help create valuable, flexible infrastructure?
    • What is agile infrastructure and what edge does it give sysadmins, developers and business staff?
    • What is AutomateIt and what does it automate?
    • What is different about AutomateIt’s approach that make it simpler and more powerful than cfengine and Puppet?
  • Coding
    • Basics: Using the AutomateIt interactive shell. Understanding the syntax, return values, conditional execution, managers and drivers.
    • Projects: Organize recipes and related files. Expose variables and features through the project environment. Use fields to extract configuration variables. Use tags to conditionally execute recipes based on servers’ roles and OSes. Distribute and apply recipes to many servers.
    • Features: Manage software packages. Execute shell-like commands. Manage services (daemons), users and groups. Render templates and edit files.
    • Advanced: Bootstrap AutomateIt on a new machine. Use virtual machines and shared filesystems to simplify development. Write your own library methods, library classes, managers and drivers.
  • Questions and answers

Speaking experience