Get complete visibility into containers based application environment

35
Get complete visibility into containers based application environment Anand Akela, Director, Product Marketing and Strategy

Transcript of Get complete visibility into containers based application environment

Page 1: Get complete visibility into containers based application environment

Get complete visibility into containers based application environmentAnand Akela, Director, Product Marketing and Strategy

Page 2: Get complete visibility into containers based application environment

Anand AkelaDirector, Product Marketing and Strategy

@aakela

Page 3: Get complete visibility into containers based application environment

PREY

52% of Fortune 500 firms since 2000 are gone

PREDATOR

Rate of innovation determines if you’re the predator or the prey

Page 4: Get complete visibility into containers based application environment

Massive budget shift to digital

Back officeSystems of record

Digital front officeSystems of engagement

80% 2011

50% 2016

20% 2011

50% 2016

HRM

CRM ECM

ERP

Page 5: Get complete visibility into containers based application environment

A car manufacturer is also software and e-commerce company

The busiest bank branch is the mobile app on the 7:15 a.m. train

DigitalTransformation

The world’s largest taxi company owns no vehicles

Education publishing is no longer about text books

Page 6: Get complete visibility into containers based application environment

End to end visibility and transaction tracing

SOA

NOSQL

Cloud

AgileMicro-services

IoT

ESB/MQ

WEBLOGIC

MONGODB

TOMCAT

Login

Flight Status

Search Flight

Purchase

Web

Mobile NETWORK

ORACLE

APACHE JBOSS SERVICE

ESB/MQ

NETWORK

WEBLOGIC

MONGODB

ORACLE

TOMCAT

JBOSS SERVICE

Page 7: Get complete visibility into containers based application environment

WHY ARE PEOPLE SHIFTING TO MICROSERVICES?

Page 8: Get complete visibility into containers based application environment

“Microservices are an approach to developing a single application as a suite of small, connected, services”

Martin Fowler

“Loosely coupled service orientated architecture with bounded contexts”Adrian Cockcroft

In computing, microservices is a software architecture style in which complex applications are composed of small, independent processes communicating with each other using language-agnostic APIs. These services are small, highly decoupled and focus on doing a small task, facilitating a modular approach to system-building.

Wikipedia

Page 9: Get complete visibility into containers based application environment

Copyright © 2015 AppDynamics. All rights reserved. 9

Monolithic versus microservices architecture

Courtesy of PWC: http://www.pwc.com/us/en/technology-forecast/2014/cloud-computing/features/microservices.jhtml

Page 10: Get complete visibility into containers based application environment

Monolithic organization

Courtesy of Martin Fowler: http://martinfowler.com/articles/microservices.html

Page 11: Get complete visibility into containers based application environment

Agile organization

Courtesy of Martin Fowler: http://martinfowler.com/articles/microservices.html

Page 12: Get complete visibility into containers based application environment

New data patterns

Courtesy of Martin Fowler: http://martinfowler.com/articles/microservices.html

Page 13: Get complete visibility into containers based application environment

Challenges

• Most are horrible at automation• Automation is fragmented• Many moving parts must be coordinated• You must master good engineering practices

Page 14: Get complete visibility into containers based application environment

WHAT IS DOCKER AND WHY PEOPLE SWITCHING TO IT?

Page 15: Get complete visibility into containers based application environment

Hypervizor vs docker

Courtesy of IBM (SoftLayer): http://www.slideshare.net/BodenRussell/kvm-and-docker-lxc-benchmarking-with-openstack

Page 16: Get complete visibility into containers based application environment

Why are people switching to docker

• Easy to package• Easy to run anywhere (Smaller footprint)• Fast -> Launch and Kill• Linux or Windows (Mac & Windows beta announce on 3/24) • Basic contained configuration in DockerFile• Less tools to manage each container

Page 17: Get complete visibility into containers based application environment

Performance: boot time

docker KVM0

1

2

3

4

5

6

7

3.900927941

5.88419742584

Average Server Boot Time

Series1

Tim

e in

Sec

onds

Courtesy of IBM (SoftLayer): http://www.slideshare.net/BodenRussell/kvm-and-docker-lxc-benchmarking-with-openstack

