Overall Satisfaction with IBM Cloud Foundry
We have several clients with whom we have used it. We have it in production for both the front and back ends of our implementation. We have it running to serve a web app that is used as a call taking management system. We have it running to serve an application that is used for inventory management, tracking, and purchasing.
- It is straightforward to deploy an application from the command line.
- It is straightforward via YAML files to change the specification of what you are deploying.
- Increasing the nodes supporting your app is easy.
- Autoscaling is a HUGE pain and not easy.
- The reliability is horrible.
- The connection between other IBM services works, but is not very good eg. Cloud object store, cloud functions, etc.
- We have had many production outages.
- We have wasted an ungodly amount of time trying to deploy our UI and have had to change our entire deployment strategy as a result.
- Our clients have wasted 10's of 1000's of dollars on services that just failed and failed with no good reason.
We have not benefited from this capability. We decided to use Cloud Foundry because of these reasons but have literally had the exact opposite experience. We have not found that is scales well. We have found our auto scaler killing our nodes or nodes going stale and not working. We have received none of the benefits and all of the downside.
We have found the automation to be OK, but not great. We have been able to deploy lots of different types of apps. but have struggled to maintain them in production due to reliability and outages. the cost versus reliability was prohibitive. Automation is nice when it works. However, if you have to spend a lot of time troubleshooting what went wrong and it turns out it is just cloud Foundry failing for no apparent reason, well it is just a waste of time.
We have had to move our deployments to Kubernetes because we needed more reliability. We moved to Google because IBM rates and billing was so backward and expensive. Our client was also very angry at all the outages, lost revenue, production down time and inordinately expensive costs that all the outages cost them.
It is appropriate if you are deploying a very lightweight app. It is appropriate if your application is not going to be used in production. It is horrible if you are going to deploy any type of UI that has any level of complexity. Not appropriate for complex processes. Not appropriate for high CPU operations.