Cloud computing has changed the way people and organizations work and collaborate across the globe. With a noticeable shift to this trending technology, organizations are looking for answers on how to get their cloud migration started. One of the first steps: planning. Moving your established infrastructure to the cloud involves systematic planning. In this article, we will discuss some key considerations to help you to plan right and make a smooth transition to the cloud.
First, let us quickly review the three major cloud computing models:
- Infrastructure as a Service (IaaS): This is the basic cloud service model. It consists of virtual machines, network load balancers, storage, and connectivity.
- Platform as a Service (PaaS): This model consists of operating systems, various databases, and software applications.
- Software as a Service (SaaS): With this cloud model, software applications are installed by the end user and are accessed on an as needed basis.
Methods for Migrating to Cloud
Now that we have reviewed the three major cloud models, there are five different methods a business can employ to migrate their software applications to the cloud. They are:
- Rehost on an IaaS platform
- Refactor for a PaaS platform
- Revise for the IaaS or the PaaS
- Rebuild on PaaS
- Replace with a SaaS platform
Rehost on an IaaS Platform
With this technique, a business moves all of their applications onto virtual machines that are based on the IaaS platform. The advantages of this type of migration are:
- Speedy migration: All types of business applications can be easily transported from an in-house or physical state to the virtual world with a wide variety of tools.
- Minimal costs: Since the ISP provides the hardware and software tools, there are no extra hardware and software resources that need to be purchased.
The disadvantages of this approach include:
- Scalability: The business owner is responsible for adding or removing extra resources onto their virtual machine.
- Distributed applications: The business owner has to check and confirm that their business and software applications have been transported into and captured by the virtual machine that they are using.
Refactor For a PaaS Platform
Under this model, all business related applications are migrated natively to the PaaS infrastructure, rather than being hosted on a virtual machine. The advantages of this model are:
- Integrated management: Business owners can access all cloud based systems through one centralize control panel.
- Programming language compatibility: Software and web developers can continue using their existing programming tools as applications are moved to the cloud, provided the ISP support those technologies.
- Missing capabilities: As previously mentioned, only those software development features that are supported by the ISP can be used. As a result, there could be significant limitations in the initial stages of cloud migration. For example, your application must comply with Heroku’s twelve-factor app methodology that lists the guidelines to follow while developing your new web-based application. The developer must ensure that while coding, the application is in complete sync with the PaaS vendor specifications.
Revise for IaaS or PaaS
With this migration method, a business owner can make full use of the benefits available to them at the PaaS level. On premise software applications can be transported into a distributed application landscape on the PaaS platform. The advantages of this include:
- Quick performance: The extensions that are written and executed for software applications will run very quick on the PaaS platform. A major boost to the software development cycle is provided by a heterogeneous application infrastructure. Bottlenecks associated with traditional software development such as network bandwidth, server software maintenance, and storage issues are removed.
- Better system integration: Software applications that are migrated to the cloud at this level are tightly integrated. This means that there will be a strong level of cohesiveness and seamlessness as future software applications are launched into the marketplace. Both developers and end users will greatly benefit. End users can have the Omni channel user experience and developers can create apps supporting multiple devices and platforms.
The disadvantage with this approach:
- Slower response time to market: If the business migrates all of their software applications at once with this method, there could be quite a long lag time until full benefits are realized. Therefore, it is important to migrate software applications one at a time (this is discussed in the next section).
Rebuild On PaaS
With this cloud migration method, software applications that are migrated to the PaaS platform are designed to interoperate with core cloud systems. However, this is a much more challenging and complex move to the cloud. The advantage of this method is:
- Newer cloud based features can be accessed: At the PaaS level, a business owner can get ahold of newer features as they become available.
The disadvantage with this technique is:
- Platform lock-in: If this methodology is used to transfer the software applications to PaaS, the organization may not be able to move these applications subsequently to either the IaaS or SaaS platforms.
Replace with a SaaS Platform
This is the most popular method of transferring business applications and all related software development projects to the cloud. Rather than outright buying licenses or investing in a virtual machine, the organization merely rents a license in order to gain access to a cloud-based platform and any software applications it offers. The advantages with this migration path to the cloud are:
- Tremendous cost savings: With a SaaS based transition; the business owner is not responsible for the cost of any hardware or software acquisitions. The ISP is responsible for hardware and software, including the costs associated with upgrading.
- Enterprise grade level access: Once all business applications have been transitioned to the SaaS platform, the business owner can gain access to the software at a fraction of the cost it would take to procure it. Since SaaS is subscription-based, there are no hassles of maintaining an on premise software and the need to buy server hardware is eliminated. Therefore, the total cost of ownership is reduced vis-à-vis buying an on premise license where work force and hardware investment is needed.
- Automatic scalability: As the cloud needs of the business change, SaaS based offerings can be adjusted accordingly.
The primary disadvantage of this migration route is:
- Lock-in: There is limited opportunity for customized software development using the cloud-based tools offered by the ISP.
How to Make the Transition to Cloud
For organizations migrating all their applications and software development projects to cloud, it can prove to be a challenging task. After all, what has worked traditionally as on premise solution now has to perform at the same level of efficiency once moved over to cloud.
As a result, the role of a technology consulting company can prove to be very beneficial in helping a business make the move to the cloud. A technology consulting company can help a business ensure a smooth and efficient transition by creating a phase-by-phase project plan.
To help plan a migration, a cloud consulting partner generally addresses the following:
- The business size, architecture, and the way the software applications interact with another are closely examined
- Depending upon the size of the business, larger software applications are evaluated earlier for migration, then smaller software applications follow
- The design patterns and the software coding practices for each software application is reviewed in order to determine if they will scale and operate at peak efficiencies once they are transitioned to the cloud
- A deeper portfolio analysis is conducted for those software applications which are deemed to be mission critical
- A security model is also formulated so that once all software applications have been migrated to the cloud, they will not become a target for hackers
The bottom line advice for planning a migration to the cloud: Start out small and conduct activities in phases, rather than doing everything at once. This strategy ensures no stones go unturned.