Agile Systems Administration




 Julian Simpson, ThoughtWorks Ltd.
Who the hell are you?
●   I am Julian Simpson
●   I've been a Solaris Admin since 1997
●   Now that I work on software projects I need
    excuses to do interesting things like this
And what's this Agile business?
●    Agile is an iterative and incremental
    (evolutionary) approach to software
    development
●   which is performed in a highly collaborative
    manner
●   with "just enough" ceremony
●   that produces high quality software
●    which meets the changing needs of its
    stakeholders. (Scott W Ambler)
Programming before Agile ...
Otto, since you checked in that last
change, I can't deploy the application ...




                       it works on my machine ...
And after ...
Otto, you broke the build ...




                   Oh, I didn't check in
                 FooBarImpl.java ... thanks
CruiseControl helps us in
Agile software projects ...
Agile Systems Admin
But is it any use in an
infrastructure context? ...
So I decided to find out: by
 building a web and mail
server using Puppet, Rake,
      Ruby, SVN and
       CruiseControl
Ruby
  ●   Dynamic Language
      like Perl
  ●   Object oriented
  ●   has a good testing
      framework
  ●   big in Japan
Puppet
   ●   Sysadmin framework
   ●   Very open
   ●   Declarative
   ●   Developed by a
       sysadmin for
       sysadmins
Rake
  ●   Make, for Ruby
Subversion
●   favourite source control
cruisecontrol
       ●   Continuous
           Integration tool
       ●   listens for Subversion
           commits and
           executes Rake
       ●   available in Java,
           .NET and Ruby
           versions
How does it all work then?
●   all configuration is in source control
How does it all work then?
●   changes are picked up by cruisecontrol
How does it all work then?
●   Cruise runs rake to run tests against the config
How does it all work then?
●   Puppet applies the config if the tests pass
How does it all work then?
●   Other puppet clients in your network can now
    retrieve the tested version of your configuration
    and apply it.
What is the benefit?
●   you always apply configuration that is tested
●   you can version your configuration
What is the benefit?
●   status is visible to everybody
●   and you can even drive a lava lamp off of it
Short Film
What do you think?
This work is licensed under the Creative Commons Attribution-
Share Alike 3.0 License. To view a copy of this license, visit
http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to
Creative Commons, 543 Howard Street, 5th Floor, San Francisco,
California, 94105, USA.

More Related Content

PDF
Continuous delivery journey - Montgomery county JUG
PPTX
WordPress Local Environments VVV
PDF
Node & Express as Workflow Tools
PPTX
Project management frameworks for software developing
PDF
Fast end-to-end-tests
PDF
Git sourcecontrolpreso
PDF
Automated Performance Testing
PDF
Extreme Programming - to the next-level
Continuous delivery journey - Montgomery county JUG
WordPress Local Environments VVV
Node & Express as Workflow Tools
Project management frameworks for software developing
Fast end-to-end-tests
Git sourcecontrolpreso
Automated Performance Testing
Extreme Programming - to the next-level

What's hot (20)

PDF
Ignite Devops Fast Moving Software
PDF
Introduction to Automated Testing
PDF
Civilized Git Process
PPTX
Evolve with laravel
PPTX
That worked before
PPT
icebreakerwithdevops-150218112943-conversion-gate02
PDF
OSDC 2015: Kris Buytaert | From ConfigManagementSucks to ConfigManagementLove
PDF
PDF
Capistrano @ VilniusPHP
PPTX
ChatBots for self-service DevOps
ODP
OpenNTF Essentials
PPTX
Develop 4 Developers
PPT
Atwix - Ярослав Рогоза
PDF
Continuous Delivery at Snyk
PPTX
PDF
Modern Messaging for Distributed Systems
PDF
Let’s be productive with spring boot
PPTX
Savin globe
PPTX
Introduction to DevOps. Continuous Integration by Myroslav Dmytrus
PPTX
Serverless Operations aka. LessOps
Ignite Devops Fast Moving Software
Introduction to Automated Testing
Civilized Git Process
Evolve with laravel
That worked before
icebreakerwithdevops-150218112943-conversion-gate02
OSDC 2015: Kris Buytaert | From ConfigManagementSucks to ConfigManagementLove
Capistrano @ VilniusPHP
ChatBots for self-service DevOps
OpenNTF Essentials
Develop 4 Developers
Atwix - Ярослав Рогоза
Continuous Delivery at Snyk
Modern Messaging for Distributed Systems
Let’s be productive with spring boot
Savin globe
Introduction to DevOps. Continuous Integration by Myroslav Dmytrus
Serverless Operations aka. LessOps
Ad

