Cloud Foundry
Cloud Foundry®
CloudFoundryCorp vertical.svg
Developer(s) Cloud Foundry Foundation / Pivotal Software
Initial release 2011 (2011)
Repository github.com/cloudfoundry/
Written in Ruby, Go
Type Cloud computing
License Apache License 2.0
Website cloudfoundry.org

Cloud Foundry is an open source, multi cloud application platform as a service (PaaS) governed by the Cloud Foundry Foundation, a 501(c)(6) organization.[1]

The software was originally developed by VMware and then transferred to Pivotal Software, a joint venture by EMC, VMware and General Electric.

History

Originally conceived in 2009, Cloud Foundry was designed and developed by a small team at VMware led by Derek Collison and was originally called Project B29.[2][3][4]. At the time, a different PaaS project written in Java for Amazon EC2 used the name Cloud Foundry. It was founded by Chris Richardson in 2008 and acquired by SpringSource in 2009,[5] the same year VMWare acquired SpringSource.The current project is unrelated to the project under SpringSource, but the name was adopted when the original SpringSource project ended.

The public launch of Open Source PaaS/cloudfoundry.com took place in April 2011. A year later, in April 2012, the Open Source BOSH was publicly launched.[6] In April 2013, Pivotal was created from EMC & VMware around SW and OSS assets including Cloud Foundry, Rabbit and Spring.[7]

By February 2014, it was announced that there would be an open governance foundation established with seven Platinum members and two Gold members.[8] In May 2014, there was an announcement of the expanded Foundation Gold membership with the addition of eight new companies.[9] By December 2014, the Foundation's membership had increased to a total of 40 participants.[10]

Cloud Foundry Foundation

In January 2015, the Cloud Foundry Foundation was created as an independent not-for-profit 501(c)(6) Linux Foundation Collaborative Project.[11]

Following the creation of the Cloud Foundry Foundation, the Cloud Foundry software (source code and all associated trademarks) was transferred to be held by the open source software foundation. It is primarily written in Ruby, Go and Java.[12]

The Cloud Foundry Foundation exists to drive the global awareness and adoption of the Cloud Foundry open source project, to grow the contributor community, and to create coherence in strategy and action across all member companies for the success of the project. The Foundation's Board of Directors is accountable for strategic direction and business governance of Cloud Foundry Foundation, and is composed of business leaders at the world's leading technology companies. As of March 2017, the Foundation has 70 members.[13]

The Foundation serves as a neutral party holding all Cloud Foundry intellectual property. Once intellectual property is contributed to Cloud Foundry, it becomes property of the Foundation and these assets cannot be transferred to for-profit entities, as per the laws governing 501(c)(6) organizations. The Foundation holds two contributed types of intellectual property: Trademarks and a copyright on the collective work of the community. It also has a license to use and re-license all code contributions, but does not own copyright on those contributions.[14]

Usage

Cloud Foundry is the leading multi-cloud application development and deployment platform for global organizations and is well-suited to continuous delivery as it supports the full application development lifecycle, from initial development through all testing stages to deployment. Cloud Foundry's container-based architecture runs apps in any programming language over a variety of cloud service providers, including Amazon Web Services (AWS), Microsoft Azure, Google Compute Platform (GCP), OpenStack, VMware vSphere, VMware Photon, IBM SoftLayer and more. This multi-cloud environment allows developers to leverage the cloud platform that suits specific app workloads and move those workloads as necessary within minutes with no changes to the app.

Users have access to one or more spaces, which typically correspond to a lifecycle stage. For example, an application ready for QA testing might be pushed (deployed) to its project's QA space. Different users can be restricted to different spaces with different access permissions in each. Developers often require an additional tool, the Cloud Foundry cf Command Line Interface. It is written in Go. Installers exist for MS Windows, MacOS, and Linux.

The cf utility provides many options, but for deployment cf push is all that is required. It accepts arguments to specify the name of the application, where to load it from and the URL that should be used to access it. For example:

   cf push spring-music -i 2 -m 512M -n spring-music-v1 -p build/libs/spring-music.war

pushes the Java web application spring-music. Two instances are deployed (this is a Java web-application so by default this is two Tomcat instances), each with 512M of memory. The URL starts with spring-music-v1 and the web-archive (application) can be found at build/libs/spring-music.war. Every Cloud Foundry instance manages one or more domains. For example, all Pivotal Web Services (PWS) applications are accessed via the cfapps.io domain, so if this Spring Music application had been deployed to PWS, its URL would have been spring-music-v1.cfapps.io.[dubious ]

When an application is deployed to Cloud Foundry, an image is created for it and stored internally. The image is then deployed to a Warden container to run in. For multiple instances, multiple images are started on multiple containers. This is where BOSH comes in - Cloud Foundry's internal Controller uses BOSH to get the underlying infrastructure to spin up virtual machines to run the Warden containers on. When an application is deleted, all of its containers are destroyed and their resources are freed for other applications to use. If the application instance crashes, its container is killed and a new Warden container is started automatically. A container only ever runs one application ensuring isolation, security and resilience.

A load-balancing router sits at the front of Cloud Foundry to route incoming requests to the correct application - essentially to one of the containers where the application is running.

Services

Applications deployed to Cloud Foundry access external resources via a Open Service Broker API, which was launched in December 2016.[15]

In a platform, all external dependencies such as databases, messaging systems, files systems and so on are considered Services. Cloud Foundry allows administrators to create a marketplace of services, from which users can provision reserved resources on-demand. When an application is pushed to Cloud Foundry the services it needs may also be specified. This process puts the credentials in an environmental variable.

