labs-vcap/dev_setup/deployments
Alex Suraci fd79088d1d add node06 runtime with Node.js 0.6.7
* add node06 alongside node (0.4.12)
* update node cookbooks to install both, + terminology tweaks
  * nodejs -> node or node04 where appropriate
* bump vcap_staging to 0.1.33

Change-Id: Ifaf0b7233c8f58cea49d15d4bb357a3fc79f612b
2012-01-18 11:29:50 -08:00
..
sample add node06 runtime with Node.js 0.6.7 2012-01-18 11:29:50 -08:00
README Add neo4j support + Misc changes 2011-09-21 16:21:33 -07:00
devbox.yml Cleanup deployment config file handling + some sample multihost deployment config files 2011-08-18 19:17:04 -07:00

README

Deployment config files have the following main sections
1. Deployment
2. Jobs.

Deployment
----------
Some basic information about your deployment

e.g.
---
deployment:
  # Name of this deployment
  name: "sample_deployment"
  # User as which cloudfoundry will run, defaults to the user running the setup
  # script
  # user: "<user>"

  # Group for cloudfoundry, defaults to the group of the user running the setup
  # script
  # group: "<group>"

Jobs
----
Jobs represents the various installable components of cloud foundry
They are divided into 2 groups
- install (Jobs that should be installed on this server/host)
- installed (Jobs that have been installed on other server/hosts whose properties are required by the
             jobs that are scheduled to be installed on this server/host)

Lets say you wish to install "nats" on server_A. The deployment config file would have the following jobs. Here we also specify properties for the nats job that we wish to install

e.g.
---
deployment:
  name: "nats_server"
jobs:
  install:
    nats:
      host: <server_A>
      port: <nats_port>
      user: <nats_user>
      password: <nats_password>

Now if you want to install the "dea" on server_B. The deployment config file for server_B would look like the following. In this case the "installed" job nats along with its properties is required by the router.

e.g.
----
deployment:
  name: "dea_server"
jobs:
  install:
   - router
  installed:
    - nats:
        host: <server_A>
        port: <nats_port>
        user: <nats_user>
        password: <nats_password>

Here is a sampling of the currently supported jobs
 - all (deploys all cloudfoundry components)
 - nats
 - router
 - cloud_controller
 - health_manager
 - dea
 - mysql_node
 - mysql_gateway
 - redis_node
 - redis_gateway
 - mongodb_node
 - mongodb_gateway
 - neo4j_node
 - neo4j_gateway

The easiest way to get started on your multihost setup is to start customizing
the various example config files that exist in this directory.

NOTE: Supported multi host setups
These scripts currently support the following multihost setup. DEA, Services and
Router can be configured to run on different hosts. The following components however
should all run on the same host
- cloud_controller
- health_manager
- service gateways i.e. mysql_gateway, mongodb_gateway, redis_gateway and neo4j_gateway