Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hoegaarden/stolon-boshrelease
A bosh release to deploy stolon, postgres & consul via bosh
https://github.com/hoegaarden/stolon-boshrelease
bosh bosh-release consul postgres stolon
Last synced: 12 days ago
JSON representation
A bosh release to deploy stolon, postgres & consul via bosh
- Host: GitHub
- URL: https://github.com/hoegaarden/stolon-boshrelease
- Owner: hoegaarden
- Created: 2016-12-31T16:59:31.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2017-07-17T22:49:27.000Z (over 7 years ago)
- Last Synced: 2023-04-09T12:18:24.190Z (over 1 year ago)
- Topics: bosh, bosh-release, consul, postgres, stolon
- Language: Shell
- Size: 26.4 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# stolon-boshrelease
**This release is WIP**
This is a [bosh release](https://bosh.io) using [postgres](https://www.postgresql.org/), [stolon](https://github.com/sorintlab/stolon) & [consul](https://www.consul.io/) to deploy postgres in a highly available manner.
## Hints
- This release is dependant on [consul-release](http://bosh.io/releases/github.com/cloudfoundry-incubator/consul-release) (tested with version `170`).
- This release can be deployed with consul-servers inclueded or without them by leveraging a different deployment which provide the `consul_common` and `consul_client` links.
- There are some ops- and vars-files included to deploy via `bosh2`
- Deployment with external consul cluster:
```
bosh2 -e bosh-lite -d stolon \
deploy \
--vars-file manifest/vars.default.yml \
manifest/deployment.stolon.yml
```
- Deployment with a consul cluster included:
```
bosh2 -e bosh-lite -d stolon_consul
deploy \
--ops-file manifest/ops.include-consul.yml \
--vars-file manifest/vars.default.yml \
--vars-file manifest/vars.include-consul.yml \
manifest/deployment.stolon.yml
```Some of the settings (`consul_common_link_name`, `consul_deployment_name`, ...) may need to be changed either by a vars-file or by specifying them via command line option like `... --var 'consul_deployment_name=this_is_my_consul_cluster' ...`.
- You can also spin up a separate consul server deployment which you can then use to link to the actual stolon deployment:
```
bosh2 -e bosh-lite -d consul \
deploy \
--vars-file manifest/vars.include-consul.yml \
manifest/deployment.consul.yml
```## TODOs
- [ ] More testing, smoketest, CI
- [ ] test with `pg_rewind`
- [ ] include some backup solution (`wal-e`, `pgbackrest`, `barman`, ...)
- [ ] loadbalance mutltiple proxies (?)## Attention
This is work in progress. This is first bosh release, more of a playground and should be treated as such ...you have been warned!