Cloud enablement

32
Cloud Enablement – Concepts, Techniques and Core Strategy

description

 

Transcript of Cloud enablement

Page 1: Cloud enablement

Cloud Enablement – Concepts, Techniques and Core Strategy

Page 2: Cloud enablement

Table of ContentsOverview & Key Definitions1

The Cloud Explained2

Primary Enablement Strategy3

Program & Project Control4

Summary5

Page 3: Cloud enablement

Overview & Key DefinitionsWhat is The Cloud?– The Cloud is the use of both hardware and software computing resources that are delivered

as a service over a network (typically the internet).

What is Cloud Enablement?– It is the process of converting and modernizing existing infrastructure and software

resources to conform to a Cloud deliverable set of services

– Enablement to conform to a cloud type delivery is a multi-facetted process that requires a fundamental paradigm shift in the manner and way current services are maintained and exposed to the end user

– Cloud enablement shifts internal IT infrastructure to a public, private or hybrid cloud environment

Page 4: Cloud enablement

Overview & Key DefinitionsWhat are the advantages of The Cloud?– Scalability – Infrastructure can be added easily and on the fly; additionally, load balancing

and DNS routing allow for a more seamless and speedy user experience

– Flexibility – Individuals or teams can decide which services are most conducive to their specific business needs, allowing for a more ‘a la carte’ approach to user requirements

– Cost Effective – Infrastructure is more amorphous and seamless through virtualization; additionally, smaller upstart organizations can chose to leverage hosted infrastructure as opposed to incurring the costs for their own data centers

– Variable Clients – Through usage of web services, a robust platform can be created and exposed to users to allow for more variance to clients, also allowing them to be ‘leaned down’

– Unlimited Storage – Affording to the easily expandable nature of the infrastructure, additional storage capacity can be added easily and existing storage usage can be maximized

Page 5: Cloud enablement

Overview & Key DefinitionsWhat are some of the difficulties in moving to The Cloud?

– New Equipment• If developing your own internal cloud infrastructure, existing ecosystem and its hardware may be obsolete and require

replacement

– Learning New Technologies• New programming methodologies and languages will need to be learned and development resources will have to come

up to speed on the new concepts

– Resistance to New Trend• Many individuals may be hesitant to adopt a new technology paradigm and may express distrust or outright hostility

towards the cloud strategy

Page 6: Cloud enablement

The Cloud ExplainedHow is the Technology of The Cloud Defined?– The Cloud is actually a composite of many different technologies, working in unison to

achieve the purposes of making several services available via the network to users

– At a fundamental level, The Cloud is broken down into three primary constituent layers, demonstrating a ‘stack’ of services, shown below:

Cloud Clients

Web browser, mobile app, thin client

SAAS

Email, CRM, Games, Social Interfaces

PAAS

Web Services, Databases, Primary dev tools

IAAS

Virtual machines, Servers, NAS, Load Balancing & Failover

Application

Platform

InfrastructureSt

ack

Dep

ende

ncie

s

Page 7: Cloud enablement

The Cloud ExplainedCloud Stack Breakdowns– Each ‘layer’ of the cloud stack is dependent upon the layers beneath it– As a consequence, from a project perspective, the dependencies play a crucial role in the

overall cloud enablement strategy (**to be covered in more detail shortly)– Each layer’s constituent functionality is defined as follows (from bottom-up):

IAAS (Infrastructure As A Service) Layer– Consists of the primary hardware and network infrastructure– The setup is not in the traditional static server and dedicated storage sense, but instead,

utilizes network attached storage, system virtualization and specific load-balancing and failover technologies:

Virtualized ServersVirtualized Servers Attached StorageAttached Storage

IAA

S

Page 8: Cloud enablement

The Cloud ExplainedPAAS (Platform As A Service) Layer

– Consists of the main APIs and primary platform exposure of the service offerings– APIs will be in the form of web services (REST/SOAP) that are designed to leverage existing

internet protocols to transfer information between the client and the resident service– The APIs form the crux of the primary ‘business logic’, allowing different clients across

multiple platform types to access the exposed services without inherent technology dependencies

PA

AS

SQL Services

Database AccessDatabase Access

Data SecurityData Security

Search/IndexingSearch/Indexing

.NET Services

BackofficeBackoffice

Sharepoint Services

Sharepoint Services

Outlook ServicesOutlook Services

Access Control

AuthenticationAuthentication

Single Sign OnSingle Sign On

User RolesUser Roles

Workflow

Business LogicBusiness Logic

Data Entry/EditData Entry/Edit

Error CheckingError Checking

***Note: The PAAS Layer is directly dependent on the architecture and functionality of the IAAS layer

Web Service Interfaces

Page 9: Cloud enablement

The Cloud ExplainedSAAS (Software As A Service) Layer

