journey to cloud-native: where to start in your app modernization process

25
© Copyright 2017 Pivotal Software, Inc. All rights reserved. Journey To Cloud-Native: Where To Start In Your App Modernization Process Kamala Dasika Michael Villiger @DasikaKN @MikeVilliger

Upload: pivotal

Post on 11-Apr-2017

167 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved.

Journey To Cloud-Native: Where To Start In Your App Modernization Process

Kamala Dasika Michael Villiger

@DasikaKN @MikeVilliger

Page 2: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved.

Changing Model for Application Delivery

Development Deployment

Sparingly at designated times

Ready for prod at any time

Architecture Abstraction

Layer “Day 2” Ops

App Server on Machine

App on “disposable” infrastructure

Monolithic App

Microservices / Composite app

Linear / Sequential

Short cycles, test driven, iterative

Many tools, ad hoc automation

Manage services, not servers

Page 3: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved. 3

Enterprises operating at startup speeds

Page 4: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved.

Enterprise Application Portfolio

Built for Cloud Native

New Initiatives FREEDOM: RunYourApponAnyCloud

AUTOMATION: LowerOpsCostandIncreasesVelocity

RESILIENCY: Auto-Scale,Blue-greenDeploys,HealthMgmt.

GOVERNANCE: CommonDeveloper-Self-ServicedFrameworks

VISIBILITY: FullStackLogging,Monitoring&Auditability

SPEED: CutCycleTimefromMonthstoDays/HoursModernize to Cloud-Native?

Existing Workloads

Page 5: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved.

Evaluating the Enterprise App Portfolio

BUSINESS ECONOMIC TECHNICAL

•  Codebase•  Suitableframework/runLme•  RelaLvelylightweightfootprint•  No“hardwired”filesystem

dependencies•  Usage/workload

•  BusinesscriLcality•  Risktolerance•  Changefrequency•  Lifecyclestage•  Domainexpertavailability

•  Licensingcosts(HW/SW)•  Time-to-marketimplicaLons•  Revenueimpact-fullness

Page 6: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

Iden%fying Candidates for Refactoring -Mul%ple Lenses

Page 7: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

LensOne:UserExperienceandBehaviorAnalyLcs

•  RealUserMonitoringcanquicklyexposecandidatesforrefactoringbasedonacLvity

•  LookingatacLonfrequency,wecanidenLfyhighrisk/highrewardfuncLonalityformajorimpact

•  Conversely,wecanidenLfylowriskandlessfrequentlyaccessedfuncLonalityforproofofconceptrepla_orming

Page 8: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

LensOne:UserExperienceandBehaviorAnalyLcs

•  RealUserMonitoringcanalsohelpusfindcandidatesbasedonacLonduraLon

•  LookingatduraLon,wecanidenLfypoorlyperformingfuncLonalitytopursueimprovementsthatwillhaveimmediateuserimpact

Page 9: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

LensOne:UserExperienceandBehaviorAnalyLcs

•  Combiningthetwometrics,wecanlookattopconsumers;acLonsthattakealongLmeandarefrequentlyaccessed

•  Intermsofimpact,thiscompoundmetricwouldquicklyexposefuncLonalitythathasthemostimpactforenduserexperience

Page 10: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

LensTwo:Topology+DependencyDiscoveryandInfrastructureMetrics

•  UsingServiceFlow,understandthefrequencyofinteracLons,percentageofinteracLonsandcontribuLonpercentagetorankapplicaLonLersbasedonriskandimpact

Page 11: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

LensTwo:Topology+DependencyDiscoveryandInfrastructureMetrics

•  ULlizeautomaLcenvironmentmappingtounderstandtopologyofenLreenvironment

•  UnderstandthefullendtoendmapofdependenciesforexisLngservices

•  Thiswillalsoexposedependenciesteamswerenotawareof;i.e.communicaLonsbetweenservicesthatwereunexpected

Page 12: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

LensTwo:Topology+DependencyDiscoveryandInfrastructureMetrics

•  MapandunderstandresourceconsumpLontoidenLfyheavyconsumers•  FromtheIaaS/Hypervisor•  TotheVirtualMachine•  Totheprocess•  Totheservice

Page 13: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved.

Replatforming and Modernization

APP

APP