Software

The development of Cloud Foundry is controlled by the Cloud Foundry Foundation.[16]

The source code is under an Apache License 2.0. and contributions are governed by the Cloud Foundry contributors' licenses for individuals and corporations.

Born on a container-based architecture, Cloud Foundry is able to support innovation in containers through collaboration with other projects and standards such as OCI and CNI, allowing the platform to innovate at the speed of the industry.

Supported runtimes and frameworks include:[17][18]

Language Buildpack Framework
Java https://github.com/cloudfoundry/java-buildpack Spring
Ruby[19] https://github.com/cloudfoundry/ruby-buildpack Rails, Sinatra
Node.js https://github.com/cloudfoundry/nodejs-buildpack Node.js
.NET https://github.com/cloudfoundry/dotnet-core-buildpack .NET Framework
Python [20] https://github.com/cloudfoundry/python-buildpack Python
PHP https://github.com/cloudfoundry/php-buildpack PHP
Go[21] https://github.com/cloudfoundry/go-buildpack Go

Typically, Cloud Foundry is installed on-premises running over VMware's vSphere virtualization infrastructure, although deployment to OpenStack is an option using BOSH.[22]

It is also possible to install Cloud Foundry using a BOSH-Lite Vagrant VM onto VirtualBox or AWS.[23]

Platform

The Cloud Foundry platform is available from either the Cloud Foundry Foundation as open source software or from multiple commercial providers as either a product or a service. Cloud Foundry is open source software and hence available to anyone. Deploying Cloud Foundry involves interfacing with the underlying infrastructure using the Cloud Foundry BOSH deployment system, another open source tool governed by the Cloud Foundry Foundation.

A commercial version called Pivotal Cloud Foundry (PCF) is available from Pivotal. It provides extra tools for installation and administration not included in the open software product. Pivotal Web Services (PWS), however, is an instance of Pivotal Cloud Foundry hosted on Amazon Web Services (AWS).

In December 2015, the Cloud Foundry Foundation announced the "Cloud Foundry PaaS Certification program" which delineated criteria to be considered a Cloud Foundry Certified Provider.[24] As of June 2016, the list of certified providers includes:

See also

References

  1. ^ "The Cloud Foundry Foundation: The Power of a 501(c)(6) | Cloud Foundry". Cloud Foundry. 2016-06-07. Retrieved . 
  2. ^ "Charlie Dai's Blog". blogs.forrester.com. Retrieved . 
  3. ^ Finley, Klint. "Google's Go Appears on Brazilian Cloud". WIRED. Retrieved . 
  4. ^ Finley, Klint. "Cloud Foundry Evangelist Escapes VMware's Gravity". WIRED. Retrieved . 
  5. ^ "SpringSource Acquires Cloud Foundry, Launches New Cloud Platform". Retrieved . 
  6. ^ Darrow, Barb (2012-04-12). "CloudFoundry attacks Google-style problem with BOSH". gigaom.com. Retrieved . 
  7. ^ "Pivotal Announces Pivotal CF Based on CloudFoundry". InfoQ. Retrieved . 
  8. ^ "Foundation Positions Cloud Foundry PaaS As Enterprise Standard". EnterpriseTech. 2014-02-25. Retrieved . 
  9. ^ Darrow, Barb (2014-05-01). "Cloud Foundry Foundation nets 8 new members". gigaom.com. Retrieved . 
  10. ^ "Open Source PaaS Cloud Foundry Kicks Into High Gear | Data Center Knowledge". Data Center Knowledge. 2014-12-15. Retrieved . 
  11. ^ Kepes, Ben. "Cloud Foundry Foundation Matures--Becomes A Linux Foundation Collaborative Project". Forbes. Retrieved . 
  12. ^ Heller, Martin. "Review: Cloud Foundry brings power and polish to PaaS". JavaWorld. Retrieved . 
  13. ^ "Google Joins Cloud Foundry Foundation as Gold Member | The Linux Foundation". www.linuxfoundation.org. Retrieved . 
  14. ^ Finley, Klint. "Open Source Is Going Even More Open--Because It Has To". WIRED. Retrieved . 
  15. ^ "Open Service Broker API Launches as Industry Standard - Cloud Foundry". Cloud Foundry. 2016-12-13. Retrieved . 
  16. ^ "Cloud Foundry Foundation". Info Q. Mar 2014. Retrieved 2014. 
  17. ^ Build packs (documentation), Cloud Foundry .
  18. ^ Build packs (wiki), Git hub .
  19. ^ "Cloud Foundry ruby-buildpack Release Notes". Retrieved 2015. 
  20. ^ "Cloud Foundry python-buildpack Release Notes". Retrieved 2016. 
  21. ^ "Cloud Foundry go-buildpack Release Notes". Retrieved 2015. 
  22. ^ "Deploying Cloud Foundry on OpenStack". Retrieved 2014. 
  23. ^ "Run local", Deploying (documentation), Cloud Foundry .
  24. ^ "Cloud Foundry Certified On 7 Public Clouds - InformationWeek". InformationWeek. Retrieved . 
  25. ^ "Canopy |". canopy-cloud.com. Retrieved . 

External links


  This article uses material from the Wikipedia page available here. It is released under the Creative Commons Attribution-Share-Alike License 3.0.


Cloud_Foundry
 

Manage research, learning and skills at IT1me. Create an account using LinkedIn to manage and organize your IT knowledge. IT1me works like a shopping cart for information -- helping you to save, discuss and share.


  Contact Us  |  About IT1me.com |  IT Training & References |  IT Careers |  IT Hardware |  IT Software |  IT Books