-
Notifications
You must be signed in to change notification settings - Fork 8
Deploy a BOSH release on an RackHD node
First, follow the instructions for making a RackHD CPI release.
Then, follow the instructions for deploying a BOSH Director.
From the BOSH website, download a BOSH release tarball and a stemcell tarball that are compatible with your environment. (We're using redis as our release and the OpenStack KVM stemcell.)
To access the machines that BOSH provisions for you via ssh, you will need to generate a valid public/private key pair.
$ ssh-keygen -f director-ssh-key After prompting you for a passphrase, the command creates a public key, director-ssh-key.pub, and a matching private key, director-ssh-key, in your current directory. Later, if you want to log into provisioned machines on your network, you can specify the key explicitly with ssh -i /path/to/director-ssh-key ..., or you can configure a tool like ssh-agent to manage your keys for you.
In your project's root directory, create a new file called redis.yml
and fill in your config:
name: redis
director_uuid: ${director uuid}
releases:
- name: redis
version: latest
compilation:
workers: 1
network: default
reuse_compilation_vms: true
cloud_properties:
public_key: ${public key}
update:
canaries: 1
canary_watch_time: 3000-90000
update_watch_time: 3000-90000
max_in_flight: 1
networks:
- name: default
type: manual
subnets:
- range: ${ip range}
reserved:
- ${director ip}
static: [${machine ip}]
gateway: ${gateway ip}
resource_pools:
- name: common
network: default
size: 1
stemcell:
name: bosh-openstack-kvm-ubuntu-trusty-go_agent-raw
version: 3126
cloud_properties:
public_key: ${public key}
jobs:
- name: redis
instances: 1
resource_pool: common
networks:
- name: default
type: manual
static_ips: [${machine-ip}]
templates:
- {name: redis, release: redis}
properties:
redis:
password: ${REDIS_PASSWORD}
port: 6379
$ bosh upload stemcell ~/Downloads/bosh-stemcell-3126-ubuntu-trusty-go_agent-raw.tgz
$ bosh upload release ~/Downloads/redis-bosh-release.tgz
$ bosh deployment manifests/redis.yml
Use bosh
to deploy the node to a physical environment.
$ bosh deploy