Viewers also liked (16)

PPTX
The art of .net deployment automation
PPTX
I gotta dependency on dependency injection
PPTX
Implementing Continuous Integration in .NET for Cheapskates
PPTX
The art of wmb deployment automation
PDF
Test driven development
PPTX
Agile .NET Development with BDD and Continuous Integration
ODP
Buildbot
PPTX
Domain's Robot Army
KEY
Improving code quality with continuous integration (PHPBenelux Conference 2011)
PDF
Core Principles Of Ci
PPTX
Ideal Deployment In .NET World
PPT
Scrum and Test-driven development
PPTX
Integration with Docker and .NET Core
PPT
C#/.NET Little Wonders
PPT
Continuous Integration (Jenkins/Hudson)
PPT
Design Patterns (Examples in .NET)
The art of .net deployment automation
I gotta dependency on dependency injection
Implementing Continuous Integration in .NET for Cheapskates
The art of wmb deployment automation
Test driven development
Agile .NET Development with BDD and Continuous Integration
Buildbot
Domain's Robot Army
Improving code quality with continuous integration (PHPBenelux Conference 2011)
Core Principles Of Ci
Ideal Deployment In .NET World
Scrum and Test-driven development
Integration with Docker and .NET Core
C#/.NET Little Wonders
Continuous Integration (Jenkins/Hudson)
Design Patterns (Examples in .NET)
Ad

Similar to Agile Systems Admin (20)

PDF
How fast can you onboard a new team member with VAGRANT ?
PPTX
Bulletproof design systems using storybook
PDF
Take home your very own free Vagrant CFML Dev Environment - Presented at dev....
PDF
Take Home Your Very Own Free Vagrant CFML Dev Environment
PDF
Devops, the future is here, it's just not evenly distributed yet.
ODP
Continous Delivery of your Infrastructure
PDF
Getting Started With Cypress
PPTX
Cloud Native CI/CD with Spring Cloud Pipelines
PPTX
Cloud Native CI/CD with Spring Cloud Pipelines
PDF
Monitoring and automation
PDF
Devops at Startup Weekend BXL
PDF
High Performance Software Engineering Teams
PDF
Lightweight continuous delivery for small schools
PDF
Why Should we use Microsoft's Playwright
PDF
Continuous integration (eng)
ODP
Devops for drupal
ODP
Jenkinsconf Presentation - Advance jenkins management with multiple projects.
ODP
Automating MySQL operations with Puppet
PDF
Getting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
PPTX
What is dev ops?
How fast can you onboard a new team member with VAGRANT ?
Bulletproof design systems using storybook
Take home your very own free Vagrant CFML Dev Environment - Presented at dev....
Take Home Your Very Own Free Vagrant CFML Dev Environment
Devops, the future is here, it's just not evenly distributed yet.
Continous Delivery of your Infrastructure
Getting Started With Cypress
Cloud Native CI/CD with Spring Cloud Pipelines
Cloud Native CI/CD with Spring Cloud Pipelines
Monitoring and automation
Devops at Startup Weekend BXL
High Performance Software Engineering Teams
Lightweight continuous delivery for small schools
Why Should we use Microsoft's Playwright
Continuous integration (eng)
Devops for drupal
Jenkinsconf Presentation - Advance jenkins management with multiple projects.
Automating MySQL operations with Puppet
Getting Started with Playwright: A Beginner-Friendly Introduction & Setup Guide
What is dev ops?

More from Julian Simpson (7)