– Consists of the primary applications accessed by the end user via different client types– The SAAS layer will leverage the services of the cloud stack below; i.e. both the PAAS layer

and the IAAS– Ideally, the applications of the SAAS layer are architected in such a way that make them

portable and scalable, allowing for different access types and client interfaces

SA

AS

***Note: The SAAS Layer is directly dependent on both the PAAS Layer and IAAS Layer

Mobile Phone Smart Phone Laptop Tablet Desktop Cloudtop

Client Interface(s)

Application ExposureApplication Exposure Platform ExposurePlatform Exposure Infrastructure ExposureInfrastructure Exposure

Page 10: Cloud enablement

The Cloud ExplainedUser Perspective

– From the standpoint of the user, they are oblivious as to the underlying design, architecture or overall configuration of the cloud stack itself

– From their perspective, accessing the services of the cloud is equivalent to plugging your toaster into the wall socket; you don’t care how the power is getting there, from which substation or transformer, you merely use it as needed

– Equivalently, you don’t care how the mobile interface to Facebook is working, you just know it does and syncs with the web version

******The Cloud becomes an amorphous concept; the user is not interested in the particulars of the interactions, they merely wish to leverage the services on an on-demand basis with the provider making things functional, scalable and user friendly******

Page 11: Cloud enablement

The Cloud ExplainedCloud Types

– There are three specific cloud types to be mindful of:1. Public Cloud – Primary services are exposed to the public domain and are accessible in the broader internet space

(eg. Gmail/Hotmail, Google Analytics, salesforce.com, etc)2. Private Cloud – Primary services are exposed internally, usually behind some sort of firewall, preventing access to

users or systems outside of those that have proper access (eg. Internal cloud email, internal file storage)3. Hybrid Cloud – Primary services can be exposed either internally or externally, with some sort of ‘bridge’ to

maintain communication and traffic between the clouds. This type of setup is common, especially for hosted services organizations that may have customers who want more security for their data. (**Note: example below is that of a Vmware hybrid cloud arrangement)

******The various cloud types can be constructed in a manner such that data access can be restricted in part or in full, depending on configuration******

Page 12: Cloud enablement

The Cloud ExplainedSummary

– The underlying premise behind The Cloud is to provide a flexible, scalable and modular baseline framework for the end user

– The framework of The Cloud is meant to be as amorphous as possible; the user should not be concerned with the underlying hardware configuration or technology choices

– The Cloud should be able to support multiple device types and access through a well documented and exposed set of web services

Page 13: Cloud enablement

Primary Enablement StrategyConverting to The Cloud

– Moving to The Cloud requires a re-vamping of several key aspects of the overall client/server model

– The actual execution cannot be a piecemeal approach; either a cloud adoption strategy is endorsed or it is not; half a cloud is not a cloud

– Full cloud enablement will require resources from several realms of expertise as well as a commitment from the stakeholders endorsing a long term strategy to move a cloud-based infrastructure and deployment model

******Note: A proper cloud enablement strategy should be considered a program, not a simple project due to the phased nature of the approach and the multiple parallel tracks that will be used******

Page 14: Cloud enablement

Primary Enablement StrategyWhat steps are involved?

– There are five key steps (and one steady state step) in the overall enablement strategy:

Cloud Strategy& Roadmap

Cloud Assessment& Readiness

Cloud Strategy& Planning

Program Mobilization&

Resource Allocation

**AgilePath Model

Step 1

• Inventory of existing infrastructure, applications and services• Itemization of hardware and software resources

• Primary program strategy and timeline• Cost & budget estimates

• Program go-ahead• Resources assigned, teams formed and contractor requirement

determined

Page 15: Cloud enablement

Primary Enablement StrategyWhat steps are involved?

Cloud Modeling & Architecture

Cloud Modeling(Cloud Resource &

Technology Patterns)

Cloud DeploymentModel

(Public/Private)

Cloud Architecture& Security

**AgilePath Model

Step 2

• Primary hardware choices• Main selection of specific software (virtualization, firewalls, load-

balancing)

• Determination of main overall cloud model• Parameterization of hybrid methodology (if required)

• Overall architectural diagram and data workflow• Primary security concerns itemized (authentication, single sign-in, user

roles, data compartmentalization)

Page 16: Cloud enablement

Primary Enablement StrategyWhat steps are involved?

Cloud Implementation& Planning

Cloud Provider Analysis & Selection

Cloud Deployment & Provision Plan

CloudGovernance

**AgilePath Model

Step 3

• Analysis of 3rd Party cloud provider solutions• Geographic legal considerations noted and itemized

• Primary deployment summary drafted• Timeline of phased rollout created

• Main SLAs drafted• Overall governance model finalized and ratified by stakeholders

Page 17: Cloud enablement

