BACKGROUND IMAGE: iSTOCK/GETTY IMAGES
The lure of cloud may make it seem like all of an organization's resources should be migrated immediately. There...
is no denying that, in certain cases, public cloud platforms can be tremendously beneficial. In others, however, a cloud migration probably doesn't make sense.
Organizations need to take a hard look at their existing investments in infrastructure -- from hardware to application portfolios to network architecture and beyond -- to determine if a move will be beneficial.
1. Evaluate current infrastructure
One of the first considerations as part of the cloud migration process is an organization's existing data center investment. There are not only licensing costs involved, but also costs associated with hardware resource consumption and support infrastructure. As such, there is almost always a significant investment associated with an on-premises server. Outsourcing a server's data and/or functionality to the cloud may mean abandoning your on-premises investment unless enterprises can repurpose those servers.
Although this lift-and-shift approach to cloud migrations may not make financial sense for organizations that have a large investment in an on-premises data center, an organization can still benefit from migrating certain on-premises resources to the cloud.
No matter how good your server hardware is, it will eventually become obsolete. Enterprise-class organizations have traditionally coped with this expected obsolescence by adopting a hardware lifecycle policy. An organization, for example, might choose to retire servers after five years. That being said, an organization could integrate a cloud services roadmap into its hardware lifecycle policy. Doing so enables IT teams to migrate on-premises resources to the cloud instead of moving them to newer hardware.
The prospect of using cloud computing is often particularly attractive for smaller organizations and startups. In the case of a smaller organization, the use of cloud services provides access to enterprise-class hardware and fault-tolerant features that would otherwise be unaffordable. Similarly, startups can benefit from cloud services because they can get their operations running quickly without having to invest in on-premises data center resources.
2. Consider application performance and portability
In the case of application servers, administrators must consider whether the application can function in the cloud. Likewise, the application's performance must be considered as part of a cloud migration plan.
Compatibility usually isn't a big problem for newer applications that run on top of modern OSes. It is also easy to assume that performance won't be an issue for such applications because most cloud providers will allow hardware resources to be allocated to hosted servers on an as-needed basis. However, two major considerations must be taken into account for such applications.
The first is performance. Even though you can provision the hosted application server with nearly unlimited compute and memory resources, internet bandwidth may impede application performance. It does little good to have a high-performance hosted application server if internet bandwidth limitations stand in the way of good UX.
The second consideration is application portability. Although it is often easy to migrate a virtualized application server to the cloud, the application might have external dependencies that rule out -- or greatly complicate -- a cloud migration. For example, the application might have an Active Directory (AD) dependency or require access to an on-premises SQL server database.
For older applications that run on legacy OSes, a move to the cloud may not be an option. Lab testing is the only way to know how an application will behave in a cloud environment. Testing helps determine the steps that are involved in moving the app there.
Another consideration for moving application servers to the cloud is hardware scalability. Some IT analysts have suggested that cloud services are ideal for hosting hardware-intensive workloads because cloud platforms generally offer nearly unlimited scalability. While a cloud provider can usually scale its offerings to meet even the most demanding workloads, this scalability comes at a price.
Public cloud providers, such as Microsoft and AWS, generally charge customers resource consumption-based fees. As such, a cloud-based high-performance computing environment can become cost-prohibitive. A client told me, for example, that it costs more than $10,000 per month to operate a single high-performance application in the cloud. The bulk of the cost is due to CPU and disk I/O consumption.
3. Assess the network
Another factor to consider when you build a cloud migration plan is the on-premises network. If an organization wants to keep resources on premises, even temporarily, the cloud network must function as an extension of the on-premises AD forest. This means that the organization will typically have to deploy cloud-based domain controllers, domain name system servers and, possibly, Dynamic Host Configuration Protocol servers. More importantly, the organization will have to figure out how to establish a secure communications path between the cloud-based virtual network and the on-premises network.
This requirement usually isn't a deal breaker for organizations with an existing on-premises network, but it does mean that the migration process may require a significant amount of planning.
As an organization contemplates the risks and benefits of cloud migration, it is important to keep in mind that cloud migrations are not an all-or-nothing proposition. Organizations do not have to go all-in with cloud migrations. In most cases, it will make sense to move certain services to the cloud, while continuing to operate others on premises.