Cloud Computing Patterns & Best Practices. Ezhil Arasan Babaraj Director of R&D Labs CSS Corp, India

Similar documents
Platform as a Service lecture 2

Document Sub Title. Yotpo. Technical Overview 07/18/ Yotpo

ARCHITECTING WEB APPLICATIONS FOR THE CLOUD: DESIGN PRINCIPLES AND PRACTICAL GUIDANCE FOR AWS

DISTRIBUTED SYSTEMS [COMP9243] Lecture 8a: Cloud Computing WHAT IS CLOUD COMPUTING? 2. Slide 3. Slide 1. Why is it called Cloud?

PaaS Cloud mit Java. Eberhard Wolff, Principal Technologist, SpringSource A division of VMware VMware Inc. All rights reserved

AWS Solution Architecture Patterns

Matrix IT work Copyright Do not remove source or Attribution from any graphic or portion of graphic

Developing, Deploying and Managing Applications on the Cloud

Large Scale Computing Infrastructures

Architekturen für die Cloud

Welcome to the. Migrating SQL Server Databases to Azure

Cloud Computing the VMware Perspective. Bogomil Balkansky Product Marketing

Introduction to Amazon Cloud & EC2 Overview

IBM Cloud for VMware Solutions

Developing with the Cloud

AWS Administration. Suggested Pre-requisites Basic IT Knowledge

VMware Cloud Application Platform

Demystifying the Cloud With a Look at Hybrid Hosting and OpenStack

Cloud Computing An IT Paradigm Changer

Introduction to Cloud Computing. [thoughtsoncloud.com] 1

Accelerate Your Cloud Journey

CLOUD SECURITY: THE CHALLENGES FOR THE DATA CENTRE AND IT ENVIRONMENT NOVEMBER 2016

Cloud Analytics and Business Intelligence on AWS

Developing Microsoft Azure Solutions (MS 20532)

COMPTIA CLO-001 EXAM QUESTIONS & ANSWERS

Cloud Computing Briefing Presentation. DANU

Fault-Tolerant Computer System Design ECE 695/CS 590. Putting it All Together

Never Drop a Call With TecInfo SIP Proxy White Paper

BraindumpsQA. IT Exam Study materials / Braindumps

Orchestrating the Cloud Infrastructure using Cisco Intelligent Automation for Cloud

Developing Microsoft Azure Solutions (70-532) Syllabus

CORPORATE PERFORMANCE IMPROVEMENT DOES CLOUD MEAN THE PRIVATE DATA CENTER IS DEAD?

Overview. AWS networking services including: VPC Extend your network into a virtual private cloud. EIP Elastic IP

Cisco Cloud Architecture with Microsoft Cloud Platform Peter Lackey Technical Solutions Architect PSOSPG-1002

Connecting your Microservices and Cloud Services with Oracle Integration CON7348

Enabling Public Cloud Interconnect Services F5 Application Connector

Technology for a Changing World

Cloud Computing Concepts, Models, and Terminology

CHARTING THE FUTURE OF SOFTWARE DEFINED NETWORKING

Microservices at Netflix Scale. First Principles, Tradeoffs, Lessons Learned Ruslan

Continuous Innovation DevOps and agile Deployment with AWS. Mickael Zewde

Introduction to Cloud Computing

Course Outline. Developing Microsoft Azure Solutions Course 20532C: 4 days Instructor Led

Part III: Evaluating the Business Value of the Hybrid Cloud

Analytics in the Cloud Mandate or Option?

Principal Solutions Architect. Architecting in the Cloud

IT Enterprise Services. Capita Private Cloud. Cloud potential unleashed

Watson Developer Cloud Security Overview

Pulse Secure Application Delivery

Course Outline. Lesson 2, Azure Portals, describes the two current portals that are available for managing Azure subscriptions and services.

Developing Microsoft Azure Solutions: Course Agenda

Atos Canopy Orchestrated Hybrid Cloud. Mark Nouris - Atos Head of Cloud Michael Kollar Head of Cloud engineering & TIC

17/05/2017. What we ll cover. Who is Greg? Why PaaS and SaaS? What we re not discussing: IaaS

Design Patterns for the Cloud. MCSN - N. Tonellotto - Distributed Enabling Platforms 68

AWS_SOA-C00 Exam. Volume: 758 Questions

20532D: Developing Microsoft Azure Solutions

About Intellipaat. About the Course. Why Take This Course?

Scaling DreamFactory

Let s say that hosting a cloudbased application is like car ownership

Why Microsoft Azure is the right choice for your Public Cloud, a Consultants view by Simon Conyard

