You are on page 1of 6

Moving to the Cloud: Workload Migration

Techniques and Approaches

Joydipto Banerjee
IBM
Kolkata, India
joydipto.b@in.ibm.com

Abstract— The paper presents an important aspect of cloud moving workloads to “cloud environments” need to follow a
computing technology, namely migrating enterprise level multi-step process to get those applications running correctly in
workloads to a cloud environment, without re-architecting or re- the targeted cloud environment. First, the targeted applications
engineering the existing applications. How readily an application need to be identified and “segregated” from the other
can be lifted and shifted onto a cloud platform depends on factors applications running on that same server. Then an image of that
like nature of the application, the type of cloud etc. In this application, its underlying Operating System and infrastructure
respect, the paper explores the methodology of migrations along management agents need to be created and added to the cloud
with the challenges and issues that usually acts as a barrier for catalog. Finally, the image needs to be instantiated in the cloud
organizations trying to pursue this goal. An effort is also made to
environment and verified to run with acceptable Quality of
see how the cloud migration framework maps to the cloud
Service (QoS) characteristics. The technical considerations for
Computing Reference Architecture model. Finally, a set of
migration patterns which span the continuum from legacy IT
a migration can be summarized as:
environment to the cloud are included as a common framework • Software compatibility
for aligning the various migration approaches developed in • Reference architecture
support of using cloud as a delivery paradigm. • Workload characteristics
• Platform dependencies
Across all of the migration patterns there are some common
I. INTRODUCTION
themes. These themes are described here in the context of the
Although much has been discussed about the benefits of five phases/steps of moving workload to the cloud and form a
cloud computing and the implementation details, there still high level reference model. Figure 1 illustrates the phases.
exists some gap when it comes to giving a direction on how to
migrate an organization’s workloads to cloud environment. The
skills and technology to assess the options, costs and benefits
Initial Implementing
of different clouds intelligently, then make a selection and Planning and
Screening the Migration
execute the move may be scant or non-existent. The paper does Design
and Analysis
not delve into how to cloud-orient the existing applications
such as componentizing the solution so that individually
scalable components can be distributed to separate nodes
allowing independent auto-scaling. Instead, the focus is more
on how to move the existing applications to cloud with Final Testing Tuning the
minimum effort. and Go-live Target
Organizations can typically be categorized into two broad
groups – one that have not considered moving to cloud and the
other one that have already moved to cloud. The first group
Fig. 1. The Five step methodology to Cloud Migration
may be looking to transform their IT organization but may not
have considered migration to cloud as part of the
modernization journey, although they may very well be aware A. Initial Screening and Analysis
of the benefits that cloud brings. On the other hand there are This involves collecting key data on existing workloads,
organizations that have already adopted cloud but still need applications and their dependencies, analyzing these data and
help to move their existing applications to the new determining probable migration candidates. Major activities for
environment. this phase are:
• Server Inventory Verification – Gathering information
II. CLOUD MIGRATION FRAMEWORK
on machine and OS type, collection of hardware and
Migrating workloads into cloud models is inherently an software characteristics, establishing a baseline.
“application centric” activity where each image/instance in the • Server Affinity Analysis - Capturing server application
cloud typically runs a single application workload. As such, dependency information to establish any undefined

978-1-4673-2371-0/12/$31.00 ©2012 IEEE


