24 Commits

Author SHA1 Message Date
Troy McConaghy
ed6c90b863 renamed docs/server/source/nodes -> production-nodes 2017-04-11 10:45:09 +02:00
Troy McConaghy
f5a32e35c5 docs: 1st draft of page about updating all s/w on a BDB node on k8s 2017-03-23 18:21:55 +01:00
Krish
425397f644 NGINX frontend for MongoDB and BigchainDB (#1304)
- Added NGINX deployment to frontend both BDB and MDB.
- Nginx is configured with a whitelist (which is read from a ConfigMap)
to allow only other MDB nodes in the closter to communicate with it.
- Azure LB apparently does not support proxy protocol and hence
whitelisting fails as nginx always observer the LB IP instead of the
real IP in the TCP stream.
- Whitelisting source IPs for MongoDB
- Removing deprecated folder
- Better log format
- Intuitive port number usage
- README and examples
- Addressed a typo in PYTHON_STYLE_GUIDE.md
- Azure LB apparently does not support proxy protocol and hence
whitelisting fails as nginx always observer the LB IP instead of the
real IP in the TCP stream.
- Whitelisting source IPs for MongoDB
- Removing deprecated folder
- Multiple changes:
- Better log format
- Intuitive port number usage
- README and examples
- Addressed a typo in PYTHON_STYLE_GUIDE.md
- Documentation
- add the k8s directory to the ignore list in codecov.yml
2017-03-22 14:25:25 +01:00
Troy McConaghy
da92d1e1c2 Merge branch 'master' into change-federation-to-consortium 2017-03-17 13:51:28 +01:00
Troy McConaghy
7aa94447cd docs: copyedited 2 pages re/ node on k8s 2017-03-16 14:42:32 +01:00
Krish
ea6ce5c1a1 Single node/cluster bootstrap and node addition workflow in k8s (#1278)
* Combining configs
*  Combining the persistent volume claims into a single file.
*  Combining the storage classes into a single file.

* Updating documentation

* Multiple changes
*  Support for ConfigMap
*  Custom MongoDB container for BigchainDB
*  Update documentation to run a single node on k8s

* Additional documentation

* Documentation to add a node to an existing BigchainDB cluster

* Commit on rolling upgrades

* Fixing minor documentation mistakes

* Documentation updates as per @ttmc's comments

* Block formatting error

* Change in ConfigMap yaml config
2017-03-15 16:22:49 +01:00
Troy McConaghy
4daeff28f8 Tip for az acs kubernetes get-credentials...
Added a tip for when `$ az acs kubernetes get-credentials...` command gives an error after you enter the correct password.
2017-03-14 20:23:46 +01:00
Troy McConaghy
646859f1d6 revised docs re/ SSHing to nodes in a k8s cluster 2017-03-10 11:47:58 +01:00
Krish
7dbd374838 Running a single node on k8s (#1269)
* Single node as a StatefulSet in k8s
- uses bigchaindb/bigchaindb:0.9.1

* Updating README

* rdb, mdb as stateful services

* [WIP] bdb as a statefulset

* [WIP] bdb w/ rdb and bdb w/ mdb backends
- does not work as of now

* Split mdb & bdb into separate pods + enhancements
*  discovery of the mongodb service by the bdb pod by using dns name.
*  using separate storage classes to map 2 different volumes exposed by the
mongo docker container; one for /data/db (dbPath) and the other for
 /data/configdb (configDB).
*  using the `persistentVolumeReclaimPolicy: Retain` in k8s pvc. However,
this seems to be unsupported in Azure and the disks still show a reclaim
policy of `delete`.
*  mongodb container runs the `mongod` process as user `mongodb` and group
`mongodb. The corresponding `uid` and `gid` for the `mongod` process is 999
and 999 respectively. When the constinaer runs on a host with a mounted disk,
the writes fail, when there is no user with uid 999. To avoid this, I use the
docker provided feature of --cap-add=FOWNER in k8s. This bypasses the uid and
gid permission checks during writes and allows writes.
Ref: https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities

* Delete redundant k8s files, add cluster deletion steps.

* Single node as a StatefulSet in k8s
- uses bigchaindb/bigchaindb:0.9.1

* Updating README

* rdb, mdb as stateful services

* [WIP] bdb as a statefulset

* [WIP] bdb w/ rdb and bdb w/ mdb backends
- does not work as of now

* Split mdb & bdb into separate pods + enhancements
*  discovery of the mongodb service by the bdb pod by using dns name.
*  using separate storage classes to map 2 different volumes exposed by the
mongo docker container; one for /data/db (dbPath) and the other for
 /data/configdb (configDB).
*  using the `persistentVolumeReclaimPolicy: Retain` in k8s pvc. However,
this seems to be unsupported in Azure and the disks still show a reclaim
policy of `delete`.
*  mongodb container runs the `mongod` process as user `mongodb` and group
`mongodb. The corresponding `uid` and `gid` for the `mongod` process is 999
and 999 respectively. When the constinaer runs on a host with a mounted disk,
the writes fail, when there is no user with uid 999. To avoid this, I use the
docker provided feature of --cap-add=FOWNER in k8s. This bypasses the uid and
gid permission checks during writes and allows writes.
Ref: https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities

* Delete redundant k8s files, add cluster deletion steps.

* Documentation: running a single node with distinct mongodb and bigchaindb
pods on k8s

* Updates as per @ttmc's comments
2017-03-09 16:53:00 +01:00
Troy McConaghy
421b5b03b3 Changed 'federation' to 'cluster' or 'consortium' in docs and some code 2017-03-07 17:41:25 +01:00
Troy McConaghy
33deff8760 docs: add instructions to deploy MongoDB & BigchainDB on k8s cluster 2017-03-05 17:49:00 +01:00
Troy McConaghy
0ffa93cd44 docs: fixed typo; changed 2Gi to 20Gi in kubectl cmd output 2017-03-05 17:23:42 +01:00
Troy McConaghy
4e32a492b1 docs: changed PersistentVolumeClaim from 2Gi to 20Gi 2017-03-01 16:26:57 +01:00
Troy McConaghy
77c6b138a8 expanded docs re/ Azure storage accounts & ACS 2017-03-01 15:49:20 +01:00
Troy McConaghy
35ee6e5539 docs: add instructions to update az command 2017-03-01 13:35:31 +01:00
Troy McConaghy
cc8916d782 Merge remote-tracking branch 'origin/master' into docs-re-k8s-persistent-storage 2017-03-01 11:32:44 +01:00
Troy McConaghy
f2f1ee8ef1 docs: create k8s StorageClass & PVC 2017-02-28 19:08:13 +01:00
Troy McConaghy
6821170fcd docs: rm paren. sentence re/ deploying an ACS 2017-02-28 13:58:44 +01:00
Troy McConaghy
b3e697f05b docs: can SSH to k8s agent via master using private hostname 2017-02-28 11:25:57 +01:00
Troy McConaghy
ffb1d7a624 Docs on using special SSH keypair with ACS/Kubernetes 2017-02-27 15:29:49 +01:00
Troy McConaghy
2b235b21aa add docs on kubectl install & setup 2017-02-15 14:57:42 +01:00
Troy McConaghy
9dba09144a Started new page: Run a BigchainDB Node in a Kubernetes Cluster 2017-02-15 11:34:40 +01:00
Troy McConaghy
52344787de docs: initial steps to deploy advanced node on Azure 2017-02-14 18:56:43 +01:00
Troy McConaghy
2780b9406a docs: renamed Starter Templates --> Templates 2017-02-14 18:55:46 +01:00