11 march 2016 microservices consulting · pdf file4 stratos wso2 donated to apache aws, open...

17
© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected] © 2016 Cognizant 11 March 2016 MicroServices Consulting Joe / Maha / Saroj @ Global Technology Office

Upload: dangkhue

Post on 09-Mar-2018

223 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

© 2016 Cognizant

11 March 2016

MicroServices ConsultingJoe / Maha / Saroj @ Global Technology Office

Page 2: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Contents

• Microservices - Sound Bytes

• Traditional SOA Vs Microservices Architecture

• Microservices Feasibility Analysis Framework

• Target End state & Platform Options

• Assets and Solution Frameworks

• Experience Summary

• Engagement Model

Page 3: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Micro Services – Sound Bytes

Monolithic Microservices PaaS

CaaS Dockers Kubernetes

An Architecture style where

all the services of

application built as single

unit/process and they are

tightly coupled with each

other

An architectural style for

developing loosely

coupled independent

services, each running in

its own process and

communicating with

lightweight mechanisms

A category of cloud

computing model that

provides a platform and

environment to allow

developers to build

applications and services

without concerned about

the infrastructure

It is a form of container-

based virtualization in

which container engines,

orchestration and the

underlying compute

resources are delivered to

users as a service from a

cloud provider

Open-source project for

containers runs in bare

metal that are independent

of hardware and language

Open source project cluster

manager for managing and

running Docker containers

across multiple hosts,

offering co-location of

containers, service discovery

and replication control

Page 4: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Traditional SOA vs Microservices Architecture

• Reuse

• Represents a business capability within an application

• Data entities accessed across services

• Coarse granularity reduces extensive cross-service calls

• Can aggregate loosely related functions and act on multiple

data entities.

• Agility and Flexibility

• Implements an independent feature within an application

• Single ownership and access of data entities

• Potential impact on latency on account of high level of

granularity

• Independently deployable, self-contained, scalable and

autonomous with few interdependencies

Parameters

Goal

Scope

Data Ownership

Response Time

Service Granularity

SOA

MSA

Page 5: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Where do we Start !!! - Microservices Feasibility Analysis

Portfolio Analysis

• Problem Definition

• Service Discovery

• Target Architecture Definition

• Pre-requisites Identification

• Roadmap Definition

Feasibility Analysis Toolkit

Tool-kit

Business Scenarios / IT Drivers

App 1

App 2

App 3

Inputs

Qualitative Inputs

Application

characteristics

Cloud Strategy

Quantitative Inputs

Application

complexity

Devops Maturity

Deliverables

• Business case for microservice

• Target platform options

• Application Target state disposition

Continuous Releases

Rapid Innovation

Independent Lifecycle

New capability build

Performance / Scalability /

Flexibility issues

Page 6: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Right Application End state Selection

Green field

developed as

microservice

Drivers

Migration Strategy

Client Benefits

Application End state Options

Lift & shift

as

monolithic

Rewritten as

Microservice

Scalability issues

High Flexibility &

Optimal Cost

Address growth

challenges

Greater alignment

between business

capabilities and

systems

Cost reduction

No Code Change

Involved

Move the AS IS code

as VM to

Any chosen

IAAS

On- Premise

Respond quickly to

new market conditions

Detect failure fast, fail

gracefully , recover

fast & Improved fault

isolation

Flexibility issues

Respond quickly to

new market conditions

Detect failure fast, fail

gracefully , recover

fast & Improved fault

isolation

Differentiation

New capability

exploration

Re-Write for

scalability Lift & Shift

Re-Write for Agility

Evolve -Microservices

Page 7: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Right Platform Selection

Public

Vs

Private

Open source

Vs

Commerical

IaaS / PaaS /

CaaS

VM

Vs

Containers

Provider

Selection

Platform Options

• Language Environment

heterogeneity

• Utilization Patterns

• Code stability

• Appetite for Open source

• Openness for Vendor lock-in

• Data / Security Compliance requirements