systems, constraints, complexity and establishing the C. Implementing the Migration
appropriate migration move groups. This step is where the workloads are moved to the cloud
• Measuring Server Utilization - Capturing server platform using the most appropriate technique. It involves the
utilization metrics to determine source to target following multi-step process:
mappings. 1) Prepare the target – At this stage, it is important that we
have a clear vision of the target cloud environment. Depending
Various methods like manual and automated data collection
on wheather the landing zone is a private cloud, public cloud
tools, conducting requirement workshops with stakeholders etc.
are employed to get the data for analysis. Some of the or a hybrid cloud, the target infrastructure preparation is
important questions that are usually raised at this stage are: tailored accordingly. The level of preparation also depends on
• Will the workload run in the target cloud environment, the actual migration scenario adopted(details in the next
for example, compatible infrastructure, middleware section). However the common requirement is usually
and operating system image? building a virtual machine instance from one of the available
• Will the target cloud environment satisfy performance, images in the target cloud catalog.
availability and other non-functional requirements
(NFRs)? 2) Migrate - Migrating/creating images from existing
• Will the target cloud environment comply with workloads, or reinstalling the software stack of the existing
applicable security, privacy and regulatory workload on the target cloud platform. There are essentially
requirements? three scenarios for implementing the actual migration:
• Will benefits be realized from migration, for example, a) Like for like migration:
lower ongoing operating costs, or increased flexibility It is the easiest and the most cost-effective way to move
and responsiveness? workloads from the non-cloud environment to the cloud
environment. It usualy takes place for like-for-like
The outcome of this phase is generally identification of environment, i.e those migrations involving Physical-to-
workloads(e.g., Web Serving, Web applications, Business Virtual or Virtual-to-Virtual movements with the same
Intelligence and Data Warehouse, ERP and SCM, Analytics) OS in the source and target. In this technique all of the
suitable to be hosted in a given cloud environment, the costs applications running in physical servers (or in a virtual
involved and the migration impact. The same is usually
machine) are packaged up into an image and added to the
provided in the form of ‘Application Report’.
cloud catalog and instantiated into a virtual machine on
B. Planning and Design the cloud platform. Technologies such as VMWare
Once the inventory of targeted applications has been Converter and Platespin are used to perform the migration
identified and prioritized, the logical design of the applications from the customer’s source environment to the target
in cloud needs to be accomplished.This step involves detailed cloud environment. This approach will migrate the
planning and design of the target environment(memory, operating system, middleware, application and any
processor, disk storage etc.) as per the given requirement. It customization, to the target environment in an as-is form.
includes taking key architectural decisions and hardware sizing Due to same nature of OS and software in both the source
after studying the software stacks and patterns of utilization. and target, the amount of remediation or porting required
The rationalization criteria considered during design and in this type of migration is almost negligible.
planning activities are: Application Criticality, Availability /
The benefits of this approach are:
Downtime Tolerance, Migration Complexity, Application
Scheduling Factors, Application to Application Interfaces, • It is applicable for a variety of existing workloads,
Business Constraints. Key work-products from this phase are: even business-critical and those requiring regulatory
• Detailed design of the target infrastructure compliance
• A technical solution document identifying the set of • Requires minimum outage window during migration
remedial actions that are required to minimize the • Minimizes the risk of application failure after
implementation risk in the subsequent steps standardization and on-boarding
• A migration plan that identifies sequence with which • It is mostly an automated process and thus has low and
applications/workloads are to be moved. predictable costs

The target environment is chosen such that it minimizes the


