(One of the summaries of a talk at the 2014 djangocon.eu.)
Kevin van Wilder talks about devops. (Note: I changed the title from “your product is more than the application” to “devops, it is much more than just automation” as that covers the main message much better).
Nothing good happens after 14:00 on friday. So don’t do a friday deploy. He remembered a quick fix they needed to deploy one friday evening. It actually went OK and it even worked during the press conference demo. 10 days later the site died, though.
Who’s problem is it? “It worked in development”. So, “it is an operations problem now?”.
Is devops the solution? You cannot really be a “devops person”. It is more a movement, a philosophy: lets work together as dev and ops. Partially it is just a name for something that people have been doing for a long time.
A useful acronym is CLAMS:
Culture. How can we influence co-workers? You cannot directly change culture. But you can change behavior. And behaviour becomes culture.
If you do it right, you’ll start influencing others to do right, too. We’ve been influenced ourselves at this conference, right? Haven’t we been shown The Right Way with the visibility for developers talk?
In large companies, dividing everything up into silos is common. Management by “divide and conquer”. Silos are organized by competence, but this forces you to throw your apps over the wall to the other silo. Instead, organize per project.
Communicate! At the start of a project, get all the stakeholders together. Talk to each other. Co-operate.
Lean. Efficient and without waste. And slowly improving all the time.
Don’t be a fool and stick with your first idea: you have the right to be wrong.
Automation. Eliminating human errors by embracing our binary overlords. Make a lot of things go automatically.
This also means configuration management. “Infrastructure as code”. Puppet, chef, ansible, salt, etc.
Continuous integration. Automated workflow from commmit to production. This also gives you the chance to inject code checkers for instance.
Measurement. Know as much as possible about how your product is functioning/behaving. You need a mission control. A dashboard. It can even help you make business decisions based on actual data.
Sharing. A constant improvement process by sharing experiences and learning from others. Going to conferences. Getting a pull request. Sharing open source code.
Devops is… all these things, it is a lot more than just automation or measurement. Asking the right questions. Common sense.
Double decker TGV duplex in Toulon. Actually, the train consisted of two of these beasts. It must make the SNCF quite some money!
My name is Reinout van Rees and I program in Python, I live in the Netherlands, I cycle recumbent bikes and I have a model railway.
Most of my website content is in my weblog. You can keep up to date by subscribing to the automatic feeds (for instance with Google reader):