appsphere 15 - expedia lessons from the trenches: managing appdynamics at scale

36
Expedia lessons from the trenches - Managing AppDynamics at scale Bhadri Govindarajan, Sr. Application Engineer Vishal Singla, SDE

Upload: appdynamics

Post on 18-Jan-2017

628 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Expedia lessons from the trenches - Managing AppDynamics at scale Bhadri Govindarajan, Sr. Application Engineer Vishal Singla, SDE

Page 2: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Bio

•  Vishal Singla –  SDE, Ecommerce Platform –  Over 8 Years of Product Development Experience

•  Bhadri Govindarajan

–  Sr. Application Engineer, Ecommerce Platform –  Over 12 Years Of Experience with Infrastructure and Application

Management

Copyright © 2015 AppDynamics. All rights reserved. 2

Page 3: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Agenda

•  Background •  AppDynamics Rest API

–  To Automate AppDynamics Transaction Snapshot

–  For Health Rule Automation

Copyright © 2015 AppDynamics. All rights reserved. 3

Page 4: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Copyright © 2015 AppDynamics. All rights reserved. 4

Page 5: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Your Ultimate Travel Companion Behind The Book Button

•  Complex Distributed System •  Multiple Datacenters •  Several Teams •  Different Technologies, Different Platforms

–  Web Services –  Messaging Solutions –  SQL, NO SQL Solutions

Copyright © 2015 AppDynamics. All rights reserved. 5

Page 6: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Your Ultimate Travel Companion Behind The Book Button

•  One Booking –  37 Web Service –  56 Database –  11 Queues –  3 Caching System

Copyright © 2015 AppDynamics. All rights reserved. 6

Page 7: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

AUTOMATE APPDYNAMICS TRANSACTION SNAPSHOT Vishal Singla

Page 8: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Copyright © 2015 AppDynamics. All rights reserved. 8

Page 9: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Copyright © 2015 AppDynamics. All rights reserved. 9

Page 10: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Copyright © 2015 AppDynamics. All rights reserved. 10

Page 11: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Wait Begins

Copyright © 2015 AppDynamics. All rights reserved. 11

•  INC67095 •  ORD-7234 •  PAY-4325 •  SEARCH-4444 •  …..

Page 12: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Problem(s)

•  Dissatisfied customer •  Response time of the ticket to reach/identify right owners

–  Trouble shooting time

Copyright © 2015 AppDynamics. All rights reserved. 12

Page 13: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Possible Fixes & Limitations

•  Grow team(s) –  Not Scalable & Efficient –  $$$$$

•  Systems transactions link up with common identifier –  Difficult to maintain contract among 100+ application

interactions –  $$$

•  Application Performance Management Solution –  $$ Copyright © 2015 AppDynamics. All rights reserved. 13

Page 14: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Solution Evaluation Criteria

“If you can’t explain it simply, you don’t understand it well enough.” - Albert Einstein

Things we were looking for –  Ability to deep dive in to applications

for troubleshooting –  Easy to deploy –  Visual Representation

Copyright © 2015 AppDynamics. All rights reserved. 14

Page 15: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Transaction Snapshot

•  Visual representation of the code paths

•  Depicts a set of diagnostic data, taken at a certain point in time

•  Code-level visibility for troubleshooting problems in environment

Copyright © 2015 AppDynamics. All rights reserved. 15

Page 16: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Design & Workflow

Copyright © 2015 AppDynamics. All rights reserved. 16

Page 17: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Copyright © 2015 AppDynamics. All rights reserved. 17

Page 18: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Copyright © 2015 AppDynamics. All rights reserved. 18

Page 19: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Copyright © 2015 AppDynamics. All rights reserved. 19

Page 20: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Copyright © 2015 AppDynamics. All rights reserved. 20

Page 21: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

What went Wrong?

Copyright © 2015 AppDynamics. All rights reserved. 21

Page 22: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

HEALTH RULE AUTOMATION Bhadri Govindarajan

Page 23: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Copyright © 2015 AppDynamics. All rights reserved. 23

Page 24: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Typical Operational Problems

Copyright © 2015 AppDynamics. All rights reserved. 24

•  Server Crashed •  Service Hung, Not responding,

Slow •  Latency, Performance Problems •  Errors, Exceptions •  Garbage Collection Issues •  Disk IO, Space Issues •  Traffic Patterns

Unhappy Customers Financial Loss $$$

Page 25: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Operational Efficiency ==> Customer Delight

•  Effective Monitors & Alerts –  With Troubleshooting Guides –  Eliminate Noise

•  Be Predictive •  Detect Early, Restore Quickly •  Auto Recover

Copyright © 2015 AppDynamics. All rights reserved. 25

Page 26: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Solution – Year Before Last Year

Copyright © 2015 AppDynamics. All rights reserved. 26

Page 27: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

A Year Later

•  Time Consuming •  Human Errors •  Standards Drop •  Inconsistent •  Work Load Increase •  Priority Changes •  Audit Failures

Copyright © 2015 AppDynamics. All rights reserved. 27

Page 28: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Solution - Health Rule Automation

•  Templatized Approach –  Template Health Rule in the Controller –  Integrated with JIRA for Change Management –  Jenkins Jobs

Copyright © 2015 AppDynamics. All rights reserved. 28

Download Template

Replace Tier

Upload Create Policy

Page 29: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Health Rule Automation – Jenkins Job

Copyright © 2015 AppDynamics. All rights reserved. 29

Page 30: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Design & Workflow

Copyright © 2015 AppDynamics. All rights reserved. 30

Page 31: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Health Rule Automation

Copyright © 2015 AppDynamics. All rights reserved. 31

Page 32: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Gains

•  Created over 600 Health Rules for more than 70 Applications in 2 hrs

•  Standardized Configurations •  Decreased Overall MTTR •  Reduced Cost of Maintaining Monitors

and Alerts •  Enable/Disable Alerts programmatically

–  During Deployments/Maintenance –  Reduce Noise

Copyright © 2015 AppDynamics. All rights reserved. 32

Page 33: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Key Takeaways

•  Visualize Problem •  Rapid Troubleshooting •  Easy To Implement •  Scalable Solution

–  Infrastructure Monitoring –  Database Monitoring –  Backend Monitoring –  Business Transaction Monitoring

Copyright © 2015 AppDynamics. All rights reserved. 33

Page 34: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Useful Links

Configuring Data-Collector •  https://docs.appdynamics.com/display/PRO14S/Configure+Data+Collectors Configuring transaction snapshot •  https://docs.appdynamics.com/display/PRO14S/Configure+Transaction

+Snapshots AppDynamics REST API documentation •  https://docs.appdynamics.com/display/PRO14S/Use+the+AppDynamics+REST

+API

Copyright © 2015 AppDynamics. All rights reserved. 34

Page 35: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Questions

Copyright © 2015 AppDynamics. All rights reserved. 35

Page 36: AppSphere 15 - Expedia Lessons from the Trenches: Managing AppDynamics at Scale

Thank You