Upload
jason-bloomberg
View
399
Download
0
Embed Size (px)
Citation preview
Four Considerations when Monitoring Microservices
Amy FeldmanDirectorCA APM Product Marketing @amyfel
Jason BloombergPresident, [email protected]@theebizwizard
About Jason Bloomberg
• President of industry analyst firm Intellyx
• Agile digital transformation thought leader
• Write for Forbes, several blogs, biweekly newsletter the Cortex
• Buy my latest book, The Agile Architecture Revolution
Copyright © 2015, Intellyx, LLC2
New Architecture for the Application Economy
Copyright © 2015, Intellyx, LLC3
From Monolithic to Microservices
Photo
Cre
dit:
Cente
ractive h
ttp:/
/ww
w.c
ente
ractive.c
om
/conte
nt/
ente
rpri
se-s
erv
ice-b
us
Photo
Cre
dit:
Eri
k P
itti h
ttps:/
/ww
w.f
lickr.
com
/photo
s/e
pitti/
What are Microservices?
Parsimonious, cohesive units of execution
– Designed to do one thing very well
– Contain everything from the operating system, platform, framework, runtime and dependencies, packaged as one unit of execution
Copyright © 2015, Intellyx, LLC4
Photo
Cre
dit:
Jam
es L
ee h
ttps:/
/ww
w.f
lickr.
com
/photo
s/j
ronald
lee/
Parsimony
• As small as they should be but no smaller
• As part of refactoring, ask:
– Would this microservice work better if it were smaller?
– Would this microservice work better if it were split into two or more microservices?
Copyright © 2015, Intellyx, LLC5
Photo
Cre
dit:
AJC
htt
ps:/
/ww
w.f
lickr.
com
/photo
s/a
jc1/
μservice
Cracking Open a Microservice
• Shared nothing in the sense that each microservice has these elements
• Each element is itself parsimonious & coherent
Copyright © 2015, Intellyx, LLC6
Code
Runtime
Cache
OS Elements
Service Interface
Microservices Externalize Management
• Runtime code within microservice pared down to absolute minimum
– Not part of an ESB or other managed environment
• Microservices know nothing about other microservices
• May (or may not) run in a container
– Containers need management too!
Copyright © 2015, Intellyx, LLC7
Photo
Cre
dit:
Jitz
e C
ouperu
s h
ttps:/
/ww
w.f
lickr.
com
/photo
s/j
itze1942/
Microservice Monitoring Challenges
Copyright © 2015, Intellyx, LLC8
Photo
Cre
dit:
bry
km
antr
a h
ttps:/
/ww
w.f
lickr.
com
/photo
s/b
rykm
antr
a/
Complexity
Change
ScaleResilience
Complexity
• The more parsimonious and coherent your microservices, the more of them you’ll need
• Danger of microservice-to-microservice traffic exploding
• Challenges of cache consistency
Copyright © 2015, Intellyx, LLC9
Photo
Cre
dit:
desig
nm
ilk h
ttps:/
/ww
w.f
lickr.
com
/photo
s/d
esig
nm
ilk/
Change
• Microservices empower broader, more diverse DevOps efforts
• Kanban-centric continuous delivery well-suited for microservices
• New ones will be popping up all the time!
Copyright © 2015, Intellyx, LLC10
Photo
Cre
dit:
Dennis
Ham
ilto
n h
ttps:/
/ww
w.f
lickr.
com
/photo
s/o
rcm
id/
Container
Code Libraries
μservic
e
μservic
e
μservic
e
Container
Code Libraries
μservic
e
μservic
e
μservic
e
Scale
• Any identical microservice instance may respond to a request
• Container-based autoscaling requires its own management
Copyright © 2015, Intellyx, LLC11
Container
Code Libraries
μservic
e
μservic
e
μservic
e
Container
Code Libraries
μservic
e
μservic
e
μservic
e
Resilience
• Microservices facilitate automated recovery from failure
– Load balancing more dynamic
– Cache refreshes more complicated
– Composition logic more labyrinthine
Copyright © 2015, Intellyx, LLC12
Photo
Cre
dit:
Ala
n L
evin
e h
ttps:/
/ww
w.f
lickr.
com
/photo
s/c
ogdog/
Jason Bloomberg
President, Intellyx
@theebizwizard
Send email NOW to [email protected] to download this presentation
Thank You!
Copyright © 2015, Intellyx, LLC
Addressing New Monitoring Challenges Introduced by Microservices
15 © 2015 CA. ALL RIGHTS RESERVED.
Microservices Introduces Four New Monitoring Challenges
Complexity Change
ScaleResiliency
16 © 2015 CA. ALL RIGHTS RESERVED.
Desired Experience in Modern/Agile Environments
ANDREW CHEUNGApplication Developer
RYAN CAMPBELLProduction Support Analyst
PETE MILLERLevel 1 Support Analyst
MY PAIN
Monitoring many systems & Devices
HELP ME
Simplify alerts, meaning and action
MY PAIN
Bottleneck – work on all issues
HELP ME
Understand app performance
characteristics quickly
MY PAIN
Firefighting – not just code changes
HELP ME
Instantly know whatchanges trigger problems
MY PAIN
Administering many Monitoring tools
HELP ME
Simplify administrationand support
new apps quickly
KYLE THOMASAPM Administrator
17 © 2015 CA. ALL RIGHTS RESERVED.
Microservices CloudContainers
Simply Will Not Scale
P E
R S
P E
C T
I V
E S
Complexity
18 © 2015 CA. ALL RIGHTS RESERVED.
1 Application Topology: 3 PerspectivesCreate your own task-relevant perspective for any APM user
APM Team Center – Role-Based Task PerspectivesThe right context, for the right person, at the right time
MESSY TRUTH CUSTOM ATTRIBUTES AND FILTERS APPLIED
19 © 2015 CA. ALL RIGHTS RESERVED.
ChangeT
I M E
L I
N E
S
Where do I start?
Did my change cause the
performance issue?
What changed?
80% of Mean Time to Resolution is finding what changed
Lacks intuitive and visual change detection
Correlation of changes to performance requires expertise
Tools are too descriptive to understand
20 © 2015 CA. ALL RIGHTS RESERVED.
BEFORE CHANGE AFTER CHANGE
1: App flow change 3: Then performance degrades
2: Two new services were added
4: It began here!
APM Team Center – Timeline ViewQuickly see changes in the context of performance problems
5: Context details
for next action
21 © 2015 CA. ALL RIGHTS RESERVED.
Resiliency/NoiseB
A S
E L
I N
E S
Maintaining alerts is time consuming, even with automated baselines
Difficult to visually determine where to focus resources
Reactive not proactive
How red is red?
What issue should I work on first?
Should I escalate?
Why is every issue a fire drill?
How long has this been an issue?
INCIDENT PANEL
24CRIT
40OTHER
308OK
CRIT CPU CHK (member) Server Microsoft Windows 0h 48min
CRIT CPU CHK (member) Server Linux 3h 34min
CRIT CPU CHK (member) Server Linux 2h 13min
CRIT Disk Cap CHK Server Microsoft Windows 0h 48min
CRIT Disk Cap CHK Server Microsoft Windows 3h 34min
WARN CPU CHK (member) Server Linux 2h 13min
WARN Disk Cap CHK Server Linux 0h 48min
CRIT Disk Cap CHK Server Microsoft Windows 3h 34min
WARN CPU CHK (member) Server Linux 2h 13min
WARN Disk Cap CHK Server Linux 0h 48min
22 © 2015 CA. ALL RIGHTS RESERVED.
“…one must separate the signal from the noise within the data.”
-Walter Shewhart
Differential Analysis – Better Than BaselinesFast, Easy, and Accurate Triage
Focus attention hereTrending toward
an issue
Issue is getting better
Not an issueIssue is getting
better
23 © 2015 CA. ALL RIGHTS RESERVED.
ScaleSm
art
Inst
rum
enta
tio
n
Components come and go with greater frequency
Monitoring tools do not scale with the application
Too much data collected to make any sense of it
API
Will my monitoring environment scale to the
needs?
How do I understand the relationship of all the
microservices?
What should be monitored?
24 © 2015 CA. ALL RIGHTS RESERVED.
E.P.
I.C. A
PM
Elegance @Scale
Smart Instrumentation•Collect what you need when you need it
Scale Monitoring•Monitor @scale and clustering
Ease Administration•Get control with CA APM ACC
Simply Visualize Large Complex Data•CA APM Team Center Perspectives role-base task views based on pivotable attributes
25 © 2015 CA. ALL RIGHTS RESERVED.
Maintenance Improvements
What’s new in CA APM 10.1
Team Center Map APIs & UX improvements
Browser Agent Improvements
Node.js Agent
• EM on Java 8• Domain changes with no restart• .NET socket monitoring DNS issue fixed• DA variance intensity expanded• Thread-dump truncation fix
SimplificationWork Phase 1
26 © 2015 CA. ALL RIGHTS RESERVED.
Support for Modern Development Technologies
New Node.js agent
Monitor apps deployed to Docker containers with java agent
Real time monitoring of Application and Node.js health/performance
Easily monitor apps deployed using CF java build pack
Collects basic health metrics from Pivotal CF (Field Pack)
Visibility into application performance and CF Pivotal health
Automatic collection of deep dive diagnostic details
Easily install and deploy agents without having to modify the Node.js app source code
Visualize app performance and Docker health in one view
Collects basic container health metrics (Field Pack)
27 © 2015 CA. ALL RIGHTS RESERVED.
Node.js Agent
Monitors apps written in node.js Automatically collects deep dive diagnostic snapshots
Correlates performance to application tiers
Does not require any modifications to the Node.js app source code
28 © 2015 CA. ALL RIGHTS RESERVED.
PROACTIVE INTELLIGENT COLLABORATIVEEASY
The Key to Stimulate User Loyalty and Differentiate Your Business in the App Economy
Driv ing Toward
E.P. I.C. APM
Thank you