SlideShare a Scribd company logo
1 of 47
Download to read offline
Konstantin Gredeskoul

CTO, wanelo.com
DevOps without the “Ops”
A fallacy? A dream? A ________?
@kig
@kigster
How Wanelo handles thousands of writes per second with
99.97% uptime without an operations team
@kig
Proprietary and
Wanelo is the digital mall of the future, and a place to find
the most amazing products.
What are you running on?
No really, what’s your stack?
Are you on Mongo?
No!?!?!??
or…
You running ruby? WTF? It’s slow!
You are running Erlang? WTF? It’s in Swedish!
etc.
People often ask…
Backend Stack & Key Vendors
■ MRI Ruby, jRuby, Sinatra, Ruby on Rails
■ PostgreSQL, Solr, redis, twemproxy

memcached, nginx, haproxy, pgbouncer,

elastic search
■ Joyent Cloud, SmartOS, Manta Object Store

ZFS, ARC Cache, superb IO, SMF, Zones, dTrace, humans
■ DNSMadeEasy, MessageBus, Chef, SiftScience
■ LeanPlum, MixPanel, Graphite analytics
■ AWS S3 + Fastly CDN for user / product images
■ Circonus, NewRelic, statsd, Boundary, 

PagerDuty, nagios, SumoLogic 

monitoring, alerting, error reporting
Proprietary and
How much traffic does your app get?
• If you are building an internal web-site in Rails you’d be lucky to get
100 RPMs – your users are only a limited set of employees
• Semi-Popular sites with up to a few hundreds of concurrent users
can expect about 1K-2K RPM
• When you cross 100K RPM mark, you joined the “small big boys” :)
• When you are Pinterest, Facebook or Twitter… You are probably
doing 1-10M RPMs
So what is this talk about?
• Review Operations, DevOps, and the Cloud, and how
the new technologies are changing the landscape
• Learn some key points and patterns that
dramatically reduce stress and pain associated
with running a site, particularly ruby and/or rails
• Discuss if modern startups really need a dedicated
operations team, and if so – at what point?
Let’s start with the basics
DevOps
Proprietary and
What the heck is DevOps?
• “Today, many organizations are confused on what DevOps means
for them..”[2]
1. WikiPedia article on DevOps

2. FORRESTER: “Eliminate DevOps Myths With Situational-Awareness-Based Performance”. John Rakowski, October 10, 2014
• DevOps is a software development method that stresses
communication, collaboration, integration, automation and
measurement cooperation between software developers and
other information-technology (IT) professionals. [1]
Proprietary and
“…Efficient teams are deploying code 30 times
more frequently with 50 percent fewer failures in
2014…” [3]
“…DevOps practices correlate strongly with high
organizational performance” [3]
3. Source: PuppetLabs “State of DevOps Report”, 2014
DevOps however, works…
Traditional “Heavy” Agile
• Traditional Ops responsibilities were often in conflict
with product development: stability versus change.
Product Dev QA OperationsProduct Dev QA Operations
Traditional Operations
• Uptime, stability and reliability
• On-call, fixing site at night
• Backups and disaster recovery
• Security, patching, OpenSSL :)
• Hardware
• Networking
• Colocation / DC
“The Cloud” changed things
• Uptime, stability and reliability
• On-call, fixing site at night
• Backups and disaster recovery
• Security, patching, OpenSSL :)
• Hardware
• Networking
• Colocation / DC
So the Cloud is a big part of
what makes DevOps possible
Let’s talk about a simpler and more
friendly way to build and deploy
software.
Early Company Goals (based on Wanelo)
• Maximize iteration speed
• Practice “aggro-agile”™
• Scale up as we go, keep the app fast
• Break things, learn, move on
• Enable, empower and inspire our team
• Remain in control of our infrastructure
And while moving really fast…
We just never hired Ops
But we did hire several brilliant engineers who
actually enjoyed infrastructure / platform work.
Except they approach it like … code.
Not having Ops meant
• We had to deploy our app to the cloud, and learn
how to provision the nodes we needed, as well as:
• How to provision load balancers and app servers
• How to configure new Solr masters and replicas
• How to install and tune PostgreSQL databases
• memcaches, redis shards, twemproxy, haproxy
Fast forward to today
• 100% cloud hosted (Joyent Cloud)
• 100% automated (Chef)
• 10,000% traffic growth in 6 months and survived
• 99.97% uptime (without trying very hard)
• on call engineers get 1-2 pages per week
• 80% of engineers are on call rotation, including
iOS & Android developers
Still no “Ops” team, but plenty of Ops work
How?
1. Automation and Deployment
• Infrastructure is a first class citizen
• Pairs deliver user stories which include automation
• Did I mention we pair program? It rocks!
• We run Chef continuously in production
• I want to trust my tools, and if they break, fix them
• Partition staging and production environments
Incremental Deployment
• Roll code out everywhere, restart 2% of servers
• Watch errors, latency, other anomalies
• When satisfied continue rolling all servers
• Ensure old and new code can co-exist
• Ensure no “drop/rename” migrations happen on live tables
• Ensure no exclusive locking migrations (eg. create index
concurrently)
2. Fault tolerant infrastructure
• Ensure aggressive client timeouts
• Achieving fault tolerance today is much cheaper
than ever before! It’s a crime not to do it :)
• Put haproxy in front of everything, literally
• Stateless services only
• Put makara, twemproxy, Dalli in front of
database, redis and memcached
Let’s look at a couple of recipes for resilience
Resilience keeps you sleeping at night
Where is everything? HAProxy + Chef Search + Stateless
App talks to

http://127.0.0.1:8000

