A brief history of the DevOps movement and community with a cross section view of methods and practices that break down the barriers to business agility and continuous delivery of applications.
For a term less than eight years old, DevOps remains a mysterious pursuit for many software engineering organizations.
DevOps seems intangible: you can't buy it, there is no certification, and no universal definition, yet everyone who wants it or does it has trouble identifying it.
We will cover these topics so that you can understand and chart your own journey to DevOps.
Currently:
$ cat ~/.signature
DevOps and Automation Architect, Nutanix || mark.lavi@nutanix.com
mobile:+1-650-400-2100 || Twitter @calm_mark || GitHub @mlavi
$ cat ~/.profile || curl http://mlavi.github.io/about/
Previously:
Infrastructure as Code blog = http://mlavi.github.io
A culturally rendered term, but Mark's time tested definition1 follows:
DevOps has many implications (values, tools, and practices) and it is dynamically bound to the capabilities of the people who practice it, therefore it can vary person by person on the same team.
It is a bi-directional process and concerns all internal and external customers. e.g.: DevOps for yourself on your laptop.
1Portmanteau: two or more terms combined; a hybrid or mash-up
Ask yourself: Does [this thing] meet our definition of DevOps?
Use your definition as a lens to evaluate any use of the term!
2009:
2
The History Of DevOps by Damon Edwards,
DevOps: A History by Nell Shamrell-Harrington
Technology + Culture transformation for business agility3
3 Blog: Why is DevOps so Hard?
Manufacturing Analog: Toyota Production System
We are all DevOps: continual evolution for organizations
4Proverb: "What is measured improves."
Infrastructure as Code = software engineering practices applied to infrastructure
5 Blog: Database Change Management
6 Software Configuration Management Systems such as Puppet, Chef, Salt, Ansible, Juju, CFengine, etc.
When monolithic, long-lived infrastructure decomposes, so withers the application architecture.
Refactoring and decomposing the application monolithic codebase into modules, each with a public API (REST), enables independent, continuous:
per component, team, feature, etc.
Reference: Amazon REST API manifesto
Cloud agility enables ephemeral fleets
This is a lens to evaluate infrastructure and ops; evolve to fleet management + app first design
8 Bacteria is the term I learned from Tori Wieldt, New Relic Developer Advocate, seems better than "insect" which also is in use.
Between development and production:
Therefore, development environments SHOULD EVOLVE from fully mocked systems to fully integrated application environments, leading to:
9 See Immutable Infrastructure
i.e.:
Reference: BTD Pattern Blog Entry
$ cat ~/.signature
DevOps and Automation Architect, Nutanix || mark.lavi@nutanix.com
mobile:+1-650-400-2100 || Twitter @calm_mark || GitHub @mlavi
Table of Contents | t |
---|---|
Exposé | ESC |
Full screen slides | e |
Presenter View | p |
Source Files | s |
Slide Numbers | n |
Toggle screen blanking | b |
Show/hide slide context | c |
Notes | 2 |
Help | h |