Page 18: Get complete visibility into containers based application environment

Performance: reboot time

Courtesy of IBM (SoftLayer): http://www.slideshare.net/BodenRussell/kvm-and-docker-lxc-benchmarking-with-openstack

docker KVM0

20

40

60

80

100

120

140

6.59131344795

124.452507925

Average Server Reboot Time

Series1

Tim

e In

Sec

onds

Docker 18.9x faster

Page 19: Get complete visibility into containers based application environment

Performance: memory speed

Courtesy of IBM (SoftLayer): http://www.slideshare.net/BodenRussell/kvm-and-docker-lxc-benchmarking-with-openstack

MEMCPY DUMB MCBLOCK0

2000

4000

6000

8000

10000

12000

14000

Memory Benchmark Performance

BareMetaldockerKVM

Memory Tests

MiB

/s

Page 20: Get complete visibility into containers based application environment

MONITORING OPTIONS FOR MICROSERVICES

Page 21: Get complete visibility into containers based application environment

Current open source options• cAdvisor

– Docker metrics only• ELK stack

– Lots of moving parts– Only handles log data (Docker, app logs, etc)– Agent per host

• Sensu– Need RabbitMQ, Redis, Sensu– Handles metric data only (Docker, host, other plugins)– Agent per host

• Up and coming : Prometheus, SpigoNO TRANSACTION TRACING!

NO END USER VISIBILITY!

Page 22: Get complete visibility into containers based application environment

Current commercial options

• Stack of APM, infrastructure, log analytics– Splunk– +New Relic, Dynatrace, Ruxit– +SevOne, ScienceLogic, Zenoss

• AppDynamics (1 install/UI for APM, infrastructure, log)– SaaS or on premises– Same product

Page 23: Get complete visibility into containers based application environment

HOW IS COMPLEXITY CAUSING MANAGEMENT ISSUES?

Page 24: Get complete visibility into containers based application environment

Today’s monitoring: many silo-ed tools

Page 25: Get complete visibility into containers based application environment

Copyright © 2015 AppDynamics. All rights reserved. 25

Real-world impact of silo-ed monitoring

Mobile/Web App Middleware Database Server Network StorageCheckout Transaction

??

“Network 97%”“Slow SQL query”“JVM perf issues”“Checkout is slow”

Page 26: Get complete visibility into containers based application environment

SaaS

On-Prem

FlexibleDeployment

AppDynamics Unified Monitoring visionIndustry-first application-centric unified monitoring platform

ServerVisibility

Browser SyntheticMonitoring

Mobile Real-User Monitoring

Database Visibility

Browser Real–User Monitoring

Application Performance Management

APPDYNAMICS UNIFIED MONITORING

Server

DB

Web Server

API

APP

Mobile

Business Transaction

One solution: one UI, one data platform, one install

Page 27: Get complete visibility into containers based application environment

Copyright © 2015 AppDynamics. All rights reserved. 27

Complete End to End Visibility

Page 28: Get complete visibility into containers based application environment

Visualize microservices/docker application

Page 29: Get complete visibility into containers based application environment

Application-centric Docker Monitoring

• Deep visibility into Docker Environment

• Correlate Metrics for Docker and the application running in it

• Out of the box Dashboard with key performance matrix

• Core functionalities of AppDynamics (e.g. dynamic baselining, health rules etc.) for Docker metrics

Page 30: Get complete visibility into containers based application environment

Docker Monitoring Extension

• Available at AppDynamics Exchange for Download

• Gathers Docker Metrics using Docker Remote API• Via Unix Socket or TCP

• Leverages Stats API GET /containers/(id)/stats available w/ Docker 1.7 or later

http://www.appdynamics.com/community/exchange/

Page 31: Get complete visibility into containers based application environment

Correlate Applications & Docker Metrics

Page 32: Get complete visibility into containers based application environment

Managing services

Page 33: Get complete visibility into containers based application environment

Copyright © 2015 AppDynamics. All rights reserved. 33

Docker-ized environment in Github

Page 34: Get complete visibility into containers based application environment

QUESTIONS?@aakela [email protected]

Page 35: Get complete visibility into containers based application environment

Thank You