Enterprise users get dinged for cloud-washing: buying VMware and saying they’re running a cloud. But many of them do want to offer a “private cloud”. Some of the differences? Automation, standard cloud “machine” configurations, self-service provisioning, a single cloud for all business units, calculating runtime costs and charging projects for them. Some of the obstacles? Lack of automation in existing processes, trying to bring complex legacy applications on board, trying to migrate existing staff and tools “to the cloud”. A key recommendation was when building a private cloud, start it as a totally separate effort that offers capabilities to the business, and strive to reach the point where they will go to you instead of a third-party cloud.
But why run a private cloud? The number one reason the business prefers the cloud is that it facilitates speed and agility — effectively taking much of the budgeting and procurement out of a project. And if you try a project and it doesn’t work, you shut down the cloud instances and wash your hands with much less regret. As for IT, a well-implemented private cloud can further increase the utilization of hardware over virtualization alone, and the automation allows fewer administrators for the same quantity of hardware. Plus you’re offering the business capabilities, instead of hurdles.
Along those lines, there was significant discussion of the changing role of IT as a business moves more toward the cloud. Instead of the detailed management of servers, virtualization consoles, and execution environments, it becomes managing multiple sets of capabilities — one-off hardware required for legacy applications, virtual machines, private cloud, public cloud, etc. While you might promote the cloud for mainstream projects, there will always be some with special requirements that place it somewhere else along that spectrum, and the goal is more to shepherd each project to the right home.
With all that said, there was a lot of enthusiasm for public cloud offerings. While the security of a public cloud service is still the number one concern, even among businesses that are using the cloud, there were many arguments made that such concerns are no longer insurmountable. Cloud vendors have fewer hardware and software platforms to maintain, and more motivation to do it right (given the cost of a failure). Plus there’s no guarantee that internal employees are less likely to make security mistakes. “Do you truly believe your company manages their machines better than the next company? How about, better than a vendor whose business is the cloud?”
On the other hand, one attendee quipped, “the only thing Enterprise is to me is a rental car company.” The advice to startups came from a totally different direction. Use the cloud in every possible way — only be smart about it.
- On Software as a Service: Why buy a box of software and a machine to run it, when you can use a lower-cost online service that you don’t have to manage and gives you regular feature updates automatically?
- On Infrastructure as a Service: No VC will fund you if your business plan shows boxes instead of Amazon.
- On Platform as a Service: You could come up with specific requirements, build the perfect software, find the ways to customize it just like you need, and integrate it with other systems. But we’ve done that already and poof! this great platform emerged. Why not just take advantage of that instead? (Granted, this was SalesForce.com talking.)
In fact, one of the challenges quoted was that there are so many good-looking services that are easy to adopt, you may find yourselves three months down the road before you realize it’s not really what you want after all. So the pearl of wisdom was to define your requirements well in advance, and then find the right combination of services to support them. Another was to think carefully before you start custom-integrating all these services. You’re better off changing your process to fit the service than spending truckloads of time on custom integration. Plus there are companies out there who do that already.
Of course you can build applications for the cloud. But one point was to realize that’s what you’re doing going in. You won’t necessarily have multiple machines on the same network segment (or even with multicast capability at all!), different “identical” machines may perform differently, machines or resources may go down at any time, common services like e-mail might not be available, you may be limited in what database it’s convenient to use, and so on.
And the cloud isn’t automatically cheaper — in many cases you have to be careful about shutting machines down whenever they’re not really in use in order to realize the potential cost savings. (As an aside, one blog breathlessly proclaims that Amazon has reduced the EC2 price-per-compute-unit by 15% over the course of six years. Conveniently overlooked: Moore’s Law suggests that you should receive 1600% more hardware power per dollar over the same period of time.) In other cases, the time and cost savings comes from adopting a runtime platform instead of cloud infrastructure (a VM).
Overall though, the message was largely the same for everyone — there are benefits to be reaped from the cloud, but you have to be wise about it. Plan first, don’t just meander toward the cloud and assume you’ll get to the right place in time. you may, but it may be a lot more time than you’re counting on.