Skip to main content

WTF is DevOps?

Proposed by Scotty Logan

Notes

 
Scotty's old.  He's been to a lot of unconferences.
Ask around the room, what does everyone else think devops is:Bridge the gap between different groups (QA/Developer/Database)
Filling the gap between development and operations
Building tools that enable developers to push tools out more quickly
Scalable ops support
Jack of all trades in itGood at nothing

Maintaining the ecosystem behind all the other systems
Trying to do everything programattically instead of by hand
Automation
Development and operations - stable and agileFresh/frozen
Military intelligence
Fast and stable

Operations team that identifies the problems that they have and develops the tools to solve those problems in a continuous life cycle
Means to blur the lines between teams
Process end to end development
Automation tools
Part of a process where it doesn't impact the rest of the workflow
The activities that encompass managing the deployment of tools and services
Change management amongst groups that haven't been oriented around devops
Development and collaberation between teams
Bring development and operational team together so they can speed up delivery
Process or a set of tools or methods that enable collaboration
Ability to roll out more features and functionality wihtout breaking the features and functionality that you already have
Team of SMEs that people go to when they have operational or technical difficulties.
Hybrid administrators that have the skills of a developer and the discipline of a system administrator
Manage downtime
Teaching sysadmins to use version control and teaching developers how to put ubuntu onto a server
Continuous cycle of software development to deprecate sysadmins

At this point we got invaded by a Berkeley person.  There was a battle, lots of noise, and a victory dance.
More asking around the room about what they think it isBringing software development tools and techniques into system administration
Processes and collaboration to enable continuous integration in an agile environment
Offloading of anything that the creative people think is menial
Community, efficiency, scalability
Infrastructure run by tools, not humans
Response to the failures of silo'ed technical teams.  Extends beyond dev and ops, but network, infrastructure, etc. because devops people have to have an understanding of everything
Teamwork and optomization - getting the right work to the right people
Continuous repeatable process with the goal of taking human error out of things like deployments
Being more efficient with less resources
Eliminating expensive handoffs
Eating your own dog food
Devops is a result driven culture which is heavily augmented by automation
It's a nice buzzword to add to your linked in profile to generate tons of calls from recruiters
It's not about throwing a message in a bottle and hoping somebody finds it.

And now for Scotty's take on it:It's all these things but…It's nothing about the technology
It's not about the processes either
It's about the people
The way you get away from walls and roadblocks is by thinking about the people
The jack of all trades, the hybrids, the where I fit in…

A good devops person is one who hasn't lived in silos for very long - someone who can think about problems and solutions from multiple perspectives
Meetings don't break down walls
Meetings should not be about status reports, meetings should be about sharing knowledge
You don't need the cloud to do devops, you don't need devops to do the cloud
You have to have a basic set of tools to accomplish your basic tasks -Building things, version control, communication
When teams get together they will end up bringing unique helpful skills to the table

We need curious people
There is a lot of communication in version control history and in code
Small discussion on git branching, release tagging, code merging
Git is not just a tool for team development, it is great for individual development as well
Where is devops working well and whyJust about every startup
Amazon.comIn may of last year, they did deployments every 11.6 seconds
~2500 deploys a day

Small iterative changes are keys to successful devopos environments
Massive changes are hard to QA and automate testing with effectively
How do you do that effectively?Continuous integration (jenkins), continuous deployment

What makes it so teams can communicate about changes?No need to communicate with continuous deployment

How do you add quality control?Automated testing with jenkins
Protected Master Branch with gitlab (only a handful of people are allowed to merge changes back into master)

Rollback ability for operational groups is very important
Keep data out of images (configuration via environment)
Don't version libraries, version whole system images
Don't do upgrades, do copiesBlue / green images