Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
DevOoops Mastery
Bryan Liles
March 12, 2015
Technology
0
56
DevOoops Mastery
How to move from DevOoops to DevOps
Bryan Liles
March 12, 2015
Tweet
Share
More Decks by Bryan Liles
See All by Bryan Liles
DevOps Days MSP 2017
bryanl
2
640
Velocity 2017 SJ: Application Tracing
bryanl
2
310
Application Ops 1.0
bryanl
1
120
Go At Work
bryanl
0
210
The (Ruby) Sims
bryanl
1
63
How Vs Why
bryanl
0
88
ruby -pi -e.bak - Windy City Rails
bryanl
1
240
Arrrr Camp 2012: Simulating the World with Ruby
bryanl
2
440
Other Decks in Technology
See All in Technology
ECS on EC2 で Auto Scaling やってみる!
sayjoy
1
230
PMMやプロダクト関係者と協働するために役割を整理した話 / 20220810_pdmtipslt
rakus_dev
0
110
ECS Fargate+Mackerelにおける監視費用を削減するまでの話
nulabinc
PRO
1
460
Power Automate for desktopで 配信環境を改善してみた話
akiika
0
310
EKS AnywhereとIAM Anywhereを組み合わせてみた
regmarmcem
0
360
ReverseETLでユーザーに価値を届ける基盤を実現した話
hakky
0
350
Simplify Cloud Native Security with Trivy
knqyf263
0
570
私のAWS愛を聞け! ~ここが好きだよStep Functions~ #devio2022
kongmingstrap
0
290
2022 COSCUP - GKE Backend Cluster 除雷分享
brentchang
0
120
金融領域のマルチプロダクトを効率よく開発・運用するためのシステム基盤と組織設計について / 2022-07-28-multi-product-platform
stajima
0
150
DeFiChain Tech Talk - DFI Uniswap Staking, DeFi Options & DeFi Meta Chain
uzyn
0
100
hey BOOK
heyinc
26
290k
Featured
See All Featured
The Brand Is Dead. Long Live the Brand.
mthomps
46
2.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
239
11k
GraphQLの誤解/rethinking-graphql
sonatard
31
6.8k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
119
28k
Debugging Ruby Performance
tmm1
65
10k
Gamification - CAS2011
davidbonilla
75
3.9k
Clear Off the Table
cherdarchuk
79
290k
Stop Working from a Prison Cell
hatefulcrawdad
262
17k
A better future with KSS
kneath
226
16k
Fashionably flexible responsive web design (full day workshop)
malarkey
396
62k
The Mythical Team-Month
searls
210
39k
Building Flexible Design Systems
yeseniaperezcruz
310
34k
Transcript
DevOoops Mastery Bryan Liles
DevOoops Mastery @bryanl
DevOops Mastery
More Mastery less oops
Accidental successes
“It works on my machine”
Promise Theory
Promise Theory • Model of voluntary cooperation between individual, autonomous
actors, or agents who publish their intentions to one another in a form of promises. • Dev makes promises to ops • Ops make promises to dev
Automation
OOPS: to release our software, it only requires three CLI
commands, a web page visit, an email to Santa, and an act of <insert deity>
The Mastery
once, twice, automate
use Vagrant?
use Vagrant with DigitalOcean?
docker-machine
docker-machine docker compose
docker-machine docker compose docker swarm
Contest: What does tr(1) do?
Configuration Management
OOPS: We configure servers with this set of scripts. You
have to run this one before that one, and this other one only once.
The Mastery
We Chef
You might Ansible or Puppet or Salt or CFEngine or
custom
but should you custom?
yeah, you test this too google “chef test kitchen”
composition over comprehensiveness
Contest: On a modern Linux distribution, how can you find
the number of processors?
Continuous Integration
OOPS: Why spend time and money on another server when
it works on my workstation?
The Mastery
you might Jenkins
I Travis’d in the past
We used Drone
I wish we Jenkins’d
CI produces artifacts
Only deploy the artifacts
Contest: What year did Linux come out?
Deployment
OOPS: We have to deploy from a certain server and
we can only deploy on odd Thursdays or when Jamaal is in the office.
The Mastery
What do you mean you don’t test your deploys?
capistrano or fabric, take your pick
or deploy with chef?
or roll your own …
… but don’t do that
or go advanced mode have your CI build docker images
or go super advanced mode deploy those docker images to
mesos
PS…… Digital Ocean Droplets start at $5/month
or go SUPER DUPER ADVANCED MODE use packer to build
machine images with your app already installed and configured and use the cloud like it wants to used.
Contest: I have a Ruby array: [{“foo_id"=>"1"}, {"bar_id"=>"2"}, {“bar_id"=>"3"}] How
do I convert it to: [2, 4, 6]
Teams Over Individuals
OOPS: They are Ops and we are Engineering. We write,
they keep the servers up. The two shall not cross paths.
The Mastery
Dev VS Ops
Engineer VS SRE
chat all the things
f(devoops) -> devops
Automation
Configuration Management
Continuous Integration
Deployment
Teams over Individuals
we suck
we are lazy
we can’t do the a task the same way twice
we do things differently the second time
Thanks! @bryanl @digitalocean