Getting Started with Amazon EC2 and Amazon SQS

Exam : Implementing Microsoft Azure Infrastructure Solutions

Aurora, RDS, or On-Prem, Which is right for you

Security & Compliance in the AWS Cloud. Vijay Rangarajan Senior Cloud Architect, ASEAN Amazon Web

CIT 668: System Architecture. Amazon Web Services

DEFINING SECURITY FOR TODAY S CLOUD ENVIRONMENTS. Security Without Compromise

An introductory look. cloud computing in education

Hosting DesktopNow in Amazon Web Services. Ivanti DesktopNow powered by AppSense

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Transform Your Business To An Open Hybrid Cloud Architecture. Presenter Name Title Date

Amazon Web Services (AWS) Solutions Architect Intermediate Level Course Content

Cisco Cloud Services Router 1000V and Amazon Web Services CASE STUDY

Cloud Computing: Making the Right Choice for Your Organization

David Bernstein June 2012

Cloud Computing An IT Paradigm Changer

The Windows Azure Platform: A Perspective

Technology Overview ScaleArc. All Rights Reserved.

AtoS IT Solutions and Services. Microsoft Solutions Summit 2012

MAGIC OF SDN IN NETWORKING

Cloud Essentials for Architects using OpenStack

The Windows Azure Platform: A Perspective

F5 Networks F5LTM12: F5 Networks Configuring BIG-IP LTM: Local Traffic Manager. Upcoming Dates. Course Description. Course Outline

Amazon Web Services. Block 402, 4 th Floor, Saptagiri Towers, Above Pantaloons, Begumpet Main Road, Hyderabad Telangana India

Azure Certification BootCamp for Exam (Developer)

Amazon Web Services 101 April 17 th, 2014 Joel Williams Solutions Architect. Amazon.com, Inc. and its affiliates. All rights reserved.

RA-GRS, 130 replication support, ZRS, 130

Moving into the Cloud. Steven Canale, VP of Sales for SoftLayer

How to host and manage enterprise customers on AWS: TOYOTA, Nippon Television, UNIQLO use cases

Techno Expert Solutions

Distributed Systems. 31. The Cloud: Infrastructure as a Service Paul Krzyzanowski. Rutgers University. Fall 2013

Public, Private, or Hybrid Cloud

Cloud Computing Private Cloud

Cloud Computing. January 2012 CONTENT COMMUNITY CONVERSATION CONVERSION

Designing MQ deployments for the cloud generation

CLOUD COMPUTING. A public cloud sells services to anyone on the Internet. The cloud infrastructure is made available to

Vernetzte Fahrerassistenzsysteme (BMW + AWS ) Hazard Preview

Cloud Offerings: A Systematic Review

Developing Microsoft Azure Solutions

Developing Enterprise Cloud Solutions with Azure

HOW TO PLAN & EXECUTE A SUCCESSFUL CLOUD MIGRATION

Transcription:

Cloud Computing Patterns & Best Practices Ezhil Arasan Babaraj Director of R&D Labs CSS Corp, India

About CSS Corp 100% Referenceable Customers Driving Technology Innovation and adoption Technology OpEx Optimization Transparency,Openness& Flexibility Independent Centers of Excellence for R&D, Testing and Support Passion for Advanced Technology Operations & Support Dedicated CSS Labs for Technology Innovation Business Operations and Technology Optimizer Out-comes based pricing models Top Mid Market ITO Provider 2007,2008,2009 DataMonitor Recognized leader in Technology Operations Management with CoEs in Telecom, SaaS, Cloud, RIM, Testing, Support and R&D Strong Partner Ecosystem; AWS, Microsoft, IBM, HP 150+ Long Term, Strategic and Profitable Customers Operations in USA, UK, Poland, India, Manila & Singapore Technology Platform for DC Mgmt, Cloud Computing etc Privately held by investors including Goldman Sachs, SBAIF, Sierra Ventures 5,000+ Resources Market Validation 100% Client Retention Completed 3 acquisitions in 2010 2010 CSS Corp 2

CSS Corp Credentials 20,000+ Downloads 7,000+ Downloads 2010 CSS Corp 3

CSS Corp Labs Intellectual Property Cloud Computing Mobile Technology MobileWeb Platform Remote Phone Book Other Tools & Frameworks 2010 CSS Corp 4

= INTRODUCTION TO CLOUD COMPUTING

Definition Cloud Computingis a style of computing in which scalable and elastic IT-enabled capabilities are delivered as a service to external customers using Internet technologies

