Cloud Migrations

Six Cloud Migration Strategies (Based on Gartner and Amazon Methodologies)

learn solutions architecture

This post discusses the six cloud migration strategies (Based on Gartner and Amazon Methodologies).

In today’s episode I will cover the 6 fundamental migration strategies that organizations have at their disposal when migrating to the cloud. These strategies are based on Gartner’s research and also on the work that Amazon has done in helping their customers to migrate to the cloud. Both Gartner and Amazon discuss these extensively on their blogs and websites as well. As a technology executive, if you are still in the early phases of your cloud migration journey, a review of these strategies can help you in developing the right mental models that in turn can guide you to develop your own digital transformation journey.

So, let’s get started.

One of the key phases that every organization goes through when considering migrating its legacy systems to the cloud is that of a discovery process. In this phase, the organization essentially takes a detailed inventory of its systems and then decides one by one on the effort and cost required to do the migration. This step is usually done by keeping the overall business case and objectives of the migration in perspective. For each of the applications and systems in its inventory, the organization may decide on a specific migration strategy or approach. We will discuss those strategies next.

Re-hosting – The first strategy is that of re-hosting. This is also referred to as lift and shift and involves migrating a system or application as is to the new cloud environment. The focus is to make as few changes to the underlying system as possible. During the discovery process of the migration planning exercise, systems that qualify for such a migration are usually considered quick-wins as they can be migrated with minimal cost and effort. However, as the application and system usually involves a simple lift and shift, such as system isn’t expected to utilize the cloud native features and thus isn’t optimized to run in a cloud environment. Thus depending on the system, it may even be more expensive to run the new migrated system on the cloud. These types of issues should be considered before categorizing a system for such type of migration.

Refactoring – Refactoring is the second migration strategy and falls on the other extreme of the migration effort because it requires a complete change and reengineering of the system or application logic to fully make use of all the cloud features. When complete, however, this application is fully optimized to utilize cloud native features. So, even though the cost and effort required for this migration can be quite high, in the long run this approach can be efficient and cost effective because the application is reengineered to make use of the cloud native features. A typical example of refactoring is changing a mainframe based monolithic application from its current form to a microservices based architecture. When categorizing an application as refactoring, the business should perform a detailed business case analysis to justify the investment of the cost, effort and a potential business impact and also to ensure that other alternatives are considered as well.

Replatforming – This type of migration is similar to re-hosting but requires few changes to the application. Amazon’s AWS team refers to this approach as lift-tinker-and shift. Even though this approach closely resembles that of re-hosting, it’s categorized differently simply because it requires some changes. For example, in doing such migrations, an organization may plug its application to a new database system that’s on the cloud or change its web server from a proprietary version such as Weblogic to Apache Tomcat, which is an open source based web server. So, for planning purposes it’s important to categorize it as such. Obviously, if a system or application is going to be changed to make even slight changes, it may need to be put through more thorough re-testing processes.

Repurchasing – This migration strategy entails essentially switching the legacy application in favor of a new but similar application on the cloud. Migrating to a SaaS based system would be an example of such a migration where an organization may decide to migrate from its legacy financial system to a SaaS based financial ERP system.

Retire – The fifth strategy is about retiring systems and applications that an organization no longer needs. During the discovery process, an organization may find applications as part of its inventory that are no longer actively used or have limited use. In such cases, those types of applications may be considered for retirement and users of those systems (if any) can be provided other alternatives.

Retain – In some cases, the organization may decide not to touch certain applications and systems and to postpone their migration for later in the future. This may be either that the applications are too critical to be touched at that point in time or require a more thorough business case analysis. Either way, it’s normal for organizations to not touch some applications and systems during their cloud migration efforts. However, in certain cases such as a data center migration, organizations may not have a choice and will have to consider one of the earlier described strategies.

To conclude, although the strategies that I have covered address most of the common cloud migration scenarios, as a technology executive you can devise other categories based on your business needs. Defining these migration categories and their criteria upfront can be a major and helpful step to aid in the migration of one’s legacy systems to the cloud.

Hope this session was useful. Again, to ensure that you don’t miss any future episodes, do subscribe to this channel.

  • End

Cloud Migration Resources (Case Studies, Methods, and Processes)

learn solutions architecture

The following lists some of the resources that can be helpful in planning for cloud migrations. This list is continuously updated. You can also read about cloud migration strategy here.

AWS Migration Sources

 

Cloud Migration Best Practices

 

Cloud Migration Case Studies and Examples

 

Cloud Migration – Methods and Processes

 

Cloud Migration – Professional Services

 

— End

Cloud Migration Strategy, Checklist, and Assessment

