This CF-BOSH release contains several jobs to help you configure VMs with special networking properties:
- Gateway: allows to add a default gateway to your vms
- NAT: allows to create a NAT vm using iptables
- Routes: allows to add IP routes to your vms
To use this bosh release, first upload it to your bosh:
bosh target BOSH_HOST
git clone https://github.com/cf-platform-eng/networking-boshrelease.git
cd networking-boshrelease
bosh upload release releases/networking/networking-5.yml
Add the appropriate release jobs and properties to your BOSH deployment manifest:
---
releases:
- name: cf
version: latest
- name: networking
version: latest
...
jobs:
- name: haproxy
templates:
- name: nat
release: networking
- name: haproxy
release: cf
instances: 1
resource_pool: default
networks:
- name: default
default: [dns, gateway]
- name: public
static_ips:
- 1.2.3.4
- name: router
templates:
- name: gateway
release: networking
- name: routes
release: networking
- name: gorouter
release: cf
...
properties:
networking:
nat:
in_interface: eth0
out_interface: eth1
gateway:
default: 0.haproxy.default.cf.microbosh
routes:
- net: 192.168.1.0
netmask: 255.255.255.224
interface: eth0
Using the previous created deployment manifest, now we can deploy it:
bosh deployment path/to/deployment.yml
bosh -n deploy
In the spirit of free software, everyone is encouraged to help improve this project.
Here are some ways you can contribute:
- by using alpha, beta, and prerelease versions
- by reporting bugs
- by suggesting new features
- by writing or editing documentation
- by writing specifications
- by writing code (no patch is too small: fix typos, add comments, clean up inconsistent whitespace)
- by refactoring code
- by closing issues
- by reviewing patches
We use the GitHub issue tracker to track bugs and features. Before submitting a bug report or feature request, check to make sure it hasn't already been submitted. You can indicate support for an existing issue by voting it up. When submitting a bug report, please include a Gist that includes a stack trace and any details that may be necessary to reproduce the bug, including your gem version, Ruby version, and operating system. Ideally, a bug report should include a pull request with failing specs.
- Fork the project.
- Create a topic branch.
- Implement your feature or bug fix.
- Commit and push your changes.
- Submit a pull request.
If you need to create a new final release, you will need to get read/write API credentials to the @cloudfoundry-community s3 account.
Please email Dr Nic Williams and he will create unique API credentials for you.
Create a config/private.yml
file with the following contents:
---
blobstore:
s3:
access_key_id: ACCESS
secret_access_key: PRIVATE
You can now create final releases for everyone to enjoy!
bosh create release
# test this dev release
git commit -m "updated networking bosh release"
bosh create release --final
git commit -m "creating vXYZ release"
git tag vXYZ
git push origin master --tags
See LICENSE for details. Copyright (c) 2014 Pivotal Software, Inc.
Based on the Rakuten BOSH routing release.