Characteristics 2010 CSS Corp 7

Myths about Cloud Computing 2010 CSS Corp 8

Advantages No upfront Investment CapEx converted into OpEx Embrace Innovation Allows you to focus on your business High Tech at an Affordable Price Maintenance of Infrastructure/Platform/Software no longer YOUR worry

Cloud Service Model 2010 CSS Corp 10

Cloud Types 2010 CSS Corp 11

Cloud Building Blocks Compute Services Elastic Infrastructure Low Availability Computing Node High Availability Computing Node HPC and Gluster Compute Auto Scaling Cloud Monitoring Map Reduce Storage Services Strict Consistency Eventual Consistency Relations Data Storage Blob Data Storage Block Data Storage NOSQL Storage Communication Services Network & Security Services Reliable Messaging Message Oriented Middleware Exactly Once Delivery At least Once Delivery Elastic Load Balancers Virtual Private Cloud Firewall Services 2010 CSS Corp 12

Thanks to cloudcomputingpatterns.org = CLOUD COMPUTING PATTERNS

Architectural Patterns Basic Composite Application Loose Coupling Stateless Component Idempotent Component Elasticity Map Reduce Elastic Component Elastic Load Balancing Elastic Queuing Availability Multi-Tenancy Watchdog Update Transition Single Instance Component Multiple Instance Component 2010 CSS Corp 14

BASIC ARCHITECTURAL PATTERNS =

Composite Application Problem User Interface is tightly coupled with business logic Web Page or the forms logic built is not be able to expose as a web services Most used functionality is not distributable Solution Divide your application logic as multiple components Application Component deployment can be scaled out with Auto Scaling State can be shared through a context Use composite languages such as BPEL to build apps Disadvantages Cloud Building Blocks Too many components brings communication overheads Too few components looses its flexibility Elastic Infrastructure Elastic Load Balancers Auto Scaling 2010 CSS Corp 16

Loose Coupling Problem In general, Component dependency is high Exchange of information needs to be minimized Communication is mostly synchronized Solution Reduce/Remove assumptions about the other component during information exchange Components communicates asynchronously with an intermediary Disadvantages Cloud Building Blocks Performance reduction due to asynchronous communication Communication path is longer due to address resolution, format transformation etc Elastic Compute Elastic Load Balancers Message Queue Services 2010 CSS Corp 17

Stateless Component Problem Failure of a component in a distributed world is high In Cloud it is further increased Instance of a Component needs to be Auto scaled Solution Do not maintain state within the component, externalize it Single Data Store for persisting state State can be shared even via the Context Disadvantages Cloud Building Blocks Single point of failure at the data store NoSQL db services Scalable RDBMS services Cache Services 2010 CSS Corp 18

Idempotent Component Problem Component receiving messages needs to handle duplicates even in reliable delivery To Support legacy applications that does not support coordinated transaction management Solution Use unique message ID s while exchanging Build filters to ensure duplicate messages are identified Design to perform same operations multiple times Disadvantages Cloud Building Blocks Need to build logic to eliminate duplicate message processing Message Queue Services 2010 CSS Corp 19

ELASTICITY PATTERNS =

Map Reduce Problem Cloud Storage does not support complex queries Big data or large data sets needs to be processed Need for parallel execution of queries Solution Map the dataset into a smaller and distribute among multiple nodes Execute the query to filter dataset Reduce the resultset for consolidated resultset Disadvantages Cloud Building Blocks Integrating RDBMS data with Map reducing is difficult Map Reduce Service 2010 CSS Corp 21

Elastic Component Problem Dynamic Nature of Elastic Infrastructure The application component provisioning Pay per user translates to running/operational cost Solution Automate the application component provisioning Measure the performance of your application Optimize the auto scaling parameters properly Disadvantages Cloud Building Blocks In efficient Auto Scaling leads to high expenditure Elastic Infrastructure Cloud Monitoring Service Auto Scaling 2010 CSS Corp 22

Elastic Load Balancing Problem Work load distribution Support for multiple protocols required Need to avoid single point of failure Solution Use Round robin, sticky session techniques HTTP & HTTPS are the commonly supported Use DNS capabilities Disadvantages Cloud Building Blocks SSL certificate needs to be shared with the provider Zone apex issue Elastic Load Balancer 2010 CSS Corp 23

Elastic Queue Problem Component receiving messages needs to handle duplicates even in reliable delivery To Support legacy applications that does not support coordinated transaction management Solution Use unique message ID s while exchanging Build filters to ensure duplicate messages are identified Design to perform same operations multiple times Disadvantages Cloud Building Blocks Need to build logic to eliminate duplicate message processing Message Queue Services 2010 CSS Corp 24