• Growth expectations

• IT Organization – Business alignment

• DevOps Maturity

• Development methodology

Application Profile Business Expectations Cultural Setup

Key Considerations

Page 8: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Assets and Solutions Frameworks

Cloud Set

App Insight

Active API Logic Lens

Resilience Validation

Activity Intelligence

Predictive Auto-Scale

Page 9: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Experience Summary

Capabilities explored

Dynamic service discovery

Dynamic routing & Load balancing

Site monitoring

Site Resiliency for Service Failures

Automated build & Deployment

Dynamic configuration with zero downtime

Private PaaS Setup - Netflix OSS

Re-architected Monolithic to Microservices

Interactive Exposure Map application – J2EE based

Developed claim, policy & Metadata Microservices

Developed transformation best practices

Conceptualized Micro-service discovery accelerator

Monolith to Microservices - Pivotal Cloud Foundry

Page 10: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Our Engagement Model

To Know More, Contact

[email protected] any leads and engagement opportunities

Customer Visits

and Demos

Enablement

Consulting

Delivery

Interested

Attend a workshop about Microservices

Page 11: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Appendix

Page 12: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Summary Offering Coverage

Implementation

Reverse Engineer the existing application

to pull the business rules for Microservices

( Existing Applications – Monolith to

Microservices conversion)

Top- down analysis from the

identified business process and

capabilities

Bottom-up analysis to identify

potential services that are both

useful and feasible , given any

existing constraints

Service realization

Tool based Continuous Integration and

Deployment

Service Deployment and activation

Service Governance

Architecture Definition

Establish specification for services ,

interaction and messages

Develop services models and prepare

Solution Architecture Definition Report

Establish Service Governance model

for life-cycle (development and

support)

Define scope for every micro service

with well defined interfaces with DB

break up

Selection of API gateway, Inter service

Communication, Container for deploy,

Deployment strategy, , Network

Strategy with PAAS provider or PAAS

Frame work etc

Consulting/

Application Assessment

• Understand Business Capabilities that

need to be build

• Discuss options for Private PAAS

solution ,Public PAAS or Hybrid PAAS

(e.g. Pivotal Cloud Foundry, Netflix)

and reference architecture inline with

Customer vision

• Derive Microservice architecture

blueprint

• Service Discovery (Tool aided):

Perform service oriented analysis to

identify services based on Key Factors

like Frequency of change, Criticality to

business, Specialized skills , Usage /

hits

• Microservice Implementation roadmap

Page 13: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Micro-services Discovery Framework

+

Usecase – Entity Cross Reference (derived from Logic-

Lens)Table – Entity cross-reference (Transposed)

Dynamic Correlation Matrix (Use Cases accessing same set of entities)

Micro-services groups• Group-1 – Usecase 1,3,10

• Group-2 – Usecase 2,6,9

• Group-3 – Usecase 4,7

Page 14: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Case Study 1 – Digital Initiative through Micro services -POCClient Situation Cognizant Solution

Client Profile & Background

Engagement Objective

• Analyze and assess all enterprise Level

Architecture styles in given scope to identify

independent application processing, language-

agnostic, modular approach, continuous

delivery, easy to replace and potential

microservices

• Document the result and categorize the

applications based on there ease of portability

score.

Assessment Deliverable

Timeline

Solution Offering

All functional and non-functional artifacts for

micro-services

Well architected and designed components which

supports

Load-Balancing

Fault-tolerance

Proxy-Servers

Service Orchestration

Container Deployment Artifacts scripts

Container scheduling and managing

Artifacts scripts

Resource dependencies management

scripts

Centralized logging setup

Centralized configuration setup

Centralized monitoring Dashboards

configuration

Offering Micro-service architecture to avoid challenges in

monolithic Architecture those including Operational

overhead, deployments, performance, alerting systems,

centralized logging.

The advantages of a Micro-services are summarized

below

o Faster and simpler deployments and rollbacks

o Independent Speed of Delivery (by different

teams)

