I'm a developer at Cloud Foundry - and yes, Cloud Foundry is really a bit foggy (no pun intended). I hope I can help clarify the situation a bit.
Cloud Foundry is a platform as a service , but it needs an infrastructure as a service under it. Cloud Foundry supports vSphere , vCloud , OpenStack, and Amazon AWS as infrastructure through BOSH . Most web application developers do not care about this, but it is really great for people who have to worry about a large IT infrastructure.
Say you are responsible for IT for AcmeCorp. You have 50,000 employees who use your internal Fizzbuzz web service to help them do their job. To support all employees, you need dozens of instances of the Fizzbuzz application running on several machines with powerful processors and large memory, and you need a huge amount of disk space to store information created by the Foo, Bar, and Baz applications that you use internally, too. You have moved far beyond what you would like to manage on your blade servers, so you decided to rent a data center.
Unfortunately, AcmeCorp is terribly dysfunctional. The finance department is of the utmost importance in which data center you use, and every couple of years they make you switch from one data center to another. Every couple of years you have several weeks of downtime, while your engineers are trying to fix errors in Fizzbuzz that have been switched between vSphere, vCloud, OpenStack, or something else.
If your engineers wrote Fizzbuzz, Foo, Bar and Baz against Cloud Foundry, and not directly against the underlying infrastructure, downtime would be minimized. You would not have to worry so much about being tied to a particular data center, because this level of hosting was distracted by Cloud Foundry. Cloud Foundry supports a specific set of services, including PostgreSQL, MySQL, Mongo, Redis, and RabbitMQ, to name a few. If Foo, Bar, and Baz use these services provided by Cloud Foundry, this is least worrying when you migrate between infrastructures.
Later, on the way, you realize that you can make a fortune by selling Fizzbuzz as a service to other large companies. You really have a good shape for this: because your engineers have fixed Fizzbuzz to work in Cloud Foundry, you can simply deploy Cloud Foundry to AWS as much as you need. The client tried it for six months and decided not to renew the service? No problem, you don't have any data center rentals to worry about - just stop all these EC2 instances and go. You can easily have one Cloud Foundry deployment for each Fizzbuzz instance as a service so that your customer data is completely isolated from each other.
The icing on the cake says Cloud Foundry is open source. If you find that this doesn’t quite suit your needs, you don’t just have to keep your email and wait for Cloud Foundry engineers to realize your dream - you also have a source, so you can make any changes that you need. And it is available in the Apache 2.0 license , so download requests are gladly accepted, although not required.
I hope that paints a picture of the problems that Cloud Foundry solves. Feel free to request more information in the comments, or you can check out the Cloud Foundry mailing list if that makes more sense for future questions.