scaling with docker: new relic’s containerization journey

30
Presenter Name, Title and or Date Scaling with Docker: New Relic’s Containerization Journey Tori Wieldt, Developer Advocate, New Relic 1 Confidential ©2008-15 New Relic, Inc. All rights reserved. @ToriWieldt

Upload: tori-wieldt

Post on 22-Jan-2018

315 views

Category:

Technology


0 download

TRANSCRIPT

Presenter Name, Title and or Date

Scaling with Docker: New Relic’s Containerization Journey

Tori Wieldt, Developer Advocate, New Relic

1Confidential ©2008-15 New Relic, Inc. All rights reserved.

@ToriWieldt

▪ Today’s webinar is being recorded. A link to the recording will be emailed to all registrants shortly after.

▪ Please be sure to ask any questions via the “questions panel”

▪ There is a brief survey after the webinar for any additional questions or feedback.

2

Housekeeping

Confidential ©2008-15 New Relic, Inc. All rights reserved.

Presenter Name, Title and or Date

3Confidential ©2008-15 New Relic, Inc. All rights reserved.

This document and the information herein (including any information that may be incorporated by reference) is

provided for informational purposes only and should not be construed as an offer, commitment, promise or obligation

on behalf of New Relic, Inc. (“New Relic”) to sell securities or deliver any product, material, code, functionality, or other

feature. Any information provided hereby is proprietary to New Relic and may not be replicated or disclosed without

New Relic’s express written permission.

Such information may contain forward-looking statements within the meaning of federal securities laws. Any statement

that is not a historical fact or refers to expectations, projections, future plans, objectives, estimates, goals, or other

characterizations of future events is a forward-looking statement. These forward-looking statements can often be

identified as such because the context of the statement will include words such as “believes,” “anticipates,” “expects”

or words of similar impert.

Actual results may differ materially from those expressed in these forward-looking statements, which speak only as of

the date hereof, and are subject to change at any time without notice. Existing and prospective investors, customers

and other third parties transacting business with New Relic are cautioned not to place undue reliance on this forward-

looking information. The achievement or success of the matters covered by such forward-looking statements are

based on New Relic’s current assumptions, expectations, and beliefs and are subject to substantial risks,

uncertainties, assumptions, and changes in circumstances that may cause the actual results, performance, or

achievements to differ materially from those expressed or implied in any forward-looking statement. Further

information on factors that could affect such forward-looking statements is included in the filings we make with the

SEC from time to time. Copies of these documents may be obtained by visiting New Relic’s Investor Relations website

at ir.newrelic.com or the SEC’s website at www.sec.gov.

New Relic assumes no obligation and does not intend to update these forward-looking statements, except as required

by law. New Relic makes no warranties, expressed or implied, in this document or otherwise, with respect to the

information provided.

4Confidential ©2008-15 New Relic, Inc. All rights reserved.

New Relic’s Journey to Containerization

What We Like

Is Docker Ready for Production?

Challenges/Limitations

What’s Happening With Your Containers?

Maintaining Your Success

AGENDA

5Confidential ©2008-15 New Relic, Inc. All rights reserved.

Active users

500K 12K+Customers

2MEvents / sec

176TEvent Queries / day

Our Journey

7Confidential ©2008-15 New Relic, Inc. All rights reserved.

Ruby Frontend+ Java Backend

The Monolith!

The Duolith!

8Confidential ©2008-15 New Relic, Inc. All rights reserved.

Services

Architecture:

200+ Services…Docker

9

Deployments Before and After Docker

Confidential ©2008-15 New Relic, Inc. All rights reserved.

10Confidential ©2008-15 New Relic, Inc. All rights reserved.

• Based on Selenium

• Each script runs in its own

container

• Performance and Security

A crash test dummyfor your software.

11Confidential ©2008-15 New Relic, Inc. All rights reserved.

Ephemeral Infrastructure

Long livedShort lived

VM

The Good

13

Why New Relic Loves Containers

Developers Are Productive Faster

Less Yak Shaving, More Coding

Streamlined Communications Between TeamsLess Handoffs Mean Less Errors

Better Than VMs

Containers Launch 6x Faster Than VMs

4-6 Times Better Utilization Than VMs

Confidential ©2008-15 New Relic, Inc. All rights reserved.

Dennis Jarvis / CC-BY-SA-3.0

Scale!

14

Why Ops Loves Containers

No More Racking / Kickstarting Pizza Boxes

Script What You Need

“Build once, run anywhere” for infrastructure

Much Less Fiddling With Puppet & Chef

Devs own those dependencies now!

Don’t Fix, Replace

Confidential ©2008-15 New Relic, Inc. All rights reserved.

Pongratz / CC-BY-SA-3.0

15

Why Dev Loves Containers

Faster Provisioning

“I need a place to run a new app...” Done in minutes not weeks!

Control Of Runtime Environment

Dev owns exactly what the app gets

Redundancy Is “Easy”

Go N+2 and beyond; stripe across hosts

Microservices Friendly

One service per container

Polyglot

Use the best language for the jobConfidential ©2008-15 New Relic, Inc. All rights reserved.

Is Docker Ready for Production?

17

Trick Question!

• Docker is a Moving Target

• Boot2Docker/Docker ToolBox/

Now Native Mac/Windows

• Docs are Written for Greenfield development

• “Lots of pain, lots of gain”

Confidential ©2008-15 New Relic, Inc. All rights reserved.

Challenges & Limitations

19Confidential ©2008-15 New Relic, Inc. All rights reserved.

Learning Curve

Legacy Apps

Multithreaded Code

Noisy Neighbors

Security

Challenges

Luc Viatour / www.Lucnix.be

20Confidential ©2008-15 New Relic, Inc. All rights reserved.

What’s Your Host?

Still Need Tools

Centurion: Docker Deployment Tool

Build Ships Containers to Docker Registry

Centurion Sends Containers to Docker Fleet

GitHub: Newrelic/Centurion

Limitations

Luc Viatour / www.Lucnix.be

How Do You Know What’s

Happening With Your

Containers?

22Confidential ©2008-15 New Relic, Inc. All rights reserved.

Docker Stats Command & Docker API

Attach to a Running Container

docker -H tcp://<docker-host>:<port#> ps -a | grep <myapp>

docker -H tcp://<docker-host>:<port#> exec -it <containerID> /bin/bash

Looking At Containers

Application monitoring for all your web apps.

23Confidential ©2008-15 New Relic, Inc. All rights reserved.

APM Overview

Each App Instance Listed

Grouped by Server

Application monitoring for all your web apps.

24Confidential ©2008-15 New Relic, Inc. All rights reserved.

25Confidential ©2008-15 New Relic, Inc. All rights reserved.

Server Monitoringfrom the app perspective.

26Confidential ©2008-15 New Relic, Inc. All rights reserved.

Server Monitoringfrom the app perspective.

27

Maintaining Your Success

Confidential ©2008-15 New Relic, Inc. All rights reserved.

4

Start Simple

Technology Informs Culture

Keep a Good Watch

Nothing Lasts Forever

28

Takeaways

1

2

3

29Confidential ©2008-15 New Relic, Inc. All rights reserved.

Learn More

“Hello World” Tutorial at Docker.com

Docker In Production book

Newrelic.com/docker

Docker for Java Tutorial

github.com/docker/community/tree/master/t

utorials/java

Thank YouTori Wieldt

[email protected]

@ToriWieldt30Confidential ©2008-15 New Relic, Inc. All rights reserved.