bimodal / two speed it and cloud serverless microservice architecture

28
10 th March 2016 Bimodal / Two-speed IT and Cloud Serverless Microservice Architecture Robert Wilson Solution Architect https://www.linkedin.com/in/robertwilsonprofile

Upload: robert-wilson

Post on 14-Apr-2017

792 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

10th March 2016

Bimodal / Two-speed IT and Cloud Serverless Microservice Architecture

Robert WilsonSolution Architect

https://www.linkedin.com/in/robertwilsonprofile

Page 2: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

2COPYRIGHT © 2016 OAKTON  

Mature organisations by their nature have significant inertia which can make it difficult to respond quickly to disruption in their market. Different approaches to improve responsiveness are being taken by organisations to work around this, these include:

Start a new business targeted at disruptors, for example Qantas started Jetstar and NAB started Ubank

Move IT to a fully DevOps model for agility Move to a Bimodal IT / Two-speed IT where part of the organisational IT supports legacy

enterprise systems and part of IT can be disruptive and agile

Introduction

Page 3: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

Bimodal IT / Two-speed IT

Page 4: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

4COPYRIGHT © 2016 OAKTON  

Gartner introduced in early 2015 the term Bimodal IT and defines it as:

“the practice of managing two separate, coherent modes of IT delivery, one focused on stability and the other on agility.

Mode 1: is traditional and sequential, emphasizing safety and accuracy.

Mode 2: is exploratory and nonlinear, emphasizing agility and speed.”[1]

Bimodal IT - Gartner

Page 5: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

5COPYRIGHT © 2016 OAKTON  

Mode 1 Organisational IT or Traditional Organisational IT is seen as maintaining the enterprise systems, the systems of record, such as Enterprise Resource Planning (ERP) Systems or Enterprise Data Warehouse (EDW).

Systems of record are used by employees and support functions including recording transactions and maintain accounting data.

Mode 1 Organisational IT

Page 6: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

6COPYRIGHT © 2016 OAKTON  

Mode 2 Organisational IT or Innovative Organisational IT is the agile, disruptive and innovative IT developing with short release cycles for weekly/daily/hourly deployment of features or for A/B testing.

This mode is to respond quickly to opportunities and changes in market conditions and the focus is B2C or B2B mobile, collaborative, social applications. These have been termed systems of engagement by Geoffrey Moore [3].

The systems of engagement can build on and leverage systems of record. Systems of engagement focus on people and can deliver personalised content on multiple devices. B2C are consumer focused systems of engagement and B2B are Enterprise systems of engagement

Mode 2 Organisational IT

Page 7: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

7COPYRIGHT © 2016 OAKTON  

McKinsey refers to organisations having two modes of delivery as Two-speed IT where the high-speed IT can create strategic advantage for the enterprise with low speed maintaining systems of record [2].

They see Two-speed IT as re-inventing IT to support digitisation as part of an organisational transformation so as to deliver a strong digital capability in the organisation.

Their approach is to incrementally re-invent IT with Two-speed IT so as to focus the high-speed IT on high value areas for an initial period. After which agile innovative IT approach is roll out to other areas of IT.

This approach differs from Gartner in that the aim is to introduce a high speed IT and then eventually scale it to the rest of IT

Two-speed IT - McKinsey

Page 8: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

8COPYRIGHT © 2016 OAKTON  

McKinsey raises critical projects spanning both IT speeds could become uncoordinated and result in delays[2]. Also two speed IT functions could fracture IT within an organisation [2]

They see mitigation of this as paying careful attention to governance and accountability structures. Important is support from CEO and executive team.

As well the CIO must engage business lead support with a road map that delivers value early.

With McKinsey Two-speed IT the end game is to transform all of IT and converge to the high speed agile methodology and approach which will mitigate a fractured organisational IT.

Risks Associated with Bimodal IT / Two-speed IT

Page 9: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

9COPYRIGHT © 2016 OAKTON  

The drive for an organisation to be innovative creates two important organisational goals of:

1. Greater Agility and Adaptability; and

2. Faster Time to Market.

Innovative Organisational IT

Page 10: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

10COPYRIGHT © 2016 OAKTON  

Four enablers that can realise these organisational goals are:

