What is Cloud Computing?
To begin any discussion about cloud migration, we should start with the importance and influence of cloud computing in business. Many people define cloud computing as using a computer your business does not own, which you can access over the internet. IT managers who resisted migrations to the cloud were jokingly called “server huggers”. Traditional computing is referred to as being on-premises because it resides in the business’s data center. During the 1970s, businesses often used time-shared computers connected over dedicated or dial-up connections simply because they were too expensive to own. Since then, the IT landscape changed from a centralized infrastructure to distributed to cloud-based architectures.
Why Cloud Migration?
Thanks to the evolution of high-speed networks, clustering and virtualization, applications are no longer limited by the capacity to a single physical server. Traditional data centers in the 1990s acquired dedicated servers for major applications that were considered capital assets. If the application outgrew the server, an expensive and time-consuming upgrade had to be procured. Cost is the other major problem with the proliferation of new applications. Managing all the servers often overwhelmed IT departments with the associated high costs of doing so.
By running applications in the cloud, business functions such as sales can use sophisticated applications such as Salesforce with an annual subscription, bypassing the need for IT to procure and manage servers. As they add more sales team members, they simply buy more seat licenses without worrying about server capacity. This flexibility allows businesses to focus on selling and IT to focus on supporting new business initiatives, making a strong case for cloud migration.
Cloud-based computing has matured to a level that is now considered to be mainstream. Cloud platforms offer new dimensions of elastic scalability, manageability, and availability. The software industry has wholly embraced cloud computing and offers businesses multiple paths to the cloud. The idea of only paying for the compute cycles you consume is compelling to business users and IT professionals who understand the complexities of capacity planning. Sizing servers for peak usage is inefficient because most of the data center becomes underutilized most of the time.
Cloud Migration Approaches
It is easy for a new business of diverse stages from startup to enterprises to be 100% cloud from day one. Existing businesses, especially large enterprises with hundreds of legacy applications, can take years to migrate to the cloud. Highly-regulated businesses such as financial services and healthcare handle and store data that cannot leave their data centers or country, preventing them from achieving full cloud migration.
There are several approaches for cloud migration, from lift-and-shift to rewriting the application to exploit cloud architectures fully. Migrating can be expensive, so every application must be considered individually. The entire application stack must be taken into consideration when auditing the current IT landscape. Some applications may never move, such as those that run on an operating system that relies on a chipset based on non-Intel hardware. To help you visualize, the following are seven migration approaches sequenced by order of complexity and the considerations for using them:
- Rehosting or “lift and shift” lets you migrate an application in days. You shut down the systems being moved, take a cold backup, and then restore it to cloud-based servers. Even with this simple migration, you need to do test migrations to ensure you have enough time to transfer the application code and scripts to the target cloud platform in the allotted time. Large applications with lots of data may require you to ship a hard disk to the cloud provider. Actian provides databases that use the same code base on-premises and in the Actian Data Platform to make migrations easy.
- Re-platforming maintains the architecture of the on-premises application but takes advantage of some of the infrastructure services offered by the cloud platform, such as load balancing, messaging middleware and managed storage.
- Repurchasing is a popular option offered by software vendors such as Actian so customers can move their data to the cloud platform version of an on-premises database technology, including Ingres and Zen.
- Refactoring involves a partial redesign of an application to take advantage of the cloud for improved scalability, for example.
- Re-architecting an application involves more extensive changes, such as containerization, to allow it to be run on multiple cloud platforms and to add some cloud-native features to simplify the technology stack to improve reliability and manageability.
- Rebuilding an application to get the most out of the cloud means rewriting it using the latest microservices architectures and development tools to maximize the application components’ reusability and allow real portability across cloud platforms.
- Retiring an application makes sense when its functionality is no longer needed or is being replaced by newer applications. IBM coined the term “functionally stabilized” to inform customers that no new features will be added, support will cease, and customers need to follow a defined migration path to a replacement solution.