APPµService

µServiceAPP

APP

APP

µService

APPLICATIONREPLATFORMING APPLICATIONMODERNIZATION

The“Push”Approach The“Pull”Approach1.  Pushtheapp2.  Seewhatfails3. Writeatest4.  Gettheteststopass5. Writedownyourrecipes

1.  Buildnewfeaturesasmicroservices2.  Findtheseams3. Writetests4.  Refactorcodearoundseams5.  Getyourteststopass

APP

APP

Page 14: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved.

Breaking the Monolith Picking the Seams

•  Analyze –  Inbound and Outbound Coupling –  Databases & Data Stores –  Transaction Boundaries

•  Modes of Communication? •  Use Cases/User Journeys •  Business Processes •  Ubiquitous language

–  Nouns & Resources –  Verbs & Operations

•  Separated models for reading and writing •  Organizational semantics

–  Team Organization and Structure

Source: Webinar - “Breaking the Monolith” by Rohit Kelapure

Page 15: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved.

Example

Source: Monolith->Microservices: A Guided Adventure by Mike Gehard

Page 16: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

UnderstandServiceInteracLonsInsidetheWellStructuredMonolith

•  Withthewellstructuredmonolith,definecustomservicesaroundtheseboundedcontexts

Well-structured Monolith

Presenta%on

Business Logic

Data Access

Presenta%on

Business Logic

Data Access

Presenta%on

Business Logic

Data Access

API API

user order item

Page 17: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

UnderstandServiceInteracLonsInsidetheWellStructuredMonolith

•  WiththesecustomserviceswedigdeeperintointeracLonswithinthemonolith,transformingvisibility

fromthis:

Page 18: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

UnderstandServiceInteracLonsInsidetheWellStructuredMonolith

•  WiththeaddiLonalvisibilityconLnuetodiscoverandmapdependencies

tothis:

Page 19: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

UnderstandServiceInteracLonsInsidetheWellStructuredMonolith

•  AnduLlizetheserviceflowtodriveeffortstoidenLfytheboundedcontextstomovetoalooselycoupledmicroservice

Page 20: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

MonitorImpactDuringRepla_orming:UserExperience

•  ConLnuetotrackuserexperienceviaRealUsermonitoringduringrepla_ormingeffortstovalidateandtrackeffortstoimprovetheuserexperience.

•  EnsureregressionsareidenLfiedquicklyandrolledback,evenwhenusingblue/greendeployments

Page 21: Journey to Cloud-Native: Where to start in your app modernization process

©2017Dynatrace

MonitorImpactDuringRepla_orming:UserExperience

•  RealUserMonitoringexposesbusinesstargetsaswell.Trackconversionpercentagesandtrendstomeasureimpactofsuccessfulrepla_ormingefforts

•  EnsureregressionsareidenLfiedquicklyandrolledback,evenwhenusingblue/greendeployments

Page 22: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved.

22

Application Portfolio Virtuous Cycle

$$$$ ROI Funds

Transformation

Replatform Modernize

Runs on PCF

Existing Workloads Cloud Native

Built for PCF

New Initiatives

Auto-scaling High Availability Logging/Metrics Security

Zero Downtime Updates …

Spring Cloud Services

Continuous Delivery

User Provided Services

Page 23: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved.

Migrating an ESB to a Cloud Native Platform

Online Perf clinic – Managing Cloud

Foundry with Dynatrace

Introducing the Dynatrace Topology and Smartscape

API

Cloud Native Evolution – How Companies Go

Digital

Transforming the Monolith at 20 million transactions/hour -

Comcast

Breaking the Monolith

Resources

Page 24: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved.

Next Webinar

Journey to Cloud-Native: Continuous Delivery with Artificial

Intelligence

Download

Dynatrace Service Broker for PCF

Page 25: Journey to Cloud-Native: Where to start in your app modernization process

© Copyright 2017 Pivotal Software, Inc. All rights reserved.

Migrating an ESB to a Cloud Native Platform

Online Perf clinic – Managing Cloud

Foundry with Dynatrace

Introducing the Dynatrace Topology and Smartscape

API

Cloud Native Evolution – How Companies Go Digital

Transforming the Monolith at 20 million transactions/hour -

Comcast

Breaking the Monolith

Resources