Guest Post: Finding the Right Cloud for Your Business
Unless you’ve been living under a rock, you no doubt have at least a passing familiarity with cloud technology. As part of our ongoing series on the cloud, several notable people in the tech industry have shared their thoughts on how cloud technology impacts everything from VoIP and application integration to the way sysadmins and developers work.
Gordon Haff, Cloud Evangelist for Red Hat, has an interesting take on how the world of cloud technology itself is changing. There will always be a place for standard public clouds, but more and more companies are discovering that private and community clouds have plenty to offer, too -- and one size doesn’t necessarily fit all.
Finding the Right Cloud for Your Business
Gordon Haff, Cloud Evangelist, Red Hat
Early discussions of cloud computing focused on how computing would shift to large external service providers. The oft-referenced metaphor was the electric grid, where highly-customized and individually-operated power generation systems largely gave way to buying a standardized power commodity. Computing, the argument went, was likewise going to commoditize and move off-premise.
The logic goes something like this. Historically, firms tend to let others handle the myriad tasks and tools they need to function but which don't give them any real competitive advantage. One early example is payroll, which ADP parlayed into one of the first big outsourced information technology businesses. Specialization, scale, and standardization are among the big drivers. As long as your needs for a task or tool are similar to what other companies also need, it's often going to be possible for a third party to aggregate those requirements and offer them as a service more cheaply and better than you could do on your own.
That, in a nutshell, is the idea behind cloud computing. In his book The Big Switch, author Nick Carr's argues that companies waste far too much money on things like customized email systems that may be important but aren't differentiators. To return to the payroll example, it's certainly important to pay your employees, but it's unlikely that any company wins in the market because it has a better payroll system.
Today’s public clouds are owned and operated by the organization selling cloud services. Those services can take the form of Software-as-a-Service (SaaS) -- a hosted application delivered over the Web. Salesforce.com, Google search and mail, and social media sites such as Facebook are all examples of SaaS. However, public clouds also can be about delivering basic infrastructure or some higher level of software platform, allowing users to “rent” computing capacity but still run his/her own software.
Public clouds are certainly a powerful concept. Many types of software used by organizations are, in fact, relatively standardized. Application vendors have also figured out various ways to deliver semi-customized products from a standard base. For example, they may offer premium accounts with better service guarantees, or they may allow IT organizations to customize portals and to pick and choose among the options they offer to internal users.
Whether running cloud applications or just infrastructure, public clouds make hardware and much of the associated low-level care and feeding someone else's problem. It's not that IT is now out of a job, however, because cloud vendors still need to be evaluated and monitored. Fallback plans need to be instituted and continually verified in case problems arise, and so on, but public clouds can certainly reduce IT's ongoing workload for table-stakes applications and can make it faster to bring new applications online.
At the same time, though, public clouds do impose restrictions. For one thing, they inherently require workloads to be relatively standardized, whether at the application or infrastructure level. You're essentially going to get the same customer relationship management application that everyone else gets, or you'll be allowed to choose from a relatively modest number of infrastructure building blocks and ways of connecting them. Want a highly tailored collaboration application or optimized transaction processing system? A public cloud is probably not the ticket.
For these and other reasons -- often related to concerns about audit, legal risk, regulatory compliance, and so forth -- several organizations have turned to implementing systems with many of the features of public clouds behind their own firewalls, e.g. private clouds. They may be managed by the organization or a third party, and may exist on- or off-premise. In other words, private refers to the boundaries of control and trust rather than who employs the infrastructure's operators or who holds title to the equipment.
These private clouds are evolving existing IT infrastructures by adding automation, reduced management overhead, and faster provisioning of new applications and services, typically on top of a virtualized foundation. The goal is to capture many of the things that attract users to public clouds, such as getting new services online more quickly and cutting system management costs, while retaining many of the characteristics associated with a more traditional datacenter. Virtualization, automation, and policy-based self-service still require organizations to evolve operational approaches, but the greater visibility into, and control over the IT infrastructure, can make private clouds more suitable for applications that are core to the business, performance-sensitive, or require adherence to the most stringent regulatory requirements.
Private clouds do still generally imply increased infrastructure standardization compared to what was historically the norm, as well as network-based access to applications and a highly virtualized environment. Costs may be higher than with a public cloud provider (Although experience to date suggests that enterprises with efficient large-scale datacenter operations are often economically competitive with third-party hosting providers) and, of course, you still have to operate the hardware. However, private clouds provide opportunities to customize and tailor the environment and carry, for many, a perception of reduced risk, whether or not risk is actually lower.
What other cloud models might we have? One possibility is the hybrid cloud. The idea here is that you handle routine levels of work on your own infrastructure but you "cloudburst" out to public clouds to handle spikes in capacity.
The other model I've seen pop up in a few discussions recently is perhaps less obvious. It appears in the cloud definition as a "community cloud." It's shared by several organizations and supports a specific community with shared concerns such as security requirements, policy, and compliance considerations.
As we've seen with Software-as-a-Service applications or even hosting more broadly, the concern among customers isn't necessarily about sharing infrastructure per se. Nor is it necessarily about generalized security concerns, though "security" is often the shorthand term used. Rather, it's about being able to meet specific regulatory compliance regimes, satisfying audit requirements, and meeting required service level objectives such as response time -- and having appropriate visibility into these things.
In other words, it's about meeting a set of requirements that may very well be shared among the companies in an industry or the departments in a governmental entity. There is precedent here -- applications and online services are already widely-shared within industry verticals.
A community cloud could well be the logical next step. It’s an approach that doesn't require each company or organization to have its own IT infrastructure, although those in the most technically sophisticated businesses like financial services may well do so nonetheless. It’s an approach that doesn't, as an alternative, require a shift to a lowest-common-denominator public cloud.
A number of the early community cloud efforts exist at the national government level. That's because, although government departments can sometimes be as fiercely competitive as any set of companies, there are still overall administrative controls through organizations like the General Services Administration (GSA) with the power to mandate procurement processes.
This mix of cloud models raises all sorts of issues about workload, service, and application portability across many dimensions. The benefits of cloud computing will ultimately be most completely leveraged by making use of a variety of different approaches at different times for different applications. But this assumes it's possible to move those workloads, services, and applications with a minimum of changes -- which is why approaches that provide for interoperability and platform choice are the ones to bet on.