Cloud computing has proven its value to enterprises and service providers. On the business side, the cloud represents potentially lower costs thanks to pay-as-you-go pricing and the option to scale easily as the user base grows. For service providers, cloud computing keeps customer acquisition costs low, translating into higher operating margins. Basically, we might agree that cloud computing is a win/win for all involved. However, without a proper plan experience has told us this is not always the case.
Since cloud computing is clearly a service operation that combines most or all elements of previously physically-delivered services, the migration process for the cloud must always begin with an assessment of an organization's current level of IT maturity.
Assessment before migration
The first step to migrating applications to the cloud is understanding which of your systems are the best candidates for the cloud. Once you have identified the applications you will migrate, you can start a detailed look at functional requirements and operational dependencies. You should also assess the need for initial data loads. In the past I have migrated databases with over 500TB’s of data, which is a significant amount of storage. Make sure you consider the time required to migrate large amounts of data to the cloud.
Most applications depend on data or application services from other systems. You should determine if the migrated applications running in the cloud have access to these services. How are these services accessed? What ports are they communicating on? Also, consider if network traffic to the cloud-based application has a longer – latency and if this will affect your SLA with your users. It is important to identify those dependencies as early as possible to avoid design and implementation decisions that have to be revised or rolled back.
For a thorough assessment, before a cloud migration the following issues are usually considered:
- Drivers for migration - It is very important to understand the drivers behind a migration effort. For example, if the customer’s licenses for legacy technologies are expiring soon, their need to migrate to a newer platform might be urgent.
- Current environment - Creating a detailed inventory of the current application portfolio really helps in terms of understanding the purpose of a migration effort. This includes information regarding the number of programs, scripts, and external interfaces involved. It also includes hardware and software configuration information, including OS versions, database versions, features/functionalities in use, etc.
- Migration tools - It is not uncommon to test different migration tools and technologies to assess their efficiency and accuracy. A high level of automation along with accuracy in migration can result in less time spent in migration and testing.
- Migration effort estimate - This is usually provided by the migration service provider or database vendor and is the most common information businesses request when considering a migration project.
- Training requirements - Training requirements need to be considered to ensure that they can support the new environment effectively and can be used in the migration process if required.
- IT resources for the new database environment - This assessment should include critical database features and functions as well as additional software that may be required to support the migration process and maintain the migration after it has been deployed.
- IT resources for the migration project - Resources such as the hardware and software required for performing migration tasks also need to be considered. Companies may need to acquire new hardware and software to support the migration project, or they can provision these resources from a cloud service provider.
Photo credits: https://blog.earthlinkbusiness.com/