PDF
Surrounded by Graphs
PPT
Adventures in infrastructure as code
KEY
Everything I learned about Continuous Integration, I learned from Systems Adm...
KEY
Continuous Integration, the minimum viable product
ZIP
Silos are for farmers
ZIP
Ci From The Trenches
Surrounded by Graphs
Adventures in infrastructure as code
Everything I learned about Continuous Integration, I learned from Systems Adm...
Continuous Integration, the minimum viable product
Silos are for farmers
Ci From The Trenches

Recently uploaded (20)

PPTX
Web Crawler for Trend Tracking Gen Z Insights.pptx
PDF
Unlock new opportunities with location data.pdf
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
A comparative study of natural language inference in Swahili using monolingua...
PPTX
Chapter 5: Probability Theory and Statistics
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
August Patch Tuesday
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PDF
A review of recent deep learning applications in wood surface defect identifi...
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PPT
Geologic Time for studying geology for geologist
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
sustainability-14-14877-v2.pddhzftheheeeee
PPT
What is a Computer? Input Devices /output devices
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
CloudStack 4.21: First Look Webinar slides
PDF
Taming the Chaos: How to Turn Unstructured Data into Decisions
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
Web Crawler for Trend Tracking Gen Z Insights.pptx
Unlock new opportunities with location data.pdf
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
A comparative study of natural language inference in Swahili using monolingua...
Chapter 5: Probability Theory and Statistics
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Zenith AI: Advanced Artificial Intelligence
August Patch Tuesday
NewMind AI Weekly Chronicles – August ’25 Week III
A review of recent deep learning applications in wood surface defect identifi...
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
Geologic Time for studying geology for geologist
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
sustainability-14-14877-v2.pddhzftheheeeee
What is a Computer? Input Devices /output devices
1 - Historical Antecedents, Social Consideration.pdf
CloudStack 4.21: First Look Webinar slides
Taming the Chaos: How to Turn Unstructured Data into Decisions
Group 1 Presentation -Planning and Decision Making .pptx
A contest of sentiment analysis: k-nearest neighbor versus neural network

Agile Systems Admin

  • 1. Agile Systems Administration Julian Simpson, ThoughtWorks Ltd.
  • 2. Who the hell are you? ● I am Julian Simpson ● I've been a Solaris Admin since 1997 ● Now that I work on software projects I need excuses to do interesting things like this
  • 3. And what's this Agile business? ● Agile is an iterative and incremental (evolutionary) approach to software development ● which is performed in a highly collaborative manner ● with "just enough" ceremony ● that produces high quality software ● which meets the changing needs of its stakeholders. (Scott W Ambler)
  • 5. Otto, since you checked in that last change, I can't deploy the application ... it works on my machine ...
  • 7. Otto, you broke the build ... Oh, I didn't check in FooBarImpl.java ... thanks
  • 8. CruiseControl helps us in Agile software projects ...
  • 10. But is it any use in an infrastructure context? ...
  • 11. So I decided to find out: by building a web and mail server using Puppet, Rake, Ruby, SVN and CruiseControl
  • 12. Ruby ● Dynamic Language like Perl ● Object oriented ● has a good testing framework ● big in Japan
  • 13. Puppet ● Sysadmin framework ● Very open ● Declarative ● Developed by a sysadmin for sysadmins
  • 14. Rake ● Make, for Ruby
  • 15. Subversion ● favourite source control
  • 16. cruisecontrol ● Continuous Integration tool ● listens for Subversion commits and executes Rake ● available in Java, .NET and Ruby versions
  • 17. How does it all work then? ● all configuration is in source control
  • 18. How does it all work then? ● changes are picked up by cruisecontrol
  • 19. How does it all work then? ● Cruise runs rake to run tests against the config
  • 20. How does it all work then? ● Puppet applies the config if the tests pass
  • 21. How does it all work then? ● Other puppet clients in your network can now retrieve the tested version of your configuration and apply it.
  • 22. What is the benefit? ● you always apply configuration that is tested ● you can version your configuration
  • 23. What is the benefit? ● status is visible to everybody ● and you can even drive a lava lamp off of it
  • 25. What do you think?
  • 26. This work is licensed under the Creative Commons Attribution- Share Alike 3.0 License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California, 94105, USA.