Cloud Computing Made Easy®
VMware CloudFoundry
From Cloud Computing Wiki - Kaavo
Contents |
Overview
Cloud Foundry is the VMware’s open Platform as a Service (PaaS). With VMware’s Cloud Application Platform(VCAP), you can deploy Ruby, Node.js, Java and similar applications to your own VCAP cloud. Like other templates provided with IMOD, the vcap template solution is provided as an example to help users develop their own custom System Definitions for deploying their applications within VCAP. Users are expected to develop their own system definitions or customize the provided solutions for their own needs. The information assumes that the users have basic understanding of deploying and starting systems in IMOD. Please refer to the Quick Start Guide to learn the basics of deploy and starting a system. For uploading files or your custom code to the server refer to the FAQ on how to upload/download file to and from servers in the cloud
What does it do?
The sample template installs and configures the VCAP in a single ubuntu ec2 instance and deploys a hello world ruby application inside the installed VCAP cloud. Before using the template, you need to have a wildcard supported domain name for your cloud. After the system comes up put configure your domain using your DNS provider to the server IP address of the CloudFoundry server. After the system is up and running, go to http://<application-name>.<domain-name> to access your application. In this example the name of sample application is hello so URL to access the application will be http://hello.your-domain-name . The DNS entry propagation can take a long time so it is best to use an Elastic IP and map your Elastic IP to your domain and configure the template to map your server to your Elastic IP on booting.
Note: Since we are installing all the software required for CloudFoundry from scratch, the installation and setup can take about 40 minutes. The entire setup is automated, however, because of the time it takes to setup the PaaS you may want to go on a long coffee break after start the system.
How to configure it before starting the System?
- Select the template, give a name to it and click on deploy.
- Click on the server drop down to edit the server.
- After server is configured go to the Action tab and update the action parameters for install-vcap and deploy-app actions. Note email address and password are your CloudFoundry crendentials in case you want to deploy the application on the VMware hosted CloudFoundry instance. You also need to provide the DNS name of your domain and the elastic ip you mapped to the server as part of input to parameters passed to actions for generating and executing configuration and deployment scripts. See the screenshots below.
How to use it in different AWS regions?
Just select the region, appropriate AMI ID (image), keypair, and security group for the region. Note since regions are separated by design, you can't launch the same AMI in various regions. If you copy an image in different region you end up getting a different AMI ID. The default template has AMI ID for the EU West Region, following is list of equivalent images in other regions:
- ami-ee0e3c9a - EU-West-1
- ami-ed227ea8 - US-West-1
- ami-e0205ab2 - AP-SouthEast-1
- ami-58b40059 - AP-NorthEast-1
- ami-1136fb78 - US-East-1
- ami-34f67b04 - US-West-1
How to use it for different cloud providers?
Clone the System Definition and change the <awsServer> tag with the appropriate configuration for cloud server you want to use. Please pick a 64 bit Ubuntu server image. Please contact us if you have any questions about how to edit the System Definition to deploy CloudFoundry PaaS on all supported clouds. E.g. for Rackspace the server tag will look as following:
<serverType role="Rax-CloudFoundry_role" min="1" max="2">
<rackspaceServer>
<name>R-R-R</name>
<rackspaceAccount>kaavosupport</rackspaceAccount>
<imageIdentifier>119</imageIdentifier>
<flavorIdentifier>5</flavorIdentifier>
<parameters/>
<startupCount>1</startupCount>
<workflow>
<startup timeout="300">
<post-startup/>
</startup>
<shutdown/>
</workflow>
</rackspaceServer>
</serverType>
</serverTypes>
What deployment time actions/workflows are included in the System Definition?
- Install VCAP
- Start the VCAP cloud
- Create hello world ruby application
- Deploy the application within the VCAP cloud
- Undeploy the application




![[Wiki Home]](/skins/common/images/wiki.png)