Much of the hype surrounding cloud computing applies specifically to public clouds. Although often denounced as undermining the benefits of cloud computing, private clouds offer numerous advantages that you should consider before migrating your data and applications to the cloud.
Lately, migrating various services to the cloud has become the trendy thing for organizations to do. While I will be the first to admit that there are benefits to using cloud service providers, there is a good chance that larger organizations may find it more advantageous to use a private cloud. In this article, I will explain why this is the case.
What is a Private Cloud?
The funny thing about cloud computing is that everybody seems to have a different idea about what it is. Of course the same can also be said for a private cloud. That being the case, I think that it makes sense to take just a moment and define what a private cloud is.
For the purposes of this article, I will define a private cloud as a network that uses the same basic infrastructure as a public cloud, but that is intended solely for an organization’s own use. Although there are lots of different ways to build a private cloud, private clouds typically rely on virtualization and treat hardware as a pool of resources that can be allocated to various functions.
Arguments Against Using Private Clouds
I have read several articles which have suggested that organizations should avoid using private clouds. The main argument that these articles have made is that one of the main benefits to cloud computing is that there is no upfront investment in infrastructure, and that a private cloud completely negates this benefit. I have also heard some people suggest that private clouds should be avoided because it can be complicated to set up a private cloud and the administrator must deal with the ongoing maintenance, which would have been handled by someone else had a public cloud been used.
Arguments for Private Clouds
In spite of the arguments against private clouds, there are some benefits to using a private cloud which simply cannot be ignored. The majority of these benefits are in relation to performance and flexibility.
Avoiding Vendor Lock
One of the biggest issues that I have always had with hosting applications in a public cloud is the issue of vendor lock. Imagine that you make the decision to begin outsourcing one of your applications to a cloud provider. If the application is something that you have been using previously then you will no doubt have data for that application. In many cases this data will need to be migrated to the cloud so that it can be used in conjunction with the hosted application.
Now suppose that two years pass and a software vendor releases a competing application with features that could really benefit your organization. Regardless of how good that new application may be, you might not be able to take advantage of it because of the application that you are currently hosting with the cloud provider.
Some cloud providers will lock you into long term contract in an effort to prevent you from hosting your applications elsewhere. Even if you are not bound by a contractual obligation, you will probably discover that your current cloud provider is less than helpful in helping you to migrate your data to a different provider so that you can use it with the new application.
Hosting applications in a public cloud can lead to vendor lock. In other words, cloud providers may make it so expensive or so difficult to move your data or to switch applications that you essentially become stuck with using the vendor.
You can avoid vendor lock by hosting applications within a private cloud. When you use a private cloud, all of your data remains on premise as do your applications. If you decide that you want to migrate to a different application you won’t have a cloud provider trying to stand in your way.
Whether you use a public cloud solely for storage or you host entire applications in the cloud, you may discover that performance is likely to suffer. Regardless of how good a cloud provider’s infrastructure may be, the overall performance is ultimately tied to your Internet connection.
Some hosted applications perform very well. For example, I have seen some applications that are hosted within Citrix VMs and tied to terminal sessions. These types of applications can usually deliver adequate performance because the only things being sent back and forth are keyboard and mouse inputs and screen refreshes. However, the same cannot be said for data intensive applications.
To give you a better idea of what I mean, consider this. I presently have about 2 TB of data on my network. When I perform a full backup my backup hardware can process about 24 GB of data per hour. Yesterday I decided that I needed to better protect my data so I subscribed to one of the better known cloud backup vendors.
I started running a backup at 11:00 last night. In the sixteen hours that have elapsed only 5.1 GB of data has been backed up. Had I run the backup locally I could have backed up that same volume of data in about twelve minutes. If the backup continues to run at this rate, it will take over a year to backup all of my data to the cloud, and that is assuming that I don’t accumulate any new data. My point is that data intensive applications perform much better in a private cloud where they are not restricted by Internet connection speeds.
Today many organizations are required to comply with various federal regulations pertaining to the way that their data is stored and managed. Public cloud providers may not handle data in a way that is compliant with such regulations. Even if a cloud provider does handle data in a secure manner, they may be reluctant to be a part of a compliance audit.
Hosting data and applications in a private cloud gives you total control over how the data, applications, and the underlying infrastructure is secured. It also means that your data is immediately accessible to you in the event of a compliance audit.
Another advantage to using a private cloud is that private clouds give you the flexibility to customize your applications. Exchange Server is a great example of this. Many organizations modify their Client Access Servers so that Outlook Web App takes on a custom appearance. There are also numerous registry keys that you can configure to control Exchange Server’s behavior. These types of modifications would not be allowed if you ran Exchange Server in a public cloud. However, if you ran Exchange Server in a private cloud you would be free to customize and fine tune Exchange Server in any way necessary.
As you can see, there are several benefits to creating a private cloud. Even so, it is important to keep in mind that creating a private cloud can be an expensive undertaking and doing so demands a skilled IT staff who can cope with the challenges of building and maintaining the cloud.