http://127.0.0.1:8001
App HAProxy
Backend 1
Backend 2
Solr
Web Service
Backend 2
ElasticSearch
Virtual Zone / Server
This pattern allows us to have one place that
knows about everything else, in Chef
What the hell Makara?
• Makara is a simple database routing tool for
ActiveRecord that has been in production on
Wanelo and TaskRabbit for years
• https://github.com/wanelo/makara (PostgreSQL)
• https://github.com/taskrabbit/makara (MySQL)
Proprietary and
• Was the simplest library to
understand, and port to
• Worked in the multi-threaded
environment of Sidekiq
Background Workers
• automatically retries if
replica goes down
• load balances with weights
• Was running in production
Replicate everything that replicates
App
HAProxy
Backend 1
Backend 2
Solr Replica
Backend 2
Solr Replica
Solr Replica
Solr Master
Web / API Requests
Background
WorkerQueue
reads
writes
App
HAProxy
Backend 1
Backend 2
Solr Replica
Backend 2
Solr Replica
Solr Replica
Solr Master
Web / API Requests
Background
WorkerQueue
Degraded State, but still up!
Many replicas can be down
reads
writes
Replicas are great because they are easy to add
and often ok to ignore when they die/reboot/etc.
Don’t buy an expensive load balancer
Load Balancer
haproxy
nginx
Load Balancer
haproxy
nginx
200.200.234.145 200.200.234.146
example.com
App Server App Server App Server App Server App Server App Server
You can build a decent one with DNS
App Server App Server App Server
Load Balancer
haproxy
nginx
App Server App Server App Server
Load Balancer
haproxy
nginx
DNS Provider
pingping
200.200.234.145 200.200.234.146
DNS auto-failover is
offered with some
enterprise DNS services,
e.g. from DNSMadeEasy
When LB goes down, it is removed
from the DNS pool
App Server App Server App Server
Load Balancer
haproxy
nginx
App Server App Server App Server
Load Balancer
haproxy
nginx
DNS Provider
pingping
200.200.234.145 200.200.234.146
It works pretty well
It works pretty well
Load Balancer
haproxy
nginx
Dead Load Balancer
200.200.234.145 200.200.234.146
DNS Provider
ping
App Server App Server App Server App Server App Server App Server
example.com
This works best with a
short TTL
Configure LBs in pairs, as
the others failover, to
account for network
partitioning
When LB goes down, it is removed
from the DNS pool
This pattern allows us to tolerate reboots and
maintenance with minimal effect on our users
Failover to the overflow pattern
Two queues: large primary, small secondary
The primary distributes jobs to a large set of specialized
workers, assigned to specific queues
App
HAProxy
Primary Backend 1
Failover Backend 2
Primary
Background Workers
Redis Primary
Queue
Redis
Failover
"Overflow" Workers
The failover queue has only a small number of overflow
workers, but they will accept any work
During spikes in traffic, this pattern allows our
application to continue enqueuing jobs when the
primary is overwhelmed
This is useful in situations when you can’t easily
round robin between multiple shards. 



Example: Sidekiq with a “Unique Job” extension.
• Some tools allow alerting on the first derivative of an
observed metric.
• This is what we want: rapid drop (or increase) in a
key metric to generate an alert.
3. Alert only on what’s important
• Nagios is great for visibility
• Not great for knowing when to drop everything
because the site is on fire
• We never page on “host down”



Because, who cares?

The host is likely redundant, and will be back. 



…Probably.
Alerting examples
• We only page for things like “sudden drop in product
saves per second”, or a spike in error rate, etc.
• Monitoring / alerting tool Circonus supports this
4. Obsessive monitoring
• Modern tools offer unprecedented visibility
• Real time application monitoring
• Real time business stats monitoring
• Real time network monitoring
• Dashboards, TV Monitor, alerts
• Real time, real time, real time.
Systems Status: Dashboard Monitoring & Graphing with Circonus, NewRelic, statsd, nagios
5. Cloud vendor is your partner
• We get phenomenal customer support from Joyent
• Our Cloud Partner, in a way, is our Ops
• Joyent is innovative in that they develop and run
their own cloud stack: from the OS layer (SmartOS)
to the data center management software
• They offer a unique option to take our “cloud” in-
house when that time comes
6. DevOps, really, is just code
• Hire folks who write code, so that they don’t have to
repeat the same task twice
• Everyone will be happier that way.
So here is how to reduce stress!
1. Insist on 100% automation
2. Deploy fault tolerant patterns wherever possible
3. Page only on what’s important to the business
4. Monitor everything else obsessively
5. Choose a cloud provider that can be your partner
6. Infrastructure work is software engineering
Thanks!
slideshare.net/kigster

github.com/kigster

github.com/wanelo
github.com/wanelo-chef


wanelo technical blog
building.wanelo.com
Proprietary and
@kig
@kig
@kigster

More Related Content

What's hot

Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?Clustrix
 
Tech Talk Series, Part 3: Why is your CFO right to demand you scale down MySQL?
Tech Talk Series, Part 3: Why is your CFO right to demand you scale down MySQL?Tech Talk Series, Part 3: Why is your CFO right to demand you scale down MySQL?
Tech Talk Series, Part 3: Why is your CFO right to demand you scale down MySQL?Clustrix
 
Putting Kafka Into Overdrive
Putting Kafka Into OverdrivePutting Kafka Into Overdrive
Putting Kafka Into OverdriveTodd Palino
 