However the drawback is that this approach minimizes
amount of remediation/adjustment that needs to be done to the
application stack in order to improve the likelihood of success the amount of standardization that is achieved and
of operation after movement. Once approval for movement has therefore some of the agility benefits of the cloud
been granted, a more detailed plan is developed including pre environment are obviated. Furthermore, some cloud
and post migration activities, duration of any planned outage platforms do not support the ability to import images due
window and interlock with any dependency owners (eg. Testers to technical limitations, issues with license management
for acceptance testing). and bandwidth limitations that make it difficult to move
large software images over a network from the as-is database migration utilities like ‘export-import’ need to be
environment to the cloud platform. taken based on that timeline.
b) Cross platform migration:
4) Standardization - Standardizing or adjusting the created
A cross platform (e.g., Solaris to AIX, Windows to Linux)
image so that it is compliant with the infrastructure
migration is usually slow and expensive but enables more
management services of the cloud environment.
business agility than like-for-like migration. This type of
migration is generally complex because it involves change
in hardware type (e.g, SPARC to Intel), OS type and 5) Integration - Complete integration wherever required to
software versions when moving from the source to target. insure the connectivity from the moved-workload to
It thus requires a thorough analysis of the application, its dependent application services and data in the cloud
dependencies, compatibility of the software in the target environment.
environment etc.; code remediation, porting and test. D. Tuning the Target Environment
Moreover due to application dependencies, it may involve
Once the customer’s existing instances have been migrated
multiple migration phases before all the in-scope to the target cloud platform, these instances have to go through
applications are moved over to the target and the existing an adjustment stage to configure them to the target cloud
legacy servers decommissioned. environment’s architecture standards. These include:
On the other hand, this type of migration has the dual • Removal of any non-standard tools and agents
benefit of realising the enterprise’s broader IT • Applying any operating system level security patches
modernization roadmap along with adoption of cloud • Conforming to the target environment security policy
technology. A hardware and/or software refresh while or regulatory requirements
moving to a cloud environment promises a better ROI for • Installation of the target cloud environment’s
the organization, makes the IT infrastructure much more management tools
manageable and also makes it easier to create new As part of the migration, the IP address of the migrated
business services. server will likely change. As such, it’s possible that the
c) Application-only migration: configuration of the software running on the migrated instance
may need to be updated with the new IP address. Similarly
Recently there are new solutions like the ‘Zapp Migration there may be other configuration or application specific
Tool’ from AppZero[2] which extracts only the in-scope hardcoded changes which need to be made at this stage.
application from the source machine and enables it to run
on the target without the need of any re-installation, re- E. Final testing and go-live
engineering or re-deployment. Various scenarios exists by This is the final phase where it is confirmed that the
which this kind of migration can be made possible. The migrated workload is performing as expected and the cloud
essential mechanism by which this works is decoupling platform now becomes the production environment for the
the application from its OS and encapsulating it along migrated workload. The old source servers and images are
with its dependencies, cofiguration / registry files, usually de-commissioned or re-purposed after a pre-defined
services, runtime libraries into a ‘Virtual Application period of monitoring.
Appliance’. The application and its dependencies thus
III. MAPPING MIGRATION TO CLOUD COMPUTING
gets encapsulated in a virtual container, minus the source
REFERENCE ARCHITECTURE
OS. This virtual container having the application can be
copied over to the target and made to run with minimum The Cloud Computing Reference Architecture (CCRA) [1]
reconfiguration. This type of migration promises to cut is intended to be used as a blueprint / guide for architecting
down on the overall migration duration and complexity cloud implementations. The CCRA is structured in a modular
but it still has its limitation in terms of the type of fashion and defines the fundamental architectural elements
application handled and the choice of OS it is compatible constituting a cloud computing environment. Elements of
with currently. CCRA that should be considered when performing a migration
are identified below:
• Cloud Service Consumer :: Cloud Service Integration
3) Data Migration - Data migration from the current Tools
environment to the target cloud environment. The tool choice
• Cloud Service Provider :: Operational Support Services
for data migration is highly dependent upon the target cloud :: Change and Configuration Management
environment, the available ‘migration window’, network
• Cloud Service Provider :: Operational Support Services
proximity to the source platform and level of administrative :: Provisioning
access available to the migration team. The available
• Cloud Service Provider :: Operational Support Services
application downtime or the ‘migration window’ is :: IT Service Level Management
particularly an important consideration since the decision to
• Cloud Service Provider :: Operational Support Services
use replication based migration tools or the traditional :: IT Asset and License Management
• Cloud Service Provider :: Business Support Services :: C. Very complex workloads – Third party or custom developed
Service Offering Management application with significant customization. E.g., C, C++
• Cloud Service Provider :: Business Support Services :: applications.
Metering
• Cloud Service Creator :: Service Creation Tools V. COMMON MIGRATION CONSIDERATIONS

A. Issues and Challenges


Of course there may be other functional components of CCRA
that would also be required for a migration activity. However, Some of the potential issues and challenges that
the above identified components are the primary ones that are organizations may face while considering to migrate workloads
almost always required for a successful migration. to cloud are as follows:
1) Identifying the correct workload: This is a major
IV. WORKLOAD STANDARDIZATION FOR CLOUD challenge and involves evaluating the existing workloads on a
MIGRATION number of parameters. A formal fit-for-purpose workshop to
Standardization is one of the key features of cloud identify and categorize the workloads along with their target
computing and moving workloads to the cloud involves environment often helps in most cases. The various parameters
standardization and in some cases, consolidation of the source taken into consideration are:
workload(s). The figure 2 illustrates the concept. • Technical - security and privacy, ownership, level of
customization, integration, virtualization,
infrastructure, access to technical resources, etc
• Operational – this involves factors like deployment
flexibility, speed to implement, agility, migration ease,
IT utilization, etc
• Multi-tenancy – this involves issues dealing with
sharing business applications with partners, scalability
across multiple locations, globalization, etc
• Cost of Ownership/ Return on Investment

2) Security and Privacy: Data security and privacy remains