1. Cloud Services and a Cloud Architecture: IaaS and PaaS;

2. Cloud Serverless Microservice Architecture: AWS Lambda;

3. DevOps and Automation: Continuous Integration/Continuous Deployment (CI/CD) for faster more reliable deployments and

4. Data Analytics: to gain knowledge from organisational data.

The following will discuss the first two enablers around the cloud.

Enablers

Page 11: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

Enabling Innovative Organisational IT withCloud Services and a Cloud Architecture

Page 12: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

12COPYRIGHT © 2016 OAKTON  

Cloud Architecture enables an Innovative Organisational IT with the use of public, or hybrid cloud through self service rapid provisioning of complete environments which include can logical firewalls, load balancers, servers and databases. As well as rapid creation these resources can be quickly deleted.

Using a Cloud Architecture with public Cloud Service providers has promoted innovation through not only the cloud services themselves but also the pace of introduction of new services from the providers as well as expansion of the number geographical locations. The first AWS service was SQS and now AWS provides over 50 services in 11 geographic locations with 5 geographic locations more announced. Azure has 20 geographic locations 5 more announced.

Innovative Organisational IT with Cloud Services and a Cloud Architecture

Page 13: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

13COPYRIGHT © 2016 OAKTON  

AWS Services

Page 14: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

14COPYRIGHT © 2016 OAKTON  

AWS Regions

Page 15: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

15COPYRIGHT © 2016 OAKTON  

Cloud Services – IaaS supports innovation with agility and flexibility in infrastructure of:

on-demand provisioning and de-provisioning; pay as you go; elastically auto scale up and down on load; fairly massive scalability; and abstraction of resources.

Cloud Services – IaaS

Page 16: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

16COPYRIGHT © 2016 OAKTON  

PaaS is important as to increase innovation you need to reduce the cost of failure.

PaaS reduces the cost of failure by providing platform level services to facilitate:

Continuous Integration and Continuous Deployment - increased deployment frequency with reduced fear;

Lean methods - validating hypothesis and pivoting; and Experimentation with the use of on-demand application level services.

Cloud Services – PaaS

Page 17: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

17COPYRIGHT © 2016 OAKTON  

Some of the PaaS available in the market place:

AWS Elastic Beanstalk, AWS OpsWorks, RDS; Azure Web and Worker roles (Cloud Services), SQL Azure; Google App Engine; and Heroku.

PaaS Providers

Page 18: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

Enabling Innovative Organisational IT withCloud Serverless Microservice Architecture

Page 19: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

19COPYRIGHT © 2016 OAKTON  

Micoroservice Architecture now forms the basis for cloud flexible scalable resilient architectures.

Micoroservices are small cohesive encapsulated autonomous services that work to provide a focused piece of bounded business capability. Small focused services allow for simple interfaces that can follow the Single Responsibility Principle (SRP) which reduces coupling between services and increases cohesion within a service.

All communication between Microservices are network based through the REST uniform interface to avoid tight coupling and enforce a separation of concerns. The knowledge of the persistence is encapsulated within the Micoroservice which removes database coupling between services.

Micoroservices Overview

Page 20: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

20COPYRIGHT © 2016 OAKTON  

The Cloud Serverless Microservice Architecture is the next step in the evolution of cloud architecture.

Classical PaaS services such as SQL Azure, AWS RDS, Google App Engine have the concept of pricing and sizing based on instances or cores.

Whereas a Cloud Serverless Microservice Architecture is a microservice based architecture where the cloud service provider abstracts the compute resource to provide a platform to run business code.

There are no virtual servers / machines / instances to provision, manage or administer.

Cloud Serverless Microservice Architecture

Page 21: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

21COPYRIGHT © 2016 OAKTON  

In AWS the serverless compute service is AWS Lambda launched in late 2014.

AWS Lambda is an abstracted compute service which runs stateless business code (Javascript, Python or Java) known as a “Lambda function”.

The AWS Lambda compute resource executes code only on request, scales automatically and is billed in 100ms increments that the code executes.

AWS Lambda - Cloud Serverless Compute

Page 22: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

22COPYRIGHT © 2016 OAKTON  