#GeodeSummit Keynote: Creating the Future of Big Data Through 'The Apache Way"
#GeodeSummit Keynote: Creating the Future of Big Data Through 'The Apache Way"#GeodeSummit Keynote: Creating the Future of Big Data Through 'The Apache Way"
#GeodeSummit Keynote: Creating the Future of Big Data Through 'The Apache Way"PivotalOpenSourceHub
 
DataEngConf SF16 - Methods for Content Relevance at LinkedIn
DataEngConf SF16 - Methods for Content Relevance at LinkedInDataEngConf SF16 - Methods for Content Relevance at LinkedIn
DataEngConf SF16 - Methods for Content Relevance at LinkedInHakka Labs
 
Cloudstate - Towards Stateful Serverless
Cloudstate - Towards Stateful ServerlessCloudstate - Towards Stateful Serverless
Cloudstate - Towards Stateful ServerlessLightbend
 
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayDatadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayC4Media
 
Deep Dive Into How To Monitor MySQL or MariaDB Galera Cluster / Percona XtraD...
Deep Dive Into How To Monitor MySQL or MariaDB Galera Cluster / Percona XtraD...Deep Dive Into How To Monitor MySQL or MariaDB Galera Cluster / Percona XtraD...
Deep Dive Into How To Monitor MySQL or MariaDB Galera Cluster / Percona XtraD...Severalnines
 
Transactional Streaming: If you can compute it, you can probably stream it.
Transactional Streaming: If you can compute it, you can probably stream it.Transactional Streaming: If you can compute it, you can probably stream it.
Transactional Streaming: If you can compute it, you can probably stream it.jhugg
 
Blockchain for the DBA and Data Professional
Blockchain for the DBA and Data ProfessionalBlockchain for the DBA and Data Professional
Blockchain for the DBA and Data ProfessionalKaren Lopez
 
101 ways to configure kafka - badly
101 ways to configure kafka - badly101 ways to configure kafka - badly
101 ways to configure kafka - badlyHenning Spjelkavik
 
Top 5 Java Performance Metrics, Tips & Tricks
Top 5 Java Performance Metrics, Tips & TricksTop 5 Java Performance Metrics, Tips & Tricks
Top 5 Java Performance Metrics, Tips & TricksAppDynamics
 
ReST Vs SOA(P) ... Yawn
ReST Vs SOA(P) ... YawnReST Vs SOA(P) ... Yawn
ReST Vs SOA(P) ... Yawnozten
 
[@IndeedEng] Boxcar: A self-balancing distributed services protocol
[@IndeedEng] Boxcar: A self-balancing distributed services protocol [@IndeedEng] Boxcar: A self-balancing distributed services protocol
[@IndeedEng] Boxcar: A self-balancing distributed services protocol indeedeng
 
