Title: NETE4631 Cloud deployment models and migration
1NETE4631Cloud deployment models and migration
2Recap Service-Oriented Architecture SOA
- A service-oriented architecture (SOA) is an
application framework that takes everyday
business applications and breaks them down into
individual business functions and processes,
called services. An SOA lets you build, deploy,
and integrate these services independent of
applications and the computing platforms on which
they run. IBM - Some of the characteristics
- Increasing nature of distributed systems
- Heterogeneity of systems and computing
environments - Transparency of communication infrastructure
details
3Recap (2) - SOA Enabling Technologies
- Enterprise Service Bus (ESB)
- Web Services (SOAP, WSDL, UDDI)
4Business Process Modeling (BPM)
- BPM addresses process flow and service
invocations to form useful works. - Two integration methods
- Orchestration
- Choreography
- WS- BPEL (orchestration-like)
- A language standard for WS interactions
- View business process as a collection of activity
graphs - Provides command for defining logic using
conditional statements, loops, variable etc.
5Recap (3) - SOA and Cloud
6Service Models and their risks
Modified from Cloud Computing Impact on future
enterprise architectures, Schekkerman, J.
7Service and Deployment Models
8Lecture Outline
- Cloud deployment models
- Business case
- Moving applications to the cloud
- Application attributes
- Cloud service attributes
- System abstraction
- Cloud bursting
- Application and cloud APIs
- Migration of SOA-based Applications to the Cloud
9Cloud Deployment Models (NIST)
- Public clouds
- Private clouds
- Hybrid clouds
The models by the US National institute of
standards and technology (NIST)
10Public Clouds
- Infrastructure is for public use
- Own by organization selling cloud services
- Potential advantage
- No risk in infrastructure
- Potential disadvantage
- Lack of security
11Key public cloud providers
- Google
- Google Docs, Google App Engine (GAE)
- EMC Corporation
- Parent company of VMWare, one of the leading
companies in virtualization - Microsoft Azure Platform
- Amazon Web Services (EC2 and S3)
- Salesforce.com (force.com)
12Partnership for cloud providers
- Yahoo! Research
- Computational Research Laboratories (CRL)
- Super computer with more than 14, 000 processors
- SAP and IBM
- Resources and Services Virtualization Without
Barriers (RESERVOIR)
13Partnership for cloud providers (2)
- IBM POWER6 Live Partition Mobility capacity
- HP, Intel, and Yahoo!
- OPEN CIRRUS A Global Cloud Computing Testbed
- IBM and Amazon
- IBM DB2, Informix Dynamic Server, WebSphere
Portal, Lotus Web Content Management, WebSphere
eMash, and Novells SUSE Linux operating system
14Private Clouds
- Private cloud has different meanings to different
people - But Basically, its a cloud infrastructure set
up, managed, and upgraded by an organization or
community for their own use (private use) - Full control of all resources and technologies
15Private Clouds (2)
- Commercial vendors are entering in this domain
quite fast and Open Source providers are also
there - Eucalyptus, Ubuntu
- Potential advantage
- Security
- Potential disadvantage
- Infrastructure cost
16Hybrid Clouds
- Combine multiple clouds (private and public)
- Each cloud retains its unique characteristics,
but bound together as a unit - Potential advantage
- Security and Infrastructure cost
- Potential disadvantage
- Policies compliance???, Synchronization???
17Other types of clouds
- Virtual private clouds (VPC)
- Run on top of public cloud
- Leverage VPN technology to customize network
topology and security setting - Advantage infrastructure and security
- Example, Amazon Web Services
18Other types of clouds (2)
- Community clouds
- Serve a common function or purpose of multiple
units - Share common concerns such as mission, policies,
security and regulatory compliances - Units can be within one organization or multiple
organizations - Advantage
- Cost shared infrastructure cost
- Security higher level of security and privacy
19Business case
- Dimensions to consider to save cost
- Ongoing operational cost reduction
- The value of preserving capital
- The value of upsizing on demand
- The value of downsizing on demand
- The value of agility
- The value of reuse
- The value of coolness
20Operational Cost Reduction
21Upsize and downsize on demand
22Case Study on Oil Gas Industry
- The migration use-case of an IT System
- From a companys in-house data center
- To Amazon EC2
System Overview
System Deployed in the Cloud
23Infrastructure costs
- Company C paid 104,000 to Company B for the
system in 2005, 19,400 of which was for the
systems infrastructure. - In addition, C paid B 43,000 per year for system
support and maintenance, 3600 of which is for
the running costs of the system infrastructure. - Over a 5 year period, the total cost of the
system infrastructure is therefore 19,400 (5
x 3,600) 37000
24Price Comparision
- Amazon EC2 provides an option of using either
small or large server instances depending on the
amount of CPU power and RAM required. - In Cloud, 37 cheaper compared to 1 small and 1
large server instance
25Support and Maintenance
- In 2005, 218 Support calls have been made
regarding the operation of the system. - The majority were about software problems.
- 45 calls were related to the systems
infrastructure. - 38 calls backup problems
- 5 calls network problems
- 2 calls power outages at B
- In cloud 21 eliminated
26Stakeholders Impact Analysis
- Stakeholders impact analysis is a method of
identifying potential sources of benefits and
risks from the perspectives of multiple
stakeholders. -
27The steps to do business case
- Understanding the existing issues
- Assign costs
- Model as is
- Model to be
- Define value points
- Define hard benefits
- Define soft benefits
- Create business case
28Moving applications to the cloud
- Deploy Application to the cloud?
- Entirely or Part of the application is on the
local system and another part is in the cloud - Migration involves
- Functionality Mapping - Identification of
potential benefits associated with migration - Analysis of critical features of application
- Analysis of features supported by cloud provider
- Nature of target cloud platform
- Evaluation of supported tools and technologies
29Application attributes
- Attributes to analyze for porting applications to
the cloud - Application
- Availability
- Data management
- Cost
- Maintenance
- Security
- Scalability
- Interfaces
30Application Attributes (2)
- Quality attributes associated with application
- Abstraction, configuration, interoperability,
modularity, reusability, language support,
monitoring support, staffing requirements, tool
support. - Quality attributes associated with availability
- Fault management, Geographic location, resource
pooling, resource access, reliability, uptime. - Quality attributes associated with scalability
- Caching, licensing, lifecycle management, load
balancing, replication, resource provisioning - Quality attributes associated with cost
- Development cost, resource cost, staging cost.
31Application Attributes (3)
- Quality attributes associated with data
management - Data exchange, indexing, online/offline access,
portability, query, state, store type, data
structures, transactions. - Quality attributes associated with security
- Access, auditing, authentication, cryptography,
identity, regulations, remote access, security
rules, trust relationships. - Quality attributes associated with maintenance
- APIs, Configurations, Deployment.
- Quality attributes associated with user interface
- Ease of use, interface features, user interaction.
32Cloud Service Attributes
- Features associated with application
- Accounting schemes, operating system support,
database support, resource pooling mechanisms,
site location, redundancy and replication,
relation management, virtual machine types, APIs. - Platform features
- Application support, deployment environments,
Internationalization (languages and locale),
programming langue support, testing, API and
command line interfaces.
33Cloud Service Attributes (2)
- Infrastructure features
- Availability, network support, load balancing,
reliability, replication, database support.
34Which cloud types to select?
35Following types of application are more suitable
for cloud
- Not mission critical.
- Not handling core business operations.
- Not dealing with sensitive data.
- Can tolerate high network latencies and work on
low network bandwidth. - Following industry standards. E.g. using
standardized tools for object to relational
mappings. - Do not require detailed customization for each
tenant. - Organization involved in porting have full
knowledge of application and its associated
domain.
36System Abstraction
- Target should be able to provide abstraction of
all required physical resources through
virtualization. - Example, Medical imaging system
37Cloud Bursting
- Cloud should be able to serve access capacity
when required. - Example, Reservation system
38Application and Cloud APIs
- Provides access to cloud resources in automated
fashion. - Nature of cloud APIs can impact migration
activity. - REST and SOAP are common techniques to expose
APIs. - Cross platform portability is an issue because of
unavailability of standardized APIs.
39Migration of SOA-based Applications to the Cloud
40Understanding your data, services and processes
- Data
- List systems the problem domain and the databases
that support those systems - Get DB information such as brand, model, etc
- Service
- List services in the problem domain and list what
they do, what information they process - Process
- Looking at processes in the problem domain and
how they will span between cloud and your
enterprise
41Examples of Architectural Components
- Data
- Customers (Cnum (char(30)) Cname (char(30))
CAddress (char(40))) - Services
- Add_Customer/ Update_Cutomer are bound to
Customer tables - Processes
- Generate_Customer_Record process is bound to
Add_Customer/ Add_Account/ Record_Sales services.
42Candidate Data, Services and Processes for the
Cloud
- When the processes, applications, and data are
largely independent, or loosely coupled - When the points of integration are well-defined
interfaces such as APIs - When a lower level of security will work just
fine - When the browser is the desired user interface
- When the money is tight
- When the applications and/or services are new
43Making the move to Cloud
- List candidate platforms
- Analyze and test candidate platforms
- Select target platforms
- Deploy to target platforms
- Example
- Processes
- IaaS / Amazon EC2 or P(rocess) aaS / Appian
- Service
- IaaS / Amazon EC2 or DaaS / Amazon Simple DB
- Data
- IaaS / Amazon EC2 or PaaS / Force.com
44Summary
- Application requirements and cloud features
should be carefully analyzed while migrating
applications on cloud. - Quality attributes support by cloud provider
plays a vital role in successful migrations. - Business dimension of application migration is as
important to consider as technical aspects.
45References
- Chapter 1, 14 of Course Book Cloud Computing
Bible, 2011, Wiley Publishing Inc. - Cloud Migration A Case Study of Migrating an
Enterprise IT System to IaaS, Khajeh-Hosseini,
A., Greenwood, D., Sommerville, I., 2009 - Chapter 4-7, 10. 11 of Cloud Computing and SOA
Convergence in your Enterprise, Linthicum, D., S.