AWS API Gateway is Amazon’s service introduced in mid 2015 to create RESTful APIs to connect to back-end features in Lambda or existing HTTP endpoints.

Combining AWS API Gateway + AWS Lambda creates a cloud stateless serverless microservice architecture.

In REST terminology “stateless” refers to session state being kept on the client [4]. Lambda function can access application state data from services such as Amazon DynamoDB.

Lambda functions can also access application state from Enterprise Systems of Record that have an HTTP REST end point through AWS API Gateway. API Gateway can securely connect to the systems of record HTTP End Point using Client-Site SSL Authentication.

AWS API Gateway

Page 23: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

23COPYRIGHT © 2016 OAKTON  

Cloud Serverless Microservice Architecture

Amazon CloudFront

CDN

AmazonRoute 53

DNS

Enterprise Systems of Record

AmazonDynamoDB

NoSQL DB

AWSLambda

Microservice Code

Amazon API Gateway

Microservice APIREST HTTP

Endpoint

Amazon S3 bucket

Static Website

Corporate Data CentreAWS Cloud Services

Page 24: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

24COPYRIGHT © 2016 OAKTON  

Technology heterogeneity - differing technologies can be chosen for each service and this can be modified without impact to other services. Thus new technology can be adopted more quickly;

Scaling - microservices can not only auto scale on demand but there is also the flexibility to scale only the services becoming a performance bottleneck;

Ease of deployment – Microservices can be deployed in an agile CI/CD environment. This allows deployments to be more frequent and can rolled back more easily in event of a failure.

Composability - As microservices are focused on smaller units of cohesive business capability these can be more easily composed into higher level services forming composite services and applications.

Replacability - As microservices are inherently smaller in size it can be easier and cheaper to completely rewrite and redeploy these services or make significant changes to take advantages of technology improvements.

Key Benefits of a Microservice Architecture

Page 25: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

25COPYRIGHT © 2016 OAKTON  

Architecting with microservices is not all peachy. Attention should be paid to:

Network Considerations - The overhead of a microservice architecture for communications between services can be mitigated to an extent by using a coarser grained interface. A coarser grained interface reduces chatter.

Monitoring - Having an increased number of services will require increased monitoring of the extra services.

Fault Tracing – Troubleshooting issues by tracing the path for a request taken through microservices adds difficultly of fault finding. A distribute tracing system can be used to assist with this.

Microservice Architecture Considerations

Page 26: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

26COPYRIGHT © 2016 OAKTON  

In a Bimodal IT, the high speed or Innovative Organisational IT allows a business to respond to or create disruption their market. Two key enablers for this Innovative Organisational IT discussed were:

1. Cloud Services and a Cloud Architecture, and

2. Cloud Serverless Microservice Architecture.

Conclusion

Page 27: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

27COPYRIGHT © 2016 OAKTON  

• Feb 9 2016, Google has launched Google Cloud Functions, “lightweight, event-based, asynchronous compute solution” http://venturebeat.com/2016/02/09/google-has-quietly-launched-its-answer-to-aws-lambda/

• Feb 22 2016, IBM has announced Bluemix OpenWhisk, “OpenWhisk provides a programming model to upload event handlers to a cloud service, and register the handlers to respond to various events” "http://venturebeat.com/2016/02/22/ibm-cloud-launches-swift-runtime-open-source-aws-lambda-competitor-github-enterprise-vmware-support/

Addendum – Recently Launched Serverless Cloud Services

Page 28: Bimodal / Two Speed IT and Cloud Serverless Microservice Architecture

28COPYRIGHT © 2016 OAKTON  

1. Gartner BiModal IT Glossary Definition http://www.gartner.com/it-glossary/bimodal

2. Reinventing IT to support digitization - Henrik Andersson and Philip Tuddenham, http://www.mckinsey.com/business-functions/business-technology/our-insights/reinventing-it-to-support-digitization

3. Systems of Engagement and The Future of Enterprise IT A Sea Change in Enterprise IT - Geoffrey Moore, http://www.aiim.org/~/media/Files/AIIM%20White%20Papers/Systems-of-Engagement-Future-of-Enterprise-IT.ashx

4. The REST Architectural Style – Robert Wilson, http://www.slideshare.net/wilsonrm/the-rest-architectural-style

References