It's a wrap - closing keynote for nlOUG Tech Experience 2017 (16th June, The ...
It's a wrap - closing keynote for nlOUG Tech Experience 2017 (16th June, The ...It's a wrap - closing keynote for nlOUG Tech Experience 2017 (16th June, The ...
It's a wrap - closing keynote for nlOUG Tech Experience 2017 (16th June, The ...Lucas Jellema
 
Open source applied: Real-world uses
Open source applied: Real-world usesOpen source applied: Real-world uses
Open source applied: Real-world usesRogue Wave Software
 
Open source: Top issues in the top enterprise packages
Open source: Top issues in the top enterprise packagesOpen source: Top issues in the top enterprise packages
Open source: Top issues in the top enterprise packagesRogue Wave Software
 
Kafka at Peak Performance
Kafka at Peak PerformanceKafka at Peak Performance
Kafka at Peak PerformanceTodd Palino
 
The Future of Services: Building Asynchronous, Resilient and Elastic Systems
The Future of Services: Building Asynchronous, Resilient and Elastic SystemsThe Future of Services: Building Asynchronous, Resilient and Elastic Systems
The Future of Services: Building Asynchronous, Resilient and Elastic SystemsLightbend
 
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...confluent
 

What's hot (20)

Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
 
Tech Talk Series, Part 3: Why is your CFO right to demand you scale down MySQL?
Tech Talk Series, Part 3: Why is your CFO right to demand you scale down MySQL?Tech Talk Series, Part 3: Why is your CFO right to demand you scale down MySQL?
Tech Talk Series, Part 3: Why is your CFO right to demand you scale down MySQL?
 
Putting Kafka Into Overdrive
Putting Kafka Into OverdrivePutting Kafka Into Overdrive
Putting Kafka Into Overdrive
 
#GeodeSummit Keynote: Creating the Future of Big Data Through 'The Apache Way"
#GeodeSummit Keynote: Creating the Future of Big Data Through 'The Apache Way"#GeodeSummit Keynote: Creating the Future of Big Data Through 'The Apache Way"
#GeodeSummit Keynote: Creating the Future of Big Data Through 'The Apache Way"
 
DataEngConf SF16 - Methods for Content Relevance at LinkedIn
DataEngConf SF16 - Methods for Content Relevance at LinkedInDataEngConf SF16 - Methods for Content Relevance at LinkedIn
DataEngConf SF16 - Methods for Content Relevance at LinkedIn
 
Cloudstate - Towards Stateful Serverless
Cloudstate - Towards Stateful ServerlessCloudstate - Towards Stateful Serverless
Cloudstate - Towards Stateful Serverless
 
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayDatadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
 
Deep Dive Into How To Monitor MySQL or MariaDB Galera Cluster / Percona XtraD...
Deep Dive Into How To Monitor MySQL or MariaDB Galera Cluster / Percona XtraD...Deep Dive Into How To Monitor MySQL or MariaDB Galera Cluster / Percona XtraD...
Deep Dive Into How To Monitor MySQL or MariaDB Galera Cluster / Percona XtraD...
 
Transactional Streaming: If you can compute it, you can probably stream it.
Transactional Streaming: If you can compute it, you can probably stream it.Transactional Streaming: If you can compute it, you can probably stream it.
Transactional Streaming: If you can compute it, you can probably stream it.
 
Blockchain for the DBA and Data Professional
Blockchain for the DBA and Data ProfessionalBlockchain for the DBA and Data Professional
Blockchain for the DBA and Data Professional
 
101 ways to configure kafka - badly
101 ways to configure kafka - badly101 ways to configure kafka - badly
101 ways to configure kafka - badly
 
Top 5 Java Performance Metrics, Tips & Tricks
Top 5 Java Performance Metrics, Tips & TricksTop 5 Java Performance Metrics, Tips & Tricks
Top 5 Java Performance Metrics, Tips & Tricks
 
ReST Vs SOA(P) ... Yawn
ReST Vs SOA(P) ... YawnReST Vs SOA(P) ... Yawn
ReST Vs SOA(P) ... Yawn
 
[@IndeedEng] Boxcar: A self-balancing distributed services protocol
[@IndeedEng] Boxcar: A self-balancing distributed services protocol [@IndeedEng] Boxcar: A self-balancing distributed services protocol
[@IndeedEng] Boxcar: A self-balancing distributed services protocol
 
It's a wrap - closing keynote for nlOUG Tech Experience 2017 (16th June, The ...
It's a wrap - closing keynote for nlOUG Tech Experience 2017 (16th June, The ...It's a wrap - closing keynote for nlOUG Tech Experience 2017 (16th June, The ...
It's a wrap - closing keynote for nlOUG Tech Experience 2017 (16th June, The ...
 
Open source applied: Real-world uses
Open source applied: Real-world usesOpen source applied: Real-world uses
Open source applied: Real-world uses
 
Open source: Top issues in the top enterprise packages
Open source: Top issues in the top enterprise packagesOpen source: Top issues in the top enterprise packages
Open source: Top issues in the top enterprise packages
 
Kafka at Peak Performance
Kafka at Peak PerformanceKafka at Peak Performance
Kafka at Peak Performance
 
The Future of Services: Building Asynchronous, Resilient and Elastic Systems
The Future of Services: Building Asynchronous, Resilient and Elastic SystemsThe Future of Services: Building Asynchronous, Resilient and Elastic Systems
The Future of Services: Building Asynchronous, Resilient and Elastic Systems
 
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...
 

Viewers also liked

12-Step Program for Scaling Web Applications on PostgreSQL
12-Step Program for Scaling Web Applications on PostgreSQL12-Step Program for Scaling Web Applications on PostgreSQL
12-Step Program for Scaling Web Applications on PostgreSQLKonstantin Gredeskoul
 
Decorex Durban 2017 in pictures
Decorex Durban 2017 in picturesDecorex Durban 2017 in pictures
Decorex Durban 2017 in picturesFred Felton
 
Brand Storytelling - Miért használj a tartalomterjesztéshez fizetett hirdetés...
Brand Storytelling - Miért használj a tartalomterjesztéshez fizetett hirdetés...Brand Storytelling - Miért használj a tartalomterjesztéshez fizetett hirdetés...
Brand Storytelling - Miért használj a tartalomterjesztéshez fizetett hirdetés...Péter Tóth-Czere
 
Perché le aziende devono essere presenti su internet
Perché le aziende devono essere presenti su internetPerché le aziende devono essere presenti su internet
Perché le aziende devono essere presenti su internetClientecontento
 
Propuestas de resolución 2017
Propuestas de resolución 2017Propuestas de resolución 2017
Propuestas de resolución 2017Nueva Canarias-BC
 
New Declassified Report Exposes Hamas Human Shield Policy
New Declassified Report Exposes Hamas Human Shield PolicyNew Declassified Report Exposes Hamas Human Shield Policy
New Declassified Report Exposes Hamas Human Shield PolicyIsraelDefenseForces
 
Sportcongres noord nederland Jaap van Zessen
Sportcongres noord nederland Jaap van ZessenSportcongres noord nederland Jaap van Zessen
Sportcongres noord nederland Jaap van ZessenJaap van Zessen
 
Style Framework - SXSW2015
Style Framework - SXSW2015Style Framework - SXSW2015
Style Framework - SXSW2015Marti Gold
 
Webinar - Introducción a la ISO/IEC 29110-4-1:2011
Webinar - Introducción a la ISO/IEC 29110-4-1:2011Webinar - Introducción a la ISO/IEC 29110-4-1:2011
Webinar - Introducción a la ISO/IEC 29110-4-1:2011jpalma200680
 
Money Laundering Law Germany
Money Laundering Law GermanyMoney Laundering Law Germany
Money Laundering Law GermanyLutz Hartmann
 
Muallim ul quran revised
Muallim ul quran revisedMuallim ul quran revised
Muallim ul quran revisedSikander Ghunio
 
Regalos del Chavez a otros Paises
Regalos del Chavez a otros PaisesRegalos del Chavez a otros Paises
Regalos del Chavez a otros PaisesParaulata Ilustrada
 
Foro activación del empleo 2017. 29 30 MARZO IFEMA
Foro activación del empleo 2017. 29 30 MARZO IFEMAForo activación del empleo 2017. 29 30 MARZO IFEMA
Foro activación del empleo 2017. 29 30 MARZO IFEMAYOLANDA ROSCO GARCINUÑO
 
AngularJS - podstawy
AngularJS - podstawyAngularJS - podstawy
AngularJS - podstawyApptension
 
博進空手部・学費免除の裏技
博進空手部・学費免除の裏技博進空手部・学費免除の裏技
博進空手部・学費免除の裏技al_qrantz
 
IT技術者こそ覚えておきたい脳梗塞の症状
IT技術者こそ覚えておきたい脳梗塞の症状IT技術者こそ覚えておきたい脳梗塞の症状
IT技術者こそ覚えておきたい脳梗塞の症状なおき おさだ
 
Collective navigation of complex networks: Participatory greedy routing
Collective navigation of complex networks: Participatory greedy routingCollective navigation of complex networks: Participatory greedy routing
Collective navigation of complex networks: Participatory greedy routingKolja Kleineberg
 

Viewers also liked (19)

12-Step Program for Scaling Web Applications on PostgreSQL
12-Step Program for Scaling Web Applications on PostgreSQL12-Step Program for Scaling Web Applications on PostgreSQL
12-Step Program for Scaling Web Applications on PostgreSQL
 
Decorex Durban 2017 in pictures
Decorex Durban 2017 in picturesDecorex Durban 2017 in pictures
Decorex Durban 2017 in pictures
 
Brand Storytelling - Miért használj a tartalomterjesztéshez fizetett hirdetés...
Brand Storytelling - Miért használj a tartalomterjesztéshez fizetett hirdetés...Brand Storytelling - Miért használj a tartalomterjesztéshez fizetett hirdetés...
Brand Storytelling - Miért használj a tartalomterjesztéshez fizetett hirdetés...
 
Perché le aziende devono essere presenti su internet
Perché le aziende devono essere presenti su internetPerché le aziende devono essere presenti su internet
Perché le aziende devono essere presenti su internet
 
Propuestas de resolución 2017
Propuestas de resolución 2017Propuestas de resolución 2017
Propuestas de resolución 2017
 
New Declassified Report Exposes Hamas Human Shield Policy
New Declassified Report Exposes Hamas Human Shield PolicyNew Declassified Report Exposes Hamas Human Shield Policy
New Declassified Report Exposes Hamas Human Shield Policy
 
Presentación
PresentaciónPresentación
Presentación
 
Sportcongres noord nederland Jaap van Zessen
Sportcongres noord nederland Jaap van ZessenSportcongres noord nederland Jaap van Zessen
Sportcongres noord nederland Jaap van Zessen
 
Style Framework - SXSW2015
Style Framework - SXSW2015Style Framework - SXSW2015
Style Framework - SXSW2015
 
Webinar - Introducción a la ISO/IEC 29110-4-1:2011
Webinar - Introducción a la ISO/IEC 29110-4-1:2011Webinar - Introducción a la ISO/IEC 29110-4-1:2011
Webinar - Introducción a la ISO/IEC 29110-4-1:2011
 
Money Laundering Law Germany
Money Laundering Law GermanyMoney Laundering Law Germany
Money Laundering Law Germany
 
Muallim ul quran revised
Muallim ul quran revisedMuallim ul quran revised
Muallim ul quran revised
 
Regalos del Chavez a otros Paises
Regalos del Chavez a otros PaisesRegalos del Chavez a otros Paises
Regalos del Chavez a otros Paises
 
Don't Believe Trump's Hype: Regulations do Work for Business
Don't Believe Trump's Hype: Regulations do Work for BusinessDon't Believe Trump's Hype: Regulations do Work for Business
Don't Believe Trump's Hype: Regulations do Work for Business
 
Foro activación del empleo 2017. 29 30 MARZO IFEMA
Foro activación del empleo 2017. 29 30 MARZO IFEMAForo activación del empleo 2017. 29 30 MARZO IFEMA
Foro activación del empleo 2017. 29 30 MARZO IFEMA
 
AngularJS - podstawy
AngularJS - podstawyAngularJS - podstawy
AngularJS - podstawy
 
博進空手部・学費免除の裏技
博進空手部・学費免除の裏技博進空手部・学費免除の裏技
博進空手部・学費免除の裏技
 
IT技術者こそ覚えておきたい脳梗塞の症状
IT技術者こそ覚えておきたい脳梗塞の症状IT技術者こそ覚えておきたい脳梗塞の症状
IT技術者こそ覚えておきたい脳梗塞の症状
 
Collective navigation of complex networks: Participatory greedy routing
Collective navigation of complex networks: Participatory greedy routingCollective navigation of complex networks: Participatory greedy routing
Collective navigation of complex networks: Participatory greedy routing
 

Similar to Dev Ops without the Ops

Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeSteve Mercier
 
DevOps Cardiff - Monitoring Automation for DevOps
DevOps Cardiff - Monitoring Automation for DevOpsDevOps Cardiff - Monitoring Automation for DevOps
DevOps Cardiff - Monitoring Automation for DevOpsOutlyer
 
Systems Monitoring with Prometheus (Devops Ireland April 2015)
Systems Monitoring with Prometheus (Devops Ireland April 2015)Systems Monitoring with Prometheus (Devops Ireland April 2015)
Systems Monitoring with Prometheus (Devops Ireland April 2015)Brian Brazil
 
The Business Value of PaaS Automation - Kieron Sambrook-Smith - Presentation ...
The Business Value of PaaS Automation - Kieron Sambrook-Smith - Presentation ...The Business Value of PaaS Automation - Kieron Sambrook-Smith - Presentation ...
The Business Value of PaaS Automation - Kieron Sambrook-Smith - Presentation ...eZ Systems
 
WSO2Con EU 2015: Keynote - Cloud Native Apps… from a user point of view
WSO2Con EU 2015: Keynote - Cloud Native Apps… from a user point of viewWSO2Con EU 2015: Keynote - Cloud Native Apps… from a user point of view
WSO2Con EU 2015: Keynote - Cloud Native Apps… from a user point of viewWSO2
 
What we talk about when we talk about DevOps
What we talk about when we talk about DevOpsWhat we talk about when we talk about DevOps
What we talk about when we talk about DevOpsRicard Clau
 
Java Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudJava Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudMongoDB
 
Is Serverless The New Swiss Cheese? - AWS Seattle User Group
Is Serverless The New Swiss Cheese? - AWS Seattle User GroupIs Serverless The New Swiss Cheese? - AWS Seattle User Group
Is Serverless The New Swiss Cheese? - AWS Seattle User GroupChase Douglas
 
Mapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the CloudMapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the CloudChris Dagdigian
 
Introduction to the Typesafe Reactive Platform
Introduction to the Typesafe Reactive PlatformIntroduction to the Typesafe Reactive Platform
Introduction to the Typesafe Reactive PlatformBoldRadius Solutions
 
Handling 1 Billion Requests/hr with Minimal Latency Using Docker
Handling 1 Billion Requests/hr with Minimal Latency Using DockerHandling 1 Billion Requests/hr with Minimal Latency Using Docker
Handling 1 Billion Requests/hr with Minimal Latency Using DockerMatomy
 
Delivering Better Software Faster (Without Breaking Everything)
Delivering Better Software Faster (Without Breaking Everything)Delivering Better Software Faster (Without Breaking Everything)
Delivering Better Software Faster (Without Breaking Everything)XebiaLabs
 
Greenfields tech decisions
Greenfields tech decisionsGreenfields tech decisions
Greenfields tech decisionsTrent Hornibrook
 
DevOps The Cultural revolution
DevOps The Cultural revolutionDevOps The Cultural revolution
DevOps The Cultural revolutionSomenath Ghosh
 
Mds cloud saturday 2015 how to heroku
Mds cloud saturday 2015 how to herokuMds cloud saturday 2015 how to heroku
Mds cloud saturday 2015 how to herokuDavid Scruggs
 
Enabling your DevOps culture with AWS-webinar
Enabling your DevOps culture with AWS-webinarEnabling your DevOps culture with AWS-webinar
Enabling your DevOps culture with AWS-webinarAaron Walker
 

Similar to Dev Ops without the Ops (20)

Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
 
What DevOps Isn't
What DevOps Isn'tWhat DevOps Isn't
What DevOps Isn't
 
DevOps Cardiff - Monitoring Automation for DevOps
DevOps Cardiff - Monitoring Automation for DevOpsDevOps Cardiff - Monitoring Automation for DevOps
DevOps Cardiff - Monitoring Automation for DevOps
 
Systems Monitoring with Prometheus (Devops Ireland April 2015)
Systems Monitoring with Prometheus (Devops Ireland April 2015)Systems Monitoring with Prometheus (Devops Ireland April 2015)
Systems Monitoring with Prometheus (Devops Ireland April 2015)
 
The Business Value of PaaS Automation - Kieron Sambrook-Smith - Presentation ...
The Business Value of PaaS Automation - Kieron Sambrook-Smith - Presentation ...The Business Value of PaaS Automation - Kieron Sambrook-Smith - Presentation ...
The Business Value of PaaS Automation - Kieron Sambrook-Smith - Presentation ...
 
WSO2Con EU 2015: Keynote - Cloud Native Apps… from a user point of view
WSO2Con EU 2015: Keynote - Cloud Native Apps… from a user point of viewWSO2Con EU 2015: Keynote - Cloud Native Apps… from a user point of view
WSO2Con EU 2015: Keynote - Cloud Native Apps… from a user point of view
 
Percona presentation v2
Percona presentation v2Percona presentation v2
Percona presentation v2
 
DevOps Days Ohio
DevOps Days OhioDevOps Days Ohio
DevOps Days Ohio
 
What we talk about when we talk about DevOps
What we talk about when we talk about DevOpsWhat we talk about when we talk about DevOps
What we talk about when we talk about DevOps
 
Java Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudJava Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the Cloud
 
Is Serverless The New Swiss Cheese? - AWS Seattle User Group
Is Serverless The New Swiss Cheese? - AWS Seattle User GroupIs Serverless The New Swiss Cheese? - AWS Seattle User Group
Is Serverless The New Swiss Cheese? - AWS Seattle User Group
 
Mapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the CloudMapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the Cloud
 
Introduction to the Typesafe Reactive Platform
Introduction to the Typesafe Reactive PlatformIntroduction to the Typesafe Reactive Platform
Introduction to the Typesafe Reactive Platform
 
Handling 1 Billion Requests/hr with Minimal Latency Using Docker
Handling 1 Billion Requests/hr with Minimal Latency Using DockerHandling 1 Billion Requests/hr with Minimal Latency Using Docker
Handling 1 Billion Requests/hr with Minimal Latency Using Docker
 
Delivering Better Software Faster (Without Breaking Everything)
Delivering Better Software Faster (Without Breaking Everything)Delivering Better Software Faster (Without Breaking Everything)
Delivering Better Software Faster (Without Breaking Everything)
 
Greenfields tech decisions
Greenfields tech decisionsGreenfields tech decisions
Greenfields tech decisions
 
DevOps The Cultural revolution
DevOps The Cultural revolutionDevOps The Cultural revolution
DevOps The Cultural revolution
 
Elatt Presentation
Elatt PresentationElatt Presentation
Elatt Presentation
 
Mds cloud saturday 2015 how to heroku
Mds cloud saturday 2015 how to herokuMds cloud saturday 2015 how to heroku
Mds cloud saturday 2015 how to heroku
 
Enabling your DevOps culture with AWS-webinar
Enabling your DevOps culture with AWS-webinarEnabling your DevOps culture with AWS-webinar
Enabling your DevOps culture with AWS-webinar
 

Recently uploaded

How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)Damian Radcliffe
 
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls KolkataVIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Roomdivyansh0kumar0
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024APNIC
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebJames Anderson
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxellan12
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts servicevipmodelshub1
 
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779Best VIP Call Girls Noida Sector 75 Call Me: 8448380779
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779Delhi Call girls
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...APNIC
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts servicesonalikaur4
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Standkumarajju5765
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGAPNIC
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersDamian Radcliffe
 
Challengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya Shirtrahman018755
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝soniya singh
 

Recently uploaded (20)

How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
 
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls KolkataVIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
 
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
 
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
 
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779Best VIP Call Girls Noida Sector 75 Call Me: 8448380779
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779
 
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICECall Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOG
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
 
Challengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya Shirt
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
 

Dev Ops without the Ops

  • 1. Konstantin Gredeskoul
 CTO, wanelo.com DevOps without the “Ops” A fallacy? A dream? A ________? @kig @kigster How Wanelo handles thousands of writes per second with 99.97% uptime without an operations team @kig
  • 2. Proprietary and Wanelo is the digital mall of the future, and a place to find the most amazing products.
  • 3.
  • 4. What are you running on? No really, what’s your stack? Are you on Mongo? No!?!?!?? or… You running ruby? WTF? It’s slow! You are running Erlang? WTF? It’s in Swedish! etc. People often ask…
  • 5. Backend Stack & Key Vendors ■ MRI Ruby, jRuby, Sinatra, Ruby on Rails ■ PostgreSQL, Solr, redis, twemproxy
 memcached, nginx, haproxy, pgbouncer,
 elastic search ■ Joyent Cloud, SmartOS, Manta Object Store
 ZFS, ARC Cache, superb IO, SMF, Zones, dTrace, humans ■ DNSMadeEasy, MessageBus, Chef, SiftScience ■ LeanPlum, MixPanel, Graphite analytics ■ AWS S3 + Fastly CDN for user / product images ■ Circonus, NewRelic, statsd, Boundary, 
 PagerDuty, nagios, SumoLogic 
 monitoring, alerting, error reporting
  • 6. Proprietary and How much traffic does your app get? • If you are building an internal web-site in Rails you’d be lucky to get 100 RPMs – your users are only a limited set of employees • Semi-Popular sites with up to a few hundreds of concurrent users can expect about 1K-2K RPM • When you cross 100K RPM mark, you joined the “small big boys” :) • When you are Pinterest, Facebook or Twitter… You are probably doing 1-10M RPMs
  • 7. So what is this talk about? • Review Operations, DevOps, and the Cloud, and how the new technologies are changing the landscape • Learn some key points and patterns that dramatically reduce stress and pain associated with running a site, particularly ruby and/or rails • Discuss if modern startups really need a dedicated operations team, and if so – at what point?
  • 8. Let’s start with the basics DevOps
  • 9. Proprietary and What the heck is DevOps? • “Today, many organizations are confused on what DevOps means for them..”[2] 1. WikiPedia article on DevOps
 2. FORRESTER: “Eliminate DevOps Myths With Situational-Awareness-Based Performance”. John Rakowski, October 10, 2014 • DevOps is a software development method that stresses communication, collaboration, integration, automation and measurement cooperation between software developers and other information-technology (IT) professionals. [1]
  • 10. Proprietary and “…Efficient teams are deploying code 30 times more frequently with 50 percent fewer failures in 2014…” [3] “…DevOps practices correlate strongly with high organizational performance” [3] 3. Source: PuppetLabs “State of DevOps Report”, 2014 DevOps however, works…
  • 11. Traditional “Heavy” Agile • Traditional Ops responsibilities were often in conflict with product development: stability versus change. Product Dev QA OperationsProduct Dev QA Operations
  • 12. Traditional Operations • Uptime, stability and reliability • On-call, fixing site at night • Backups and disaster recovery • Security, patching, OpenSSL :) • Hardware • Networking • Colocation / DC
  • 13. “The Cloud” changed things • Uptime, stability and reliability • On-call, fixing site at night • Backups and disaster recovery • Security, patching, OpenSSL :) • Hardware • Networking • Colocation / DC
  • 14. So the Cloud is a big part of what makes DevOps possible
  • 15. Let’s talk about a simpler and more friendly way to build and deploy software.
  • 16. Early Company Goals (based on Wanelo) • Maximize iteration speed • Practice “aggro-agile”™ • Scale up as we go, keep the app fast • Break things, learn, move on • Enable, empower and inspire our team • Remain in control of our infrastructure
  • 17. And while moving really fast… We just never hired Ops But we did hire several brilliant engineers who actually enjoyed infrastructure / platform work. Except they approach it like … code.
  • 18. Not having Ops meant • We had to deploy our app to the cloud, and learn how to provision the nodes we needed, as well as: • How to provision load balancers and app servers • How to configure new Solr masters and replicas • How to install and tune PostgreSQL databases • memcaches, redis shards, twemproxy, haproxy
  • 19. Fast forward to today • 100% cloud hosted (Joyent Cloud) • 100% automated (Chef) • 10,000% traffic growth in 6 months and survived • 99.97% uptime (without trying very hard) • on call engineers get 1-2 pages per week • 80% of engineers are on call rotation, including iOS & Android developers
  • 20. Still no “Ops” team, but plenty of Ops work
  • 21. How?
  • 22. 1. Automation and Deployment • Infrastructure is a first class citizen • Pairs deliver user stories which include automation • Did I mention we pair program? It rocks! • We run Chef continuously in production • I want to trust my tools, and if they break, fix them • Partition staging and production environments
  • 23. Incremental Deployment • Roll code out everywhere, restart 2% of servers • Watch errors, latency, other anomalies • When satisfied continue rolling all servers • Ensure old and new code can co-exist • Ensure no “drop/rename” migrations happen on live tables • Ensure no exclusive locking migrations (eg. create index concurrently)
  • 24. 2. Fault tolerant infrastructure • Ensure aggressive client timeouts • Achieving fault tolerance today is much cheaper than ever before! It’s a crime not to do it :) • Put haproxy in front of everything, literally • Stateless services only • Put makara, twemproxy, Dalli in front of database, redis and memcached
  • 25. Let’s look at a couple of recipes for resilience Resilience keeps you sleeping at night
  • 26. Where is everything? HAProxy + Chef Search + Stateless App talks to
 http://127.0.0.1:8000
 http://127.0.0.1:8001 App HAProxy Backend 1 Backend 2 Solr Web Service Backend 2 ElasticSearch Virtual Zone / Server
  • 27. This pattern allows us to have one place that knows about everything else, in Chef
  • 28. What the hell Makara? • Makara is a simple database routing tool for ActiveRecord that has been in production on Wanelo and TaskRabbit for years • https://github.com/wanelo/makara (PostgreSQL) • https://github.com/taskrabbit/makara (MySQL)
  • 29. Proprietary and • Was the simplest library to understand, and port to • Worked in the multi-threaded environment of Sidekiq Background Workers • automatically retries if replica goes down • load balances with weights • Was running in production
  • 30. Replicate everything that replicates App HAProxy Backend 1 Backend 2 Solr Replica Backend 2 Solr Replica Solr Replica Solr Master Web / API Requests Background WorkerQueue reads writes
  • 31. App HAProxy Backend 1 Backend 2 Solr Replica Backend 2 Solr Replica Solr Replica Solr Master Web / API Requests Background WorkerQueue Degraded State, but still up! Many replicas can be down reads writes
  • 32. Replicas are great because they are easy to add and often ok to ignore when they die/reboot/etc.
  • 33. Don’t buy an expensive load balancer Load Balancer haproxy nginx Load Balancer haproxy nginx 200.200.234.145 200.200.234.146 example.com App Server App Server App Server App Server App Server App Server
  • 34. You can build a decent one with DNS App Server App Server App Server Load Balancer haproxy nginx App Server App Server App Server Load Balancer haproxy nginx DNS Provider pingping 200.200.234.145 200.200.234.146 DNS auto-failover is offered with some enterprise DNS services, e.g. from DNSMadeEasy
  • 35. When LB goes down, it is removed from the DNS pool App Server App Server App Server Load Balancer haproxy nginx App Server App Server App Server Load Balancer haproxy nginx DNS Provider pingping 200.200.234.145 200.200.234.146 It works pretty well
  • 36. It works pretty well Load Balancer haproxy nginx Dead Load Balancer 200.200.234.145 200.200.234.146 DNS Provider ping App Server App Server App Server App Server App Server App Server example.com This works best with a short TTL Configure LBs in pairs, as the others failover, to account for network partitioning When LB goes down, it is removed from the DNS pool
  • 37. This pattern allows us to tolerate reboots and maintenance with minimal effect on our users
  • 38. Failover to the overflow pattern Two queues: large primary, small secondary The primary distributes jobs to a large set of specialized workers, assigned to specific queues App HAProxy Primary Backend 1 Failover Backend 2 Primary Background Workers Redis Primary Queue Redis Failover "Overflow" Workers The failover queue has only a small number of overflow workers, but they will accept any work
  • 39. During spikes in traffic, this pattern allows our application to continue enqueuing jobs when the primary is overwhelmed This is useful in situations when you can’t easily round robin between multiple shards. 
 
 Example: Sidekiq with a “Unique Job” extension.
  • 40. • Some tools allow alerting on the first derivative of an observed metric. • This is what we want: rapid drop (or increase) in a key metric to generate an alert. 3. Alert only on what’s important • Nagios is great for visibility • Not great for knowing when to drop everything because the site is on fire
  • 41. • We never page on “host down”
 
 Because, who cares?
 The host is likely redundant, and will be back. 
 
 …Probably. Alerting examples • We only page for things like “sudden drop in product saves per second”, or a spike in error rate, etc. • Monitoring / alerting tool Circonus supports this
  • 42. 4. Obsessive monitoring • Modern tools offer unprecedented visibility • Real time application monitoring • Real time business stats monitoring • Real time network monitoring • Dashboards, TV Monitor, alerts • Real time, real time, real time.
  • 43. Systems Status: Dashboard Monitoring & Graphing with Circonus, NewRelic, statsd, nagios
  • 44. 5. Cloud vendor is your partner • We get phenomenal customer support from Joyent • Our Cloud Partner, in a way, is our Ops • Joyent is innovative in that they develop and run their own cloud stack: from the OS layer (SmartOS) to the data center management software • They offer a unique option to take our “cloud” in- house when that time comes
  • 45. 6. DevOps, really, is just code • Hire folks who write code, so that they don’t have to repeat the same task twice • Everyone will be happier that way.
  • 46. So here is how to reduce stress! 1. Insist on 100% automation 2. Deploy fault tolerant patterns wherever possible 3. Page only on what’s important to the business 4. Monitor everything else obsessively 5. Choose a cloud provider that can be your partner 6. Infrastructure work is software engineering