Non Cloud landscape Cloud one of the primary barriers to migrating workloads to cloud.
Understandably, sensitive data requires protection and loss of
Fig. 2. Migration to cloud can result in Consolidation control is not acceptable. Moreover there is usually a
The non-cloud environment is usually composed of many requirement to comply with many regulations that require data
different types of source systems, which can be categorized governance. Enterprises are thus reluctant to give up their
into the following types when considering moving onto a cloud control over sensitive data to service providers.
environment: Most of the risks have to do with the accessibility, use
• Infrastructure as a Service (IaaS) - virtualized and control of data and the danger of having unauthorized
hardware, operating system and system management access to confidential, proprietary information. A generic
tools. model for data security might not be adequate for this purpose.
• Platform as a Service (PaaS) - messaging, application For example, consumers who primarily use collaboration tools
and database, middleware management tools and email systems would focus on access and policy controls,
• Software as a Service (SaaS) - business application while clients thinking of moving their healthcare applications
on cloud are more concerned with data isolation and
The workload characteristics, along with the source and encryption.
target cloud environments, determine the workload migration
complexity and cost. Workloads can be constituted into: 3) Quality of Service: This is one of the major factors that
A. Simple workloads – single application with no comes into play when organizations think about moving to
dependencies. E.g., HTTP servers, Groupware, small cloud. Current standards of Service Level Agreements(SLAs),
Databases. prevalent in the industry might not be strong enough to
gurantee uninterupted availability of running production
B. Complex workloads – single application with many applications on cloud. In most cases, enterprises get
dependencies, or a group of applications that must move at compensated for the amount of time the service was down but
the same time or extensive version upgrades included in that does not cover the business loss that cloud consumers
transformation. E.g, Partitioned Databases, Disaster might suffer. Without proper service quality guarantee
Recovery requirement, Korn or Shell based applications. enterprises may not be ready to host their business critical
infrastructure in the cloud.
4) Cost Savings Potential: Enterprises need to first get a vitally important process to use in determining when or how to
feel of real cost savings before committing to put their migrate an existing workload to this environment.
workloads on to cloud. The return on investment (ROI), Capex B. Private Cloud to Public Cloud
versus Opex costs benefits, utilization, etc. are important
In this context a private cloud environment implies that a
considerations for an organization before investing on cloud.
client’s infrastructure has been configured in a private cloud
style, meaning it is provisioned for exclusive use by a single
5) Network Performance / Responsiveness: Cloud organization comprising multiple consumers (e.g., business
computing is inheirently network centric. This becomes all the units) and is on the client’s premises (e.g. in their data center
more important when migrating applications on to cloud facility). A public cloud style infrastructure is one which is
environment, since network bandwidth becomes a critical provisioned in an off-premise and open use environment
factor. Higher bandwidth ofcourse means higher costs and exhibiting multi-tenant characteristics (e.g. meaning workloads
organizations need to find a balance between the two, when are likely on a shared physical computing, network, and storage
considering any cloud migrations. environment). This pattern is focused on the movement (and
potential migration) of one or more workloads from the private
6) Integration Complexity: Since most business to the public cloud environment. It’s important to note that not
all workloads (or workload components) need be moved to the
applications are not independent and do not work in isolation,
public cloud. It’s also important to note the public cloud
it becomes very important to understand the integration environment may be owned, managed, and operated by the
complexity when considering a migration. Possibilities include organization, a third party, or some combination of them, and it
integration with existing on-premise applications, other cloud may exist on or off premises.
applications, up-stream/down-stream connections etc.
C. Private Cloud to Hybrid Cloud
B. General Best Practices A hybrid cloud combines the benefits and challenges
• It is very important to understand and determine the contained in both the public and private deployment models.
target cloud environment at the outset, since the Most notable among these challenges is maintaining the
migration strategies and planning would be guided by integrity of application and data level integration as some or all
the choice of the “landing zone”. of the components of a workload are migrated between
• A thorough workload analysis must be done to environments. Thus this workload movement pattern covers
estimate migration costs, potential benefits and identify the bi-directional movement of workloads between a public
candidates for moving to cloud. Migration must and private cloud deployment model and covers both full and
address the needs of both existing workloads as well as partial migration. This is an important aspect since, in the case
of partial movement, the aforementioned integration integrity
new workloads.
will be critical to maintain.
• It is important to understand that migration may
address an entire workload or just one or more of its D. Public Cloud to Private Cloud
constituent parts. This is a less traditional movement and migration pattern
• The organizational impacts of migration must be since there’s a lot of excitement concerning the move away
considered, especially when it is addressing from a traditional environment to a cloud style environment
consolidation during migration and those ancillary and there is a lot of exaggerated assumptions about the
effects on other systems. guaranteed value that moving to a public model will provide.
However there are times when a workload can be developed,
VI. CLOUD MIGRATION PATTERNS built and tested in a public cloud environment (which does not
Some definite patterns emerge from the commonly found have a focus on production level workloads) and then moved
repeatable migration scenarios that exist today. Some of these back “on premise” to a client’s internal cloud where mission
are described below. critical and/or production level applications will run.
Moreover, there are many cases where an application can be
A. Traditional IT to Public Cloud tested with the need to expose sensitive information in a public
This pattern is focused on the movement and migration of model, and then be brought “back on premise” to complete
workloads from an existing, non-cloud style, infrastructure to testing with the data at full fidelity. In many cases, this
an off-premise public cloud style environment. In this scenario workload movement and migration pattern also supports a
there is a set catalog of target platforms which are statically performance testing scenario in the public venue before
moving back internally.
defined; therefore, the movement/migration of workloads to
cloud must take into consideration, the OS and platform stacks E. Public Cloud to Public Cloud
supported by the cloud service provider. In addition, the This is typically expected to be transparent to the user of
movement of workloads in this pattern will include any re- the cloud environment and involves a migration and movement
engineering, updated integration and process updates which effort to lift and move a workload between two cloud
may be required to maintain expected functionality and SLAs. environments which are using the public delivery model. This
Choosing the right workload to migrate to the public cloud is a is especially evident when a client wants to move between
cloud providers, such as moving from Amazon EC2 to the IBM
cloud or vice versa. Considerations of platform, hypervisor, computing is, however, easily matched by the challenge and
integration, data formats, and lower level IaaS dependencies effort to transform traditional IT to a cloud model. There is no
must taken into account. As the cloud provider market one-size-fits-all cloud, and it is up to each business to decide
becomes more saturated, there will be more options for clients how much change is tolerable and to decide how far into the
to choose among the best price or capability offered by the cloud to step. As with all journeys, planning goes a long way in
service providers. reaching the destination. Taking the time to understand the
different layers of cloud, to assess the suitability of applications
F. Traditional IT to Private Cloud to different clouds and to acquire whatever skills may be
This is one of the more complex movement patterns as it needed to execute the move may make a significant difference.
requires several stages of movement and migration and may
also require several stages of re-engineering leading to a final ACKNOWLEDGMENT
standardized tech stack. The primary reason for additional The author would like to thank the Business Application
complexity in this pattern is because this is usually a first time Modernization department of IBM for providing the
cloud migration activity for the enterprise. Moreover, opportunity to research and work on this subject.
traditional IT environments typically have a set of custom
applications in a heterogeneous technology environment with a REFERENCES
myriad of integrations and interconnections (at the [1] Michael Behrendt et al., “Introduction and Architecture Overview - IBM
infrastructure, middleware, application and data layers). The Cloud Computing Reference Architecture 2.0”, The Open Group, pp.
movement of this complex environment to a cloud requires the 21-22, February 2011. Available:
potential re-engineering of workloads at some or all of these http://www.opengroup.org/cloudcomputing/uploads/40/23840/CCRA.IB
MSubmission.02282011.doc
layers. This is because when setting up the private cloud
infrastructure, the enterprise needs to maintain, if not improve, [2] Introduction to AppZero. Available: www.appzero.com
the same level of security, integration and operational efficieny [3] Joydipto Banerjee, Debasis R Choudhuri and L K Swift, “Accelerate to
Green IT - A Practical Guide to Application Migration and Re-hosting”,
that it is used to in the current traditional IT environment. developerWorks, July 2012. Available:
http://www.ibm.com/developerworks/linux/library/l-greenit/index.html
VII. CONCLUSIONS
[4] Joydipto Banerjee, “Real-world Journey to Your Own Private Cloud,
Cloud computing promises a path to higher efficiency, agility, Part 1: Prepare the concept”, developerWorks, July 2011. Available:
quality, security, governance and standardization in the http://www.ibm.com/developerworks/cloud/library/cl-
privatecloud1/index.html
delivery, consumption and operation of IT services, all at
reduced capital and operational expense. The potential of cloud

You might also like