learn solutions architecture

Although migration considerations vary for SaaS, PaaS, and IaaS environments, the following are general considerations when migrating on premise application workloads to the cloud. (See article on cloud strategy)

Assess the capabilities of each cloud service provider’s services

Not all cloud service providers possess the same capabilities and services. Ensure that you conduct a due diligence based on your specific business needs. Among other things, this should include evaluating their security capabilities, cloud environment governance mechanisms, scalability capabilities (limits), etc.

Configuring and optimizing workloads for the cloud

When pursuing a “lift and shift” approach where you simply want to migrate internal workloads to an external cloud service provider, you need to ensure that the workloads will work effectively in the new environment without causing any issues. For example, you should be cognizant of resource sharing and pooling considerations.

Perform an internal skills assessment

Taking on any cloud project requires that you have an appropriate team in-house to work with the cloud service provider and the internal IT department to facilitate the migration. Ensure that you have the right people with the right skills before embarking on such endeavors. This team should be well versed with the source environment such as your data center along with a complete understanding of the target cloud environment and underlying architecture.

Formulate a strategic roadmap of migrations

When pursuing an aggressive cloud migration strategy, it’s advisable to chart out a clear roadmap of migrations that start out with migrations of low risk systems and progressing to more complex implementations.

Formulate a cloud architecture

Devising an appropriate cloud architecture designed to handle all your current and future workloads can go a long way in helping toward a smooth migration and for providing a solid digital platform for your systems and applications for the future. Therefore, before moving to a cloud implementation, ensure that you work with your cloud service provider on devising a proper cloud architecture that will be relevant to your organization’s needs and provides a foundation for the future. Areas of discussions when devising such an architecture include geographical needs of your systems, security, scalability, issues related to public, private, hybrid, and community architectures, etc.

User Administration

As your enterprise moves to the cloud, your IT staff and / or business users will need access to the environment. You should therefore understand the user administration and management process related to addition and removal of users along with role and permissions assignment, etc.

Regulatory and Compliance issues during migration

Data migration issues during the migration phase should be planned carefully when migrating applications to the cloud, especially when it comes to regulatory and compliance issues. The transition phase introduces a number of security issues that include temporary contractors and consultants having access to data, data migration to the cloud through insecure channels, etc.

Getting back to your enterprise’s architecture

An enterprise’s application architecture provides numerous details that can be quite useful when planning for the migration process. These details include application dependencies, user audience, usage patterns, and other such details. If your enterprise doesn’t have a documented application architecture, cloud migration can be an opportunity to start building one.

Application Usage Patterns

Depending on the complexity of the migrations, you should also consider collecting live usage patterns related to each application. Data includes CPU and memory usage, storage IOPS metrics, network performance data, etc. Such data should be collected over a few days and during critical times before final decisions and assessments are made regarding migration plans.

Categorize applications based on risk profiles

When migrating hundreds and thousands of applications, you should design a risk profiling mechanism and them rate the applications based on that risk profile. You priority should be start with low risk applications and then move to the next, unless there are other business reasons for doing it differently.

Assess and negotiate SLAs

Depending on the type of services that you sign-up with your CSP, ensure that you know the SLAs. These SLAs can be different across IaaS, PaaS, and SaaS environments.

Data portability

Before you are up and running on a new cloud environment, ensure that you understand how will you get access to your data and bring it to your premises when and if needed. Considerations include the mechanisms, security, and volume of data that is involved.

Assess the CSP’s monitoring, administration, and other dashboard tools

Once your environment is migrated to the cloud provider, you will need ways to monitor and control the environment depending on the types of services that you have requested. You should get a good trial run of those tools before the actual migration to ensure that post migration steps proceed smoothly.

Creating a test strategy and plan

Before going through a migration, appropriate tests should e run to ensure the actual migration will proceed smoothly. Plan for a back out strategy as well just in case you hit some hurdles during the migration.

Put together the right team

Cloud migrations can be a challenging task due to the inhernt complexities. To ensure a smooth migration, ensure that you assemble the right team members from inside the organization and the CSP. The team members should include a project manager, application architects, user managers, DevOps team members, and others.

 

Overcoming Concerns of Cloud Adoption within an Enterprise

learn solutions architecture

Although a number of enterprises have taken the steps to start migrating a number of their workloads to the cloud, concerns still abound across a number of organizations (both at higher and middle levels) related to migrating to the cloud. Sometimes this also causes a rift between senior and middle management due to disagreements on the pace of the cloud migration. Getting increasingly impatient to reap the fruits of business agility, senior management for example may get frustrated with middle management not acting fast enough to cloud enable the enterprise’s IT infrastructure, while middle management may not be satisfied with the lack of executive commitment by not allocating enough funding and resources that can help make that transition.