o Right framework/tool/language for each domain

o Greater Resiliency

o High Availability

o Easy to Scale

o Real time dashboards using streaming

• The Customer is Leading Bank in UAE (Middle

East)

• Bank expanded services through web and

DIGITAL channels such as mobile, tabs, IVR,

ATM, VTMs ,Smart Watch Banking with no

branch support

Business Drivers

Be first in service ,Multi channel

support, Multi Vendor integration B2B

Capability, Channel based Reports

with zero Downtime

2 Months - POC

Technology Landscape/Tools

Technology

Micro-Services

SpringBoot

Dockers

Kubernate

NetFlix OSS

Page 15: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Case Study 2 – Cloud Portability Assessment of apps for a US Insurance Provider

Client Situation Cognizant Solution

Client Profile & Background

Engagement Objective

Analyze & assess the Java based enterprise

web applications in scope to identify the

ease of portability to a Cloud architecture.

Document the result and categorize the

applications based on there ease of

portability score.

Document the requisite code changes in the

applications.

Technology Landscape/Tools

Technology

Java

Tools

IBM CAST

Cognizant Proprietary

tool – Cloud

Portability Indicator

Java : 112K LOC

Java Applications : 3 Java Web Applications

GA Contract, MMCS, Terminal Equity

Size

Assessment Deliverable

Timeline

Solution Offering

Cloud Affinity score for Java applications

Total number of non-compliant code instances

was identified, documented and categorized

based on below rules category.

• SOAP

• RMI

• Thread

• Mail

• Sql

• Input/ Output @ IO

• ClassLoader

• LDAP

• HTTP Session

Analyze the customer’s application in scope to assess

the ease in porting them to as a cloud architecture by

identifying the non compliant code, effort required to fix

the code using Cognizant proprietary tool.

The advantages of a cloud based application has be

summarized below

o Innovate Faster

o Focus Resources

o Save Money

o Get the Best Technology

o Stay Up to Date

o Maximize Uptime

o Scale Easily

o Strengthen Security

o Do Your Project Right

o Get the Best Support

Timeline – 2 weeks

• The Customer is among the top Insurance

Provider in US

• It offers a wide range of products and has

operations in more than 65 countries with

manufacturing operations and companies with

laboratories

Page 16: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

PaaS Comparison

S. No Name Vendor InfrastructureSupported web

Frameworks

Supported DB

Platform

1 Open Shift Red Hat Open Stack JavaScript, Ruby, Python,

PHP, Perl, Java, Haskell,

and .NET

MySQL, Mongo DB,

PostgreSQL, MS SQL

2 Pivotal Cloud

Foundry

Pivotal Open Stack,

Amazon Web Service,

Java ,NodeJS,Scala,Ruby,

Python,GO,PHP

MYSQL,MongoDB,

Rabbit MQ etc.

3 Netflix OSS Netflix Amazon Web Service Java MySQL, Mongo DB,

PostgreSQL, MS SQL etc

4 Stratos WSO2 donated to

Apache

AWS, Open Stack, and

vCloud

PHP,Node JS,Ruby ,Java MY SQL

5 Heroku Salesforce Amazon Web Service Ruby,Java, Node.js, Scala,

Clojure, Python, PHP and

Go

Cloudant, Couch base

Server, Mongo DB ,Redis

,PostgreSQL

6 Blue Mix IBM SoftLayer Java, Node.js, Go, PHP,

Python, Ruby Sinatra,

Ruby on Rails Scala[

DB2, MySQL, Mongo DB,

PostgreSQL, MS SQL

Page 17: 11 March 2016 MicroServices Consulting · PDF file4 Stratos WSO2 donated to Apache AWS, Open Stack, and vCloud PHP,Node JS,Ruby ,Java MY SQL 5 Heroku Salesforce Amazon Web Service

© 2016 Cognizant *Confidential - This document is for internal reference only. If you have any customer requirements please reach out to [email protected]

Global Technology Office