DevconTLV 2014 (Jan) - DIY DevOps

Post on 08-May-2015

1.039 views 2 download

description

We all know that bringing devops practices to your organisation is hard and very labour intensive task. Despite the fact that for large organisations it is still a real challenge, for small startups and development teams devops practices can be adopted relatively easily. In this talk Leonid will share his experience of bringing devops practices to small organisations, and prove that devops isn't something that you should postpone for a later growth stage, but something you can do (and relatively easy) now, at the first stages of your idea inception!

Transcript of DevconTLV 2014 (Jan) - DIY DevOps

@leonidlmwww.leonidmirsky.com

DIY DEVOPS

LEONID MIRSKYFreelancer (1+ year)Liveperson (5+ years)

About me

DevOps is...Chef/Puppet

DevOps is...Continuous Delivery

DevOps is...Docker

“Finishing what agile development started” (www.devops.com)

What is DevOps? (for me, shortly)

DevOps is all about CAMS1. Culture2. Automation3. Measurement4. Sharing

Implementing DevOps as after though is hard!

DevOps is part of startup engineering course curriculum

https://www.coursera.org/course/startup

“For startups, DevOps is business as usual but ...”

http://www.pistoncloud.com/2013/09/is-devops-optional-or-normal/

“the longer you’ve had separate dev and ops departments,

the more difficult the cultural shift will be”

http://www.pistoncloud.com/2013/09/is-devops-optional-or-normal/

The bigger the organization becomes, the harder it is to introduce DevOps practices

Start early!

How can we make your startup more DevOps oriented?

How much time will it take?

Culture

Startup team characteristics:

1. Small agile teams

2. One/two influencers

3. Doitall culture (full stack developers)

Probably only small adjustments are needed

Culture - try to avoid...

Sharing - Internal

WhatsApp (hipchat/...) incidents group

Practice Lessons Learned

Sharing - External

total work estimate=

1 day

Automation - Continuous Deployment

Automation - Continuous Deployment

Similar tools are available: TravisCI, CircleCI ...

Extremely easy to set up

Relatively cheap monthly subscription

Configuration Management requires a lot of your resources

Automation - Configuration Management

Instead use a combination of

1. fabric / capistrano / shell scripts

2. AMI / snapshotting

Usually CM can be avoided at the beginning

total work estimate=

5 days (1 + 4)

Measurement

User Experience

Application

Infrastructure

Don’t start from infrastructure monitoring (Nagios)

Measurement - Application

Start from measuring the Application

Quick win - NewRelic agent to gather

application stack metrics

Measurement - Application

Measurement - Application

Instrument your application code and send the

metrics to Librato

Codahale’s presentation ‘metrics metrics

everywhere’ is a must...

http://www.youtube.com/watch?v=czes-oa0yik

Measurement - Infrastructure

Add Librato collectors (collectd, ...) to get

additional “free” metrics

Integrate cloudwatch metrics into Librato

http://support.metrics.librato.com/knowledgebase/articles/195366-amazon-aws-cloudwatch-integration-

total work estimate=

8 days (1 + 4 + 3)

It is only a beginning...

When will you need to invest more?

When the business demands more

1. Autoscaling

2. More elaborate automation is needed

3. SaaS/PaaS functionality is too narrow

4. Ops expertise

Start simple.Grow with the demand.

Thank you!@leonidlm

www.leonidmirsky.com

Design inspiration: https://speakerdeck.com/lara/design-for-performance

Measurement - Application

Start from measuring the Application

1. NewRelic for “free” application stack

metrics

2. Instrument your app and send the data

to Librato

3. Aggregate logs with Papertrail

Measurement

User Experience

Application

Infrastructure

Measurement

NewRelic

Librato (instrumentation)

collectd

Why DevOps might be hard

Hiring people with relevant devops expertise

Lack of team and management buy-in(http://puppetlabs.com/2013-state-of-devops-infographic)

Cultural change could be hard!