mirror of
https://github.com/bigchaindb/bigchaindb.git
synced 2024-10-13 13:34:05 +00:00

- 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
94 lines
2.4 KiB
YAML
94 lines
2.4 KiB
YAML
########################################################################
|
|
# This YAML file desribes a StatefulSet with a service for running and #
|
|
# exposing a MongoDB instance. #
|
|
# It depends on the configdb and db k8s pvc. #
|
|
########################################################################
|
|
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: mdb-svc
|
|
namespace: default
|
|
labels:
|
|
name: mdb-svc
|
|
spec:
|
|
selector:
|
|
app: mdb-ss
|
|
ports:
|
|
- port: 27017
|
|
targetPort: 27017
|
|
name: mdb-port
|
|
type: ClusterIP
|
|
clusterIP: None
|
|
---
|
|
apiVersion: apps/v1beta1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: mdb-ss
|
|
namespace: default
|
|
spec:
|
|
serviceName: mdb-svc
|
|
replicas: 1
|
|
template:
|
|
metadata:
|
|
name: mdb-ss
|
|
labels:
|
|
app: mdb-ss
|
|
spec:
|
|
terminationGracePeriodSeconds: 10
|
|
containers:
|
|
- name: mongodb
|
|
# TODO(FIXME): Do not use latest in production as it is harder to track
|
|
# versions during updates and rollbacks. Also, once fixed, change the
|
|
# imagePullPolicy to IfNotPresent for faster bootup
|
|
image: bigchaindb/mongodb:latest
|
|
imagePullPolicy: Always
|
|
env:
|
|
- name: MONGODB_FQDN
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: mdb-fqdn
|
|
key: fqdn
|
|
- name: MONGODB_POD_IP
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: status.podIP
|
|
args:
|
|
- --replica-set-name=bigchain-rs
|
|
- --fqdn=$(MONGODB_FQDN)
|
|
- --port=27017
|
|
- --ip=$(MONGODB_POD_IP)
|
|
securityContext:
|
|
capabilities:
|
|
add:
|
|
- FOWNER
|
|
ports:
|
|
- containerPort: 27017
|
|
hostPort: 27017
|
|
name: mdb-port
|
|
protocol: TCP
|
|
volumeMounts:
|
|
- name: mdb-db
|
|
mountPath: /data/db
|
|
- name: mdb-configdb
|
|
mountPath: /data/configdb
|
|
resources:
|
|
limits:
|
|
cpu: 200m
|
|
memory: 768Mi
|
|
livenessProbe:
|
|
tcpSocket:
|
|
port: mdb-port
|
|
successThreshold: 1
|
|
failureThreshold: 3
|
|
periodSeconds: 15
|
|
timeoutSeconds: 1
|
|
restartPolicy: Always
|
|
volumes:
|
|
- name: mdb-db
|
|
persistentVolumeClaim:
|
|
claimName: mongo-db-claim
|
|
- name: mdb-configdb
|
|
persistentVolumeClaim:
|
|
claimName: mongo-configdb-claim
|