Mention public cloud to IT teams and many immediately think of cost savings. And while it's true, moving certain...
applications to AWS, Google or Azure could save companies money, the almighty dollar is not always the driving factor -- nor does cost drive decisions on which provider to choose.
Lithium Technologies, a social software provider in San Francisco, began migrating customer-facing applications to the public cloud late last year. They considered a number of cloud providers, including Google, Azure and Rackspace, but ultimately went with the provider they were most familiar with, said Justin Franks, lead cloud engineer at the company.
"Some of our engineers were very comfortable with AWS, and it made sense to use it as a first step," Franks said.
While that familiarity made it "easier to adopt AWS" for Lithium's foray into public cloud, adopting it required a bit of work behind the scenes. Lithium's developers had to work around a few application resiliency problems to ensure the apps could handle a cloud environment -- where instances go up and down. The teams performed resiliency testing to ensure that services met the service-level agreement Lithium provides to its customers and all associated security requirements.
New applications were easy to migrate to AWS: Developers built them from the ground up to take advantage of the cloud infrastructure. Legacy applications will need to be rewritten from a different environment to work in a public cloud, Franks noted. "We have to rewrite those applications to be a little more resilient and work with technologies like Consul and Chef. Those [applications] will require a little more effort," he said.
To get the public cloud project off the ground, developers weren't very concerned about cost optimization, Franks noted. Now that apps are up and running, IT staff are going back and cost-optimizing across AWS using in-house and third-party tools.
"The [cost monitoring] tools in AWS weren't sufficient enough because they didn't provide enough in-depth analysis of the virtual machines we were using," Franks said.
Lithium was also concerned about vendor lock-in, so Franks is cautious of using several technologies from a single vendor. IT staff there believe they should be able to move applications to most cloud providers within a reasonable amount of time.
"If AWS has a problem, we may need to turn up applications with cloud provider B," Franks said.
Finding that sweet spot for hybrid cloud
Despite those few hiccups with application resiliency and cost optimization, Lithium benefited from efficiency in its public cloud move -- cutting development times down from weeks to minutes. And Franks anticipates significant capital savings on infrastructure.
"But that's a double-edged sword when you're dealing with economies of scale," he cautioned.
"As we start to ramp up the number of servers in AWS, that cost per unit may start to exceed the capital and operating expenses of running your own hardware in a data center and putting our own cloud on top of that," Franks said. Building a private cloud signals "an intersection where you start saving money," he added.
Justin FranksLithium Technologies
That's when Lithium built its hybrid cloud -- a mixture of AWS and OpenStack private cloud, plus a number of other public cloud providers. Once the company passes that "intersection," it will rely less on AWS and expects to gain significant savings running things on OpenStack.
Lithium uses OpenStack in production to carry the workload of applications and services.
"We're looking at it to fulfill the role of our traditional data center, but with a layer of virtualization and agility on top of a traditional data center that's not VMware," Franks said.
But putting OpenStack into production wasn't as easy as it was to move or build applications in AWS. And Lithium developers didn't have the familiarity with OpenStack they had with AWS. So, it sought help.
"As with any new technology, you want to wait so it's not bleeding-edge. Yet you want to use it soon enough to gain competitive advantage," Franks said, adding that Lithium played it "by the book."
The company did some research and development in OpenStack with its own resources to determine if it made sense to go it alone or use a third party to help move workloads out of R&D and into production. The company opted for option B -- engage OpenStack experts and third parties to help.
"OpenStack is not something you want to tinker with, especially if you're going to use it in production. There are a lot of pieces to it," Franks said. Lithium developers are also in constant contact with other companies using OpenStack in development, which, he added, was "a very small percent."
As for hiring OpenStack experts in the future? Franks wouldn't comment directly, but said the company is always looking for talent.
About the author:
Michelle Boisvert is Executive Site Editor for SearchCloudComputing.com. Contact her at firstname.lastname@example.org.
Creating a successful cloud project
OpenStack adoption hindered by service woes
Building an enterprise private cloud with OpenStack
OpenStack takes private cloud market
A glimpse into the future of AWS