AVAILABILITY PATTERNS =

Watchdog Problem Design for high availability with unreliable compute nodes Architecturally Enable redundancy & Fault tolerance Solution Redundant compute Nodes performing the same functionality Use Message Queues to distribute the job Build logic to identify the active node for processing Disadvantages Cloud Building Blocks Complexity in handling message queues and active node finding logic Elastic Infrastructure Message Queue Services 2010 CSS Corp 26

Update Transition Problem Handling the component upgrades/updates in a large scale deployment Crucial business component should not be unavailable during transition Solution Deploy additional resources for the new components Monitor the health of the new components Bring down the old components Disadvantages Cloud Building Blocks Co-existence, sometimes the new component version requires a complete change Elastic Infrastructure Message Queue Services 2010 CSS Corp 27

MULTI-TENANCY PATTERNS =

Single Instance Component Problem Optimize the component infrastructure usage Share the same functionality across multiple tenants Solution The tenants can access the shared component via web services Component pooling would boost the performance Disadvantages Cloud Building Blocks Lock and addressing components needs to be dealt carefully Elastic Infrastructure 2010 CSS Corp 29

Multiple Instance Component Problem Dedicated Instance of a component for each Tenant Tenant specific customizations needs to be deployed at runtime Tenant requirements to not to share due to regulations Solution Automate provisioning/de provisioning of the component Keep a data store to manage the existence of the component Disadvantages Cloud Building Blocks Difficulty in resource management Automation may result in complex programming Elastic Infrastructure Cloud Monitoring Auto Scaling 2010 CSS Corp 30

BEST PRACTICES & RECOMMENDATIONS =

Best Practices Design for failure Automate your deployments Use the Cloud Building Blocks Multi Cloud Strategy Secure the data while @transit & @rest Do not open the infrastructure for entire world Use Virtual Private Cloud or VPN Verify the SLA s carefully Understand the Limitations 2010 CSS Corp 32

Recommendations Start experimenting with the cloud Unlearn and Learn Let the cloud providers know what you want Move the non critical business applications first 2010 CSS Corp 33

References http://labs.csscorp.com http://cloudcomputingpatterns.org http://www.opencloudmanifesto.org/cloud_computing_use_ Cases_Whitepaper-2_0.pdf http://aws.amazon.com/solutions/case-studies/css-corp/ http://cloudofinnovation.com/2011/07/01/big-data-andhadoop-a-cloud-use-case/ http://ezhil.sys-con.com/ http://megam.info/ http://www.microsoft.com/windowsazure/ http://www.eaipatterns.org http://www.soapatterns.org 2010 CSS Corp 34

Thank You! 2010CSSCorp CopyrightNotice: This presentation contains proprietary information of CSS Corp. No part of this presentation may be reproduced, stored, copied, or transmitted in any form or by means of electronic, mechanical, photocopying or otherwise, without the express consent of CSS Corp. This presentation is for a specific intended audience circulation only and not meant for external distribution. Information is classified into 4 levels: Confidential: This is specifically restricted to the Senior Management and specific professional advisers. Restricted: This is restricted to Senior Management (PA s and assistants an also access subject to respective reporting head s approval). Private: This covers all information assets that have value but which do not need to fall within either of the other categories. Public: This is information which can be released outside the Organization. 2010 CSS Corp 35

USE CASES =

Use case - I Premium TechSupport Platform TechSupport For Dummies is a premium tech support platform with various value added services bundled as part of the service. Highly reliable email, chat & voice support To support seasonal spikes To provide high end remoting infra for remote support Partners to integrate using API Multi region CRM access Identify the usage pattern, user behavior, root cause analysis for generic problems..etc 2010 CSS Corp 37

Use case - II Helping people to connect with great local businesses Yelp uses Amazon S3 to store daily logs and photos, generating around 100GB of logs per day. The company also uses Amazon Elastic MapReduce to power approximately 20 separate batch scripts, most of those processing the logs. Features powered by Amazon Elastic MapReduce include: People Who Viewed this Also Viewed Review highlights Auto complete as you type on search Search spelling suggestions Top searches Ads 2010 CSS Corp 38

Use case - III Communication as a Service Tropomakes it simple to build phone, SMS and Instant messaging applications. You use the web technologies you already know and Tropo'spowerful cloud API to bring real-time communications to your apps. Twilioprovides a web-service API for business to build scalable, reliable communication apps. 2010 CSS Corp 39