When it consulting firm Opencredo plans to deliver three new applications to a major insurer in seven months, it has set itself three goals: shortening development time, allowing frequent customer changes, and architecting a system that can handle unpredictable traffic spikes.
Russel Miles, chief executive, believes that with the use of cloud Foundry open source framework and other Open-source software, Opencredo has done "some heavy work", such as configuring virtual machines and resizing storage volumes. This open source framework enables developers to write code locally, share with customers, and automate the deployment of integration, testing, and application components.
In addition to the above advantages, Cloud foundry can be simpler to extend applications without downtime. In addition, based on the framework's collaboration with other open source software, the new features can be added in minutes without needing a few hours.
Even with so many benefits, open source cloud frameworks such as cloud foundry are still in the process of evolution. Many frameworks can only manage physical servers or stand-alone applications, causing customers who need more advanced functionality to create their own frameworks. However, these frameworks provide a high value, they can mask the complexity of cloud computing settings, and open source model is very attractive.
Understanding the Basics
The framework is used once to describe everything that simplifies the creation, deployment, and management of cloud applications, from development tools to middleware to database services. At the server, storage, and network levels are the infrastructure, the service (IaaS) framework, and the Platform, the Service (PaaS) framework, which runs at a higher level of applications.
The most popular IaaS frameworks include OpenStack, eucalyptus, and Ubuntu cloud infrastructure. Citrix recently announced that they are taking the previously proprietary Cloudstack IaaS platform as part of the open source Apache project. Gartner analyst Lydia Leong says this is definitely "big news" because Cloudstack is more stable and more suited to the production process than "unstable" and "porous" OpenStack.
The mainstream PAAs framework includes Heroku, Cloud Foundry (supported by VMware), and Red Hat's openshift---based on Red Hat Enterprise Linux, supporting a variety of languages and middleware.
Opscode co-founder Jesse Robbins says users often use multiple frameworks and related tools. For example, use OpenStack to configure the server, and use Opscode Chef to create recipes to describe how the server should be configured. Online backup vendor Backupify, chief technology officer Matt Conway, says that the more "stacks" the platform runs, the less work users have to do, but the less control they have over infrastructure components.
In addition to simplifying the creation of cloud applications, most frameworks claim to be able to help move cloud deployments more easily between the public cloud and private cloud to get the best service at the lowest cost. For example, Eucalyptus provides an Amazon EC2-compliant API that can be run on Ubuntu Linux, "so that applications written for EC2 can be ported to the users ' own data centers running eucalyptus," Conway says. Deltacloud is the open source project launched by Red Hat, designed to create a ' cloud API ' that extracts your application from vendors like Amazon, and it sends your request to the real Amazon API. ”
For online storage vendor CX, OpenStack offers the flexibility to use other cloud vendors beyond Amazon, said VanDenbos, a chief technology officer at CX, who says: "If Amazon's services become too expensive or unsuitable, we can choose other suppliers." ”
Anthony Roby, senior systems and technology team at Accenture, said the term "framework" is often abused, and that products such as eucalyptus and OpenStack are "not frameworks at all", but "products that you can expand or use to build your own infrastructure cloud". Most observers, however, define the framework as a software building block for creating cloud-based services for users.
The role of Open source
Open source projects include "pure" Open-source projects initiated by nonprofit organizations and unrelated to any commercial vendor, as well as projects to obtain funding, marketing and development assistance from leading vendors.
Kyle McDonald, head of cloud operations at canonical, said the canonical, which provides open source support for Ubuntu, began to attract the interest of "Fortune 50 and various small and medium-sized enterprises and start-ups" in open source. Most of the company's OpenStack business comes from Fortune 1000 companies that want to reduce software costs.
"People's understanding of open source has changed dramatically over the past five years," said Chris Haddad, vice president of PAAs framework provider WSO2. "With the improvement in the quality of open source software and support from large vendors," big companies don't see open source as a threat, and in fact it is not a good decision to hand your company over to another company due to economic uncertainty. ”
Unlike enterprise developers who develop applications for specific economic purposes, Conway says, open source contributors "write software because it's something they like to do."
While early users of most open source products, such as chef, are cloud providers selling services to other customers, Robbins says he sees open source products being rapidly becoming popular among banks, big media companies and other companies that are building their own private cloud.
However, most users have not yet moved critical applications into the cloud because they do not provide the tools for proper it monitoring and security, said Bryan Che, senior director of product management and marketing at the Red Hat cloud business unit, that Red Hat's openshift will help meet these needs, through hat Enterprise the security mechanisms that exist within Linux.
State Street solves security problems by not getting Open-source software directly from the Web, but by relying on trusted partners to get open source software, says Kevin Sullivan, chief architect. "In addition, he said, the company will also carefully check the contract to ensure compliance with the terms of the license agreement, and will scan all open source software to eliminate malicious code."
Haddad says WSO2 Stratos has addressed these needs, using products that support not only application development and deployment, but also integration, rules, business process management, governance, complex event processing, and identity management.
Questionable benefits?
Some observers question whether open source frameworks can really provide the benefits they claim, such as portability among cloud providers. "Eucalyptus has replicated some Amazon APIs, but if you're using a feature that Amazon Eucalyptus doesn't support, you can't," Roby says, "Similarly, if you want to run Java applications and use the spring (application development) framework, You'll get a lot of support. "However, once customers start using features such as data storage that cannot be accessed through spring, these features will not work properly with different vendors." If you can't move the underlying services and the application code, you won't be able to get this kind of mobility at all.
For open source, users (or a group of users) can theoretically extract the source code and adjust according to their needs. However, few users are willing to do this, Roby says, "If you are a large telecoms operator, you may consider changing the code, but most companies will not." The last thing they want is to have a specific variant of a product that they need to support and not take advantage of other people in the community.
Creating a unique Open source "product" is usually not what most companies want, unless they have to.
"If you have specific needs and the platform has built-in elements to make your job easier," said Shriram Nataraj, senior executive director of persistent BAE Cloud technology at Global Software Development Inc. Then you might consider using proprietary frameworks such as Microsoft Azure or salesforce.com force.com. "If you're already a Salesforce customer and want to move some of the workload to a different platform, force.com will be a good choice," he said. If you are already an Office 365 customer and have a workload at Microsoft. NET Framework, you can consider Microsoft Azure. ”
The ability to work well with open source frameworks often includes experimental cloud applications (developed by developers who prefer newer open source tools), there are applications developed by universities or research laboratories, universities or laboratories that have the skills to learn and study these new technologies, or to specialized functions (such as large databases or advanced analysis) have specific needs.
"Typical applications developed using open source frameworks include web and social applications, as well as mobile or customer-facing sites, and these open source framework pages are also useful when organizations need to quickly deploy applications and extend applications as needed," said Jerry Chen, vice president of VMware Cloud and applications services.
Older applications are often not considered in columns, and these applications require hardware or software that may not be supported by the Web. "While it is possible to migrate many data center applications from local servers to virtual cloud servers, ROI is less pronounced," said Bill Weinberg, senior director of software and service provider Black Duck software, "There may be potential security issues, Throughput bottlenecks and availability issues. ”
For complex applications, OpenStack and Cloudscale are more worthy of choice than eucalyptus, Nataraj says, because they can better hide the complexity of the network. For example, for an application that requires users to "connect from different IP ranges," Users may need to write custom code to use Eucalyptus, but for OpenStack, the "switch" required to implement these network connections already exists.
Nataraj says the number and quality of developers involved in open source projects can also explain the quality of the project, and vendor lock-in is unlikely to be a problem if it involves developers from multiple companies.
Roby recommendations should focus on vendor commitment levels rather than community commitment levels, "these successful products are developed by a small group of people, and the community is largely providing feedback and perhaps testing or providing documentation." ”
"If these companies are not prepared to rely on these products for revenue, they are likely to leave the company at any time, and the product will not be supported," Miles warned. ”
The unconventional licensing terms that some open source developers make to their software, such as the requirement that "software must be used for good purposes, not for malicious purposes", will make the corporate legal department frown. In addition, a more serious problem is requiring companies to share with other members of the Community any license terms that improve functionality, which means that companies may need to expose their "best practices" to rivals.
Most of the experts interviewed said that the major licensing terms (such as the Apache terms) did not require such trouble. Conway says the skills of his staff are as important as the code he shares with others. He also points out that open source allows him to take advantage of improvements made by others.
The open source cloud framework enables organizations to quickly deploy Web applications between private cloud and public cloud to meet changing business needs. To gain these benefits, however, it architects must sift through the frameworks of different vendors to see if their frameworks provide the ease of use they need to meet their specific needs.