State Street began looking at frameworks in 2009 as a way to more efficiently make use of its global data centers, but it found that most of them were focused only on provisioning and control of virtualized servers "in sort of an abstract way," says chief architect Kevin Sullivan. They couldn't simplify more complex tasks such as the ongoing need to update its 800 applications, provide the level of authentication needed to protect customer data, and discover and reuse services ranging from security to data warehousing that State Street had already developed and wanted to move to its private cloud.
"We wanted to get much higher in the stack from provisioning VMs," Sullivan says, with a platform that "would sit between the application and the infrastructure," making it easier to move applications and services among data centers as business needs changed. In addition, "because we have 3,000 application developers around the world and 800 applications, we're continually introducing new code into the environment," he says. "None of the cloud frameworks dealt with any of that. I didn't think there was anything out there mature enough [and] ready for the kinds of volumes we were going to need."
So, Sullivan says, the financial services firm created "our own internal service registry, where we house all of our metadata describing all the different categories of data in our service framework." Reusing those services was key to developing new applications more quickly and increasing profitability, he explains.
He says he still has a "bias" for open source over proprietary frameworks, not only because of the lower cost of the software, but also because of the ease with which it integrates new capabilities. Sullivan says he is continuing to evaluate open-source frameworks and to use components of them where possible.
Backupify CTO Matt Conway wanted tighter integration between a framework and his infrastructure than was provided by open-source software. So, working "on and off" for five years, Conway wrote his own open-source "rubber" framework for managing multi-instance deployments of Ruby on Rails applications to Amazon's Elastic Compute Cloud (EC2). That was the only way, he says, to manage the number of applications and the amount of data he was storing on EC2, and to provision and deprovision services quickly enough.
- Robert L. Scheier