Primary Enablement StrategyWhat steps are involved?

Cloud PilotProject

Cloud Pilot Implementation

Cloud Learning &Strategy Adjustment

Cloud ProgramGo or No-go

**AgilePath Model

Step 4

• Initial Proof of Concept plan drafted• First level cloud pilot project initiated

• Main learning and transfer of knowledge to cloud adopters• Strategy adjustments and adoption strategy review

• Review and post-mortem of cloud pilot program• Final go or no-go provided by stakeholders and sponsor

Page 18: Cloud enablement

Primary Enablement StrategyWhat steps are involved?

CloudImplementation

Cloud ProductionImplementation

Cloud GovernanceSLAs

Cloud Operations Monitoring & Metrics

**AgilePath Model

Step 5

• Production rollout of cloud infrastructure• Initial exposure of cloud platform

• Licensing agreements finalized and ratified

• Production level monitoring of main cloud infrastructure• Primary implementation of load balancing and disaster recovery

technologies

Page 19: Cloud enablement

Primary Enablement StrategyWhat steps are involved?

**AgilePath Model

Steady State

• Integration & migration projects initiated

CloudExecution

CloudIntegration

CloudCollaboration

CloudMaturity

• Continuous migration and integration

• Exposure of SAAS applications

• Joint development activities between team

• Uniform process methodologies adopted

• Mature cloud now in place

• Continuous improvement process adoption

Page 20: Cloud enablement

20

Combined Steps & Overall Strategy

Cloud Strategy& Roadmap

Cloud Assessment& Readiness

Cloud Strategy& Planning

Program Mobilization&

Resource Allocation

Cloud Modeling& Architecture

Cloud Implementation

& PlanningCloud Pilot

ProjectCloud

Implementation

CloudExecution

CloudIntegration

CloudCollaboration

CloudMaturity

**AgilePath Model

Primary Enablement Strategy

Page 21: Cloud enablement

Primary Enablement StrategySummary

– Full enablement requires a multi-faceted approach, with adequate time allotted in strategy for review and rework as needed

– Strategy requires full commitment by stakeholders and sponsor; a half completed cloud will not provide the benefits of a fully implemented solution and will likely decrease overall productivity

– Approach must be phased to allow for a slow transition to new model and infrastructure; ensure pilot project leverages a less critical application or platform for concept validation

– Transition applications and services to The Cloud gradually to allow for smoother movement to new system and adequate time for knowledge transfer

Page 22: Cloud enablement

Program & Project ControlOverview

– Overall cloud enablement program should be segmented into project sections and teams based on the three tiered nature of the main cloud model

– Separate tracks for each project or project segment should be maintained to account for parallel development and implementation efforts

– Dependencies between tracks must be properly itemized and monitored by the project/program manager to ensure slippages or issues are accounted for and schedule adjustments are made accordingly

Page 23: Cloud enablement

Program & Project ControlProgram Tracks - Main track breakdowns

• Primary Applications Main software as a service offerings

• Web Services SOAP and REST platform and API exposure

• Main Access Clients Web, Mobile, Tablet, Thin Client user devices

Client Track(Track 0)

• Primary Infrastructure Hosted services, attached storage, web servers

SAAS Track(Track 1)

PAAS Track(Track 2)

IAAS Track(Track 3)

CollaborationEfforts

Parallel Activities

Page 24: Cloud enablement

Program & Project ControlTracks Strategy

– While the specific ‘tracks’ of the overall cloud strategy can function in parallel, it is imperative that any dependencies between the tracks be itemized and followed

– From the standpoint of the of the tracks themselves, it probably makes the most sense to make each track an individual project and monitor it accordingly

– As such, each track can have its own milestones, resource pool, allocated budget and project manager (if necessary)

– All project ‘tracks’ will then become part of the over-arching program that denotes the overall cloud strategy

Cloud EnablementMain Program

Track 1SAAS Project

Track 2PAAS Project

Track 3IAAS Project

Track 0Client Project

***Note: Depending on consensus and general preferences, Track 0 and Track 1 could be merged into a singular track; the separation is merely one of additional granularity to separate out different access types (web interfaces versus mobile applications)

Page 25: Cloud enablement

Program & Project ControlTrack Dependencies

– As indicated earlier, it is extremely imperative that dependencies between key projects/tracks are properly itemized

– Key milestones should be set up in the timeline to coincide with specific starts and finishes of key tasks for which a dependency exists

– Ideally, the most effective means to properly catalogue dependencies is to leverage a PERT or ‘Program Evaluation & Review Technique’ chart

– A PERT will allow the program manager to graphically display key dependencies, milestones along with all relevant start and end times for those key tasks

– Additionally, PERT will allow for the ‘critical path’ of the overall program to be calculated, thus making it easier to gauge the overall program timeline

Page 26: Cloud enablement

Program & Project ControlPrimary Schedule Diagram (PERT Chart)Sample**

Task 1

Start Aug 2010

Finish Mar 2011

Task 3

Start May 2011

Finish June 2011

Task 4

Start Mar 2011

Finish Oct 2011

Task 8

Start Oct 2011

Finish Dec 2011

Task 9

Start Jan 2012

Finish June 2012

Task 5

Start June 2011

Finish Dec 2011

Task 2

Start Mar 2011

Finish Dec 2011

Task 6

Start Aug 2011

Finish Dec 2011

Task 7

Start Mar 2011

Finish Mar 2012

Prototype

REST/SOAPEval

Infrastructure Prep Infrastructure Implementation

DesignReview

Design Doc

PrototypePresent

AppCoding

WSArchitec

ture

SchemaDesign

DBImplementation

WSCoding

Platform Endorsement

• PERT can function across all tracks or projects

• PERT can provide critical path of overall program

Page 27: Cloud enablement

Program & Project ControlProgram Phases

– As the entire cloud enablement program is progressing, it is important to set up some large scale milestones or program ‘breaks’ that can be instituted across all major tracks

– These breaks will essentially segment the main program into distinct chunks or ‘phases’, that can be used as a means to perform validation of key work and milestones during the overall program

– The main reason to ensure phases are implemented is to help maintain parity between the specific tracks and ensure that work is not occurring in a vacuum

– The phases (or iterations if you prefer an Agile mindset) provide near term milestones during program progression and give adequate time for review and revisiting of key attributes of the overall program and its constituent projects

Page 28: Cloud enablement

Program PhasesCloud Enablement Timeline– Milestones exist in all major program tracks

Program Start

Near-term IAAS milestones tackled first

Initial PAAS efforts started

Mid Program

Main IAAS systems in place

First gen platform now in place

Program Nearing Completion

PAAS now mature

SAAS and applications in place

Page 29: Cloud enablement

CLOUD PROGRAM FUNCTIONAL TRACKS

29

•Baseline Application Coding•Proof of Concept Applications

•Cloud Architecture Team Formed•Best Practices Documents

•Plan to Establish Global Datacenters•Draft of Virtualization Architecture

•Mobile/tablet Interfaces•Rollout of SAAS Applications

•First Generation APIs•Full System Integration •Uniform API Methodology

•Full Virtualization of Infrastructure•Bring Online New Data Centers•Clustering Technology In Place

•Fully Cloud Enabled Interfaces•Deprecation of older client/server solutions

•Fully mature API•Advanced System Integration (internal/external)

•DNS Load Balancing•Global Redundancy for Key Systems•Full Disaster Recovery and Fault Tolerance In Place

Phase 1 Phase 2 Phase 3

***Note: Above sample denotes some key cloud enablement milestones that denote a potential phased approach to overall program.

Page 30: Cloud enablement

Program & Project ControlFinal Thoughts

– The overall cloud enablement program is a large scale undertaking that requires numerous resources, committed stakeholders and a very diligent set of project professionals

– The Cloud is a paradigm shift in thinking as it pertains to how software is created and distributed; as such, the complexity of a shift of this nature should not be taken likely, especially by the project/program manager

– Monitoring the overall cloud enablement effort should be done at a program level, with projects being created as needed for the various different tracks or tier levels of the functional cloud stack

– Key phases should be instituted as ‘breaks’ within the overall program to set key milestones and points of review that can be leveraged to deal with any issues in the program or to address design items that were carried over

Page 31: Cloud enablement

SummaryThe Cloud– Represents a shift in the traditional client-server model to a more layered and functional

web service driven mechanism– Many large scale Fortune 500 companies are now adopting a much more aggressive cloud

strategy moving forward and this is likely to be one of the largest growth segments in the coming years within the tech space

Cloud Enablement– Is the process of moving from the more traditional client-server type to the more scalable

and functional modern cloud architecture, leveraging various technologies like virtualization, web services and mobile interfaces

– Involves a solid commitment by the stakeholders, sponsors and of course, the project manager

Page 32: Cloud enablement

SummaryFurther Reading– The following sources can be leveraged to gain a little more insight into The Cloud, its

technology and its future:

1. Cloud Computing – Wikipedia article on cloud technology, history and architecturehttp://en.wikipedia.org/wiki/Cloud_computing

2. Gartner Technology Research – Overview and assessment by Gartner on the future of Cloud Computinghttp://www.gartner.com/technology/topics/cloud-computing.jsp

3. Forbes Cloud Review – Assessment by Forbes on how Cloud Computing will increase in the coming yearshttp://www.forbes.com/sites/louiscolumbus/2013/02/19/gartner-predicts-infrastructure-services-will-accelerate-cloud-computing-growth/