devops, microservices and stress-free incidents. how toy have your cake and eat it too
TRANSCRIPT
DevOps,microservices andstress-freeincidents:Howtohaveyourcakeandeatittoo
PeterHolditchPrincipalPreSales Engineer
[email protected]@pholditch
Haveyouragendaandeatittoo
AppDynamicsConfidentialandProprietary 2
• Howdidwegethere?o WhyDevOpso WhyMicroservices
• WhereDevOpsandmiroservices collide• JointDevOpsµservices managementrequirements• Deliveringtheserequirements:buyvsbuild• Businesscaseforbuyingasolution
WhyDevOps?
• Therateofchangeofsystemshasgrownexponentiallyo 2releasesayear,deliveredcompletewithabigoperationsmanualisnot
recipeforhighvelocitydelivery
• Keepingsystemsreliableinthefaceofthisrateofchangerequireso Automationofthesoftwarerelease(manufacturing)processo Collaborationacrossthesoftwarelifecycle
• “traditionalops”runplatforms,deliverypipelines• Developers(formally)takeresponsibilityforapplicationtroubleshootinginproduction
Whymicroservices?
• Loosecouplingenablesagilityo Choosebestlanguageforthejobbyserviceo Differentratesofchangeperserviceo DifferentNFRsperserviceo Easiertocoordinateactivitywithinsmallerdevelopmentteams
• Focuseddomainexpertise• Betteraccountabilitytobusinessstakeholders
WhereDevOpsandmicroservices collide
• Tradeoffdevtimesimplicityvsoperationalcomplexity• Troubleshooting:howmanytechnology“throatstochoke”?
o Triagevsanalysiso Iseachpiecemanagedinthesameway?o Devtimefromeachteamtosupport=>thedreadedwarroom
• Maturity:onceaserviceisstableandtheteammoveon…o Whoownstheservicenow?o Whocantroubleshootit?
Requirementsforunifiedmonitoringofmicroservices• Fordevelopers
o Languagesupporto Lowtouch
• Inimplementationandproductionhandover• Providedetailedcodelevelvisibilitywhennecessary
• ForOpso Easeofuse;simplifytroubleshooting(“shiftleft”)
• Consistency• Comprehensiveendtoendvisibility,faultdomainisolation
• ForDevOpso Fosterdev/opscollaborationo Providefeedbackthroughoutdeliverypipeline
Automaticallytraceapplicationtrafficendtoend
AppDynamicsConfidentialandProprietary 7
Supportpolyglotapplications
AppDynamicsConfidentialandProprietary 8
Identifyflowpertransaction
AppDynamicsConfidentialandProprietary 9
Troubleshootindividualtransactions…
AppDynamicsConfidentialandProprietary 10
…downtocodelevel
AppDynamicsConfidentialandProprietary 11
IcanbuildthatmyselfwithELK/zipkin /…
AppDynamicsConfidentialandProprietary 12
• Sure,it’sonlysoftware…Let’sgetonwithit!o StandupElasticSearchandsuckinyourlogs.Jobdone?o Now,standardiseyourlogmessagessothey’reconsistento Now,flowatransactionidentifierendtoendandaddittothemessages,
orusezipkintotracetransactions
• That’sseveralmanmonthsofworkalready......andyoustillhavenocodelevelvisibility......noranyeasytouseUItoallowthatessential“shiftleft”
• NowimagineyouacquireaproductoracompanyL
Bonus:architecturalbenefits
• Architecturalgovernanceo Perservicedependencyanalysiso ManageConway’slaweffects
• Evolveandmanageriskinthesystemovertime• Dataforcapacityplanning• Achievematuritywithlessriskof“hittingawall”• Evolutiontoward#noops?
Thebusinesscaseforunifiedmonitoring
• Savedevelopertimeinproductiontroubleshootingtypicallybetween7-20%ofdevelopertime
• Savedevelopertimeinperformancetesting• Savedevelopertimeimplementingcustommonitoring• Savedevelopertimeinproductionhandoff• Easestaffon-boarding
“1monthto1day”• [SaaS]avoidrunningcostsofmonitoringback-ends
Free1devFree.5devFree.75devFree.25dev
Summary
• Microservices shiftcomplexityfromdevelopmenttoproduction• DevOpsisnotapanaceaforproductioncomplexity:developers
havedayjobs!• Productioncomplexityneedstobemanagedtoallowefficient
(stress–free)operation• AppDynamicsoffersanexcellent,cost-justifiable,solutionto
theseissuesQuestions?
WinacopyoftheDevOpsHandbookattheAppDynamicsstand (booth#214)