I have never really understood how people can come up with ideas like Cloud Foundry and Cloud Physics (totally different but equally awesome nonetheless). The people who thought of this are no less important in this day and age than people who thought of virtualisation. So here is what my understanding is of Pivotal CF can do..
PaaS – What it supports:
Multiple Programming Languages- Cloud Foundry supports almost all the new age programming languages like Ruby, Scala,Node.js, Erlang as well as well known ones like Java,Python etc
Multiple Frameworks – Cloud Foundry supports Rails, Sinatra, Spring, Express etc
Services – Cloud Foundry supports a whole lot of database and message queues, examples are MySQL, RabbitMQ, MongoDB, Postgres
Multiple cloud providers- Cloud Foundry supports VMware Cloud, AWS, Openstack etc. Doesnt matter who your underlying IaaS provider is .. Cloud Foundry works..
Pivotal CF architecture:
Application devs issue lifecycle requests such as deploying an application, this can be using a CF tools or something like Eclipse STS plugin. The requests are controlled using Cloud Controller Instances. Cloud Controller configures and manages the Pivotal CF environment and everything within it.
Deployed applications receive built in services for scaling, load balancing, DNS etc. Pivotal CF uses an approach called buildpacks. We can think of these as Lego Blocks of a complete runtime environment for particular applications. Rather than writing the specifications of how an application should run, developers can rely on these building blocks. These allow the developers to download and configure the runtimes, containers and include any libraries that they want.
As I read more about this incredible piece of software, I will write a little more about it.
Reference: Picture above taken from an internal whitepaper.