To help get over any concerns related to cloud migration or to increase the pace of migrations, the enterprise (and all of its LOBs) should translate the benefits of migrating to the cloud to specific business outcomes related to their own organizations. Such an exercise will motivate them to make that transition and / or accelerate the pace toward cloud migration. (PgMP Book Download)

Benefits / Advantages of Cloud Migrations

In summary, the benefits of cloud migration are the following that can be used to perform a feasibility study specific to an enterprise’s cases.

  • Scalability – Cloud environments address IT’s scalability concerns by providing an elastic computing model where additional compute and storage resources can be allocated temporarily during high demand business scenarios. Application workloads, therefore, can be spread across multiple servers and computing environments.
  • Infrastructure Cost savings – By moving from a capital (CapEx) expenditure model to an operating expenditure (OpEx) model (pay as you go), enterprises can reap major financial benefits by trimming a large portion of their IT budgets related to CapEx. Depending on the application workloads that one migrates, one can save in storage costs, servers, system administration and in other infrastructure costs.
  • Technical delivery agility – One of the advantages that cloud offers to the IT staff is in the areas of systems delivery. A cloud environment, for example, allows IT staff as well as business users to rapidly provision environments, test new technologies, deploy underlying platforms and development environments, and so on. This dramatically reduces time associated with the development and delivery of systems and in experimenting with new innovations.
  • Reduced Operational Complexity – By having an external service provider responsible for the IT infrastructure, platform and applications, enterprises enjoy reduced operational complexity related to running their IT systems thus enabling them to focus on running their businesses instead.
  • Enable mobility solutions for internal employees and customersCloud environments provide a stable environment for most end consumer related mobility solutions in which demand can spike during certain periods requiring temporary allocation of compute and other resources.
  • Enables the building of business ecosystems – One of the characteristics of the digital economy is that of business ecosystems, where businesses in an industry or across industries connect through digital platforms and business processes to share information and transactions. Clouds enable the building of those environments with ease by providing standardized integrations.
  • Better opportunities to use data analytics – Traditional data analytics solutions were expensive and complex to implement inhibiting enterprises to pursue data analytics initiatives. However, as many CSPs provide such complex environments on an as needed basis, more enterprises are making use of those solutions to advance their business interests.
  • A technical ecosystem – Cloud service providers usually provide a complete ecosystem of technical services. This can free up businesses to instead focus on delivery of solutions rather than worrying about the underlying details related to installations, configurations, maintenance, etc.
  • Access to a modern infrastructure – To strengthen and maintain their competitive positioning, CSPs try to stay in line with new technologies and offer them to their customers. This allows enterprise IT to have access to modern infrastructure and technologies without having to invest large capital.
  • Automation – The CSPs business model is based on deploying and running an efficient IT infrastructure, they are constantly tweaking and configuring to optimize and automate the environment that results in fewer errors and lower costs associated with the underlying infrastructure. Enterprise customers therefore gain various operational efficiencies from running in such environments without having to invest on such initiatives in their own data centers.

The reduced costs, ease of access to new IT environments and technologies, and reduced operational complexity allows businesses to become more innovative and offer solutions faster bringing the dreams of business agility closer than ever before. However, many organizations also have concerns that stall them to make that move to the cloud. Similar to the exercise above, sometimes addressing these problems head on and seeing their specific relevance to your organization can help alleviate those concerns.

Cloud Migration Concerns

Some of the common concerns include:

  • Lack of Skills – One of the challenges that organizations face has to do with lack of skills in-house that can help them to assess the feasibility of transitioning to the cloud and to lead the transformation.
  • Legacy systems integration – Integration of newer technologies and systems with legacy systems can pose a challenge. However, most vendors are now offering cloud enabled environments for their solutions and migration toolkits and adapters to ease in transition. Looking into the specifics can ease those concerns.
  • General complexity with migrations – A large number of enterprises have undergone complex cloud migrations and the market in general has the resources and service providers that can help in those migrations.
  • Security and privacy concerns – Although moving to a cloud environment does pose some risk, most CSPs offer iron clad security environments for their customers. The large number of customers on the CSP’s infrastructure drives them to comply with latest security standards and government regulations.
  • Concerns over the resulting unused IT hardware – Many enterprises worry about the resulting unused IT hardware. However, with careful planning such hardware can be put to other uses or in some cases can be sold in the large market of unused hardware.

In most cases, the general concerns can be addressed by looking at the specifics of each environment. As most of the industry is moving towards the cloud, chances are that those concerns are usually addressed elsewhere.

— End