Unlike most other Cloud Computing platform services, which are tied to particular cloud providers, Cloud Foundry is available as a stand-alone software package. You can, of course, deploy it on Amazon’s AWS, but you can also host it yourself on your own OpenStack server, or through HP’s Helion or VMware’s vSphere.
First of all though, to be completely clear, just what is a Cloud Computing platform? There are, broadly speaking, three major categories of Cloud Computing:
- Infrastructure as a Service (IaaS), which provides only a base infrastructure, leaving the end user responsible for platform and environment configuration necessary to deploy applications. Amazon Web Services and Microsoft Azure are prime examples of IaaS.
- Software as a Service (SaaS) like Gmail or Salesforce.com.
- Platform as a Service (PaaS), which helps to reduce the development overhead (environment configuration) by providing a ready-to-use platform. PaaS services can be hosted on top of infrastructure provided by an IaaS.
Since it’s easy to become a bit confused when thinking about cloud platforms, it’s important to be able to visualize exactly which elements of the compute ecosystem are whose responsibilities. While there is no precise definition, it’s reasonable to say that a platform requires only that you take care of your applications.
With that in mind, the platform layer should be able to provide:
- A suitable environment to run an application.
- Application life cycle management.
- Self-healing capacity.
- Centralized management of applications.
- Distributed environment.
- Easy integration.
- Easy maintenance (upgrades etc).
What is Cloud Foundry
Cloud Foundry is an open source cloud computing platform originally developed in-house at VMware. It is now owned by Pivotal Software, which is a joint venture made up of VMware, EMC, and General Electric.
Cloud Foundry is optimized to deliver…
- Fast application development and deployment.
- Highly scalable and available architecture.
- DevOps-friendly workflows.
- Reduced chance of human error.
- Multi-tenant compute efficiencies.
Not only can Cloud Foundry lighten developer workloads but, since Cloud Foundry handles so much of an application’s resource management, it can also greatly reduce the overhead burden on your operations team.
Cloud Foundry’s architectural structure includes components and a high-enough level of interoperability to permit…
- Integration with development tools.
- Application deployment.
- Application lifecycle management.
- Integration with various cloud providers.
- Application Execution.
Although Cloud Foundry supports many languages and frameworks, including Java, js, Go, PHP, Python, and Ruby, not all applications will make a good fit. As with all modern software applications, your project should attempt to follow the Twelve-Factor App standards.
Key benefits of Cloud Foundry:
- Application portability.
- Application auto-scaling.
- Centralized platform administration.
- Centralized logging.
- Dynamic routing.
- Application health management.
- Integration with external logging components like Elasticsearch and Logstash.
- Role based access for deployed applications.
- Provision for vertical and horizontal scaling.
- Infrastructure security.
- Support for various IaaS providers.
Getting Started with Cloud Foundry
Before deciding whether Cloud Foundry is for you, you’ll have to try actually deploying a real application. As I already mentioned, to set up a suitable environment, you will need an infrastructure layer. As of now, Cloud Foundry supports AWS, VMware and Open Stack. Setting Cloud Foundry on top of VMware might not be the best choice for us, since we’d probably prefer to avoid the extra complexity. Instead, we’ll work with Pivotal web services (PWS).
PWS provides “Cloud Foundry as a web service,” deployed on top of AWS. You’ll just need create an account and you’ll automatically get a sixty day free trial. Getting started isn’t a big deal at all.
Hosting Static files in Cloud Foundry
Once you’ve created your account and set up the command line interface tool, you’ll be ready to deploy your application. We’re going to use some static files, which means we’ll need one folder and a few html files. Make sure there’s an index.html file among them.
Normally, deploying static files requires a webserver like Apache or Nginx. But we’re not going to have to worry about that: the platform will automatically take care of any Internet-facing configuration we’ll need. You only need to push your application files to the Cloud Foundry environment and everything else will be taken care of.
Now, copy the folder with your files to the machine where you’ve installed the CLI and log in to the CLI using this API endpoint:
cf login -a https://api.run.pivotal.io
You may need to provide some information
- Username (the username you used to to log in to your PWS account).
- Password (the PWS password you created).
- Organization name (any name will work).
- Space (select any space where you want your application to be deployed).
Once successfully logged in you will be able to run Cloud Foundry commands using cf. Start with cf help to check all available commands.
Now go to your application folder and create a file called Staticfile using…
Push the application using…
cf push <<application file name>>
You will want to verify that the app is running by using the URL generated from the output of previous step. There’s more information on hosting a sample static file in Cloud Foundry.
Azure Stack Use Cases and Applications
This is the second of a two-part series covering Azure Stack. Our first post provided an introduction to Azure Stack. Why would your organization consider using Azure Stack? What are the key differences between Azure Stack and Microsoft Azure? In this post, we'll begin to answer bot...
Highlights from Microsoft Ignite 2018
Microsoft Ignite 2018 was a big success. Over 26,000 people attended Microsoft’s flagship conference for IT professionals in sunny Orlando, Florida. As usual, Microsoft made a huge number of announcements, ranging from minor to major in importance. To save you the trouble of sifting thr...
Planning for Microsoft Ignite 2018 Sessions: What Not to Miss
Cloud Academy is proud to be a sponsor of the Microsoft Ignite Conference to be held September 24 - 28 in Orlando, Florida. This is Microsoft’s biggest event of the year and is a great way to stay up to date on how to get the most from Microsoft’s products. In this post, I’ll help you p...
How to Optimize Cloud Costs with Spot Instances: New on Cloud Academy
One of the main promises of cloud computing is access to nearly endless capacity. However, it doesn’t come cheap. With the introduction of Spot Instances for Amazon Web Services’ Elastic Compute Cloud (AWS EC2) in 2009, spot instances have been a way for major cloud providers to sell sp...
What are the Benefits of Machine Learning in the Cloud?
A Comparison of Machine Learning Services on AWS, Azure, and Google CloudArtificial intelligence and machine learning are steadily making their way into enterprise applications in areas such as customer support, fraud detection, and business intelligence. There is every reason to beli...
How Does Azure Encrypt Data?
In on-premises environments, data security is typically a siloed activity, with a company's security team telling the internal technology groups (server administration, database, networking, and so on) what needs to be protected against intrusion.This approach is absolutely a bad...
Disadvantages of Cloud Computing
If you want to deliver digital services of any kind, you’ll need to compute resources including CPU, memory, storage, and network connectivity. Which resources you choose for your delivery, cloud-based or local, is up to you. But you’ll definitely want to do your homework first.Cloud ...
Preparing for the Microsoft Azure 70-535 Exam
The credibility of Microsoft Azure continues to grow in the first quarter of 2018 with an increasing number of enterprises migrating their workloads, resulting in a jump for Azure from 10% to 13% in market share. Most organizations will find that simply “lifting and shifting” applicatio...
Azure Migration Strategy: A Checklist to Get Started
By now, you’ve heard it many times and from many sources: cloud technology is the future of IT. If your organization isn’t already running critical workloads on a cloud platform (and, if your career isn’t cloud-focused), you’re running the very real risk of being overtaken by nimbler co...
Three Must-Use Azure Security Services
Keeping your cloud environment safe continues to be the top priority for the enterprise, followed by spending, according to RightScale’s 2018 State of the Cloud report.The safety of your cloud environment—and the data and applications that your business runs on—depends on how well you...
Is Multi-Cloud a Solution for High Availability?
With the average cost of downtime estimated at $8,850 per minute, businesses can’t afford to risk system failure. Full access to services and data anytime, anywhere is one of the main benefits of cloud computing.By design, many of the core services with the public cloud and its underl...
What are the Benefits of Migrating to the Cloud?
If you’re like most businesses, you already have at least one workload running in the cloud. However, that doesn’t mean that cloud migration is right for everyone. While cloud environments are generally scalable, reliable, and highly available, those won’t be the only considerations dri...