494 lines
12 KiB
YAML
494 lines
12 KiB
YAML
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: mongo-configsvr
|
|
namespace: mongodb
|
|
labels:
|
|
app: mongo-configsvr
|
|
spec:
|
|
clusterIP: None
|
|
selector:
|
|
app: mongo-configsvr
|
|
ports:
|
|
- port: 27019
|
|
targetPort: 27019
|
|
name: mongo
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: mongo-configsvr
|
|
namespace: mongodb
|
|
spec:
|
|
serviceName: mongo-configsvr
|
|
replicas: 3
|
|
selector:
|
|
matchLabels:
|
|
app: mongo-configsvr
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: mongo-configsvr
|
|
role: configsvr
|
|
spec:
|
|
terminationGracePeriodSeconds: 30
|
|
affinity:
|
|
nodeAffinity:
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: kubernetes.io/hostname
|
|
operator: In
|
|
values: [pisvrwsv07, pisvrwsv08]
|
|
initContainers:
|
|
- name: fix-permissions
|
|
image: busybox:1.36
|
|
command: ["sh", "-c", "chown -R 999:999 /data/db"]
|
|
volumeMounts:
|
|
- name: data
|
|
mountPath: /data/db
|
|
containers:
|
|
- name: mongod
|
|
image: mongo:8.0
|
|
command:
|
|
- mongod
|
|
- --configsvr
|
|
- --replSet=configReplSet
|
|
- --port=27019
|
|
- --dbpath=/data/db
|
|
- --keyFile=/etc/mongo/keyfile
|
|
- --bind_ip_all
|
|
ports:
|
|
- containerPort: 27019
|
|
resources:
|
|
requests:
|
|
memory: "256Mi"
|
|
cpu: "100m"
|
|
limits:
|
|
memory: "512Mi"
|
|
cpu: "500m"
|
|
volumeMounts:
|
|
- name: data
|
|
mountPath: /data/db
|
|
- name: keyfile
|
|
mountPath: /etc/mongo
|
|
readOnly: true
|
|
volumes:
|
|
- name: keyfile
|
|
secret:
|
|
secretName: mongo-keyfile
|
|
defaultMode: 0400
|
|
volumeClaimTemplates:
|
|
- metadata:
|
|
name: data
|
|
spec:
|
|
accessModes: [ReadWriteOnce]
|
|
storageClassName: local-storage
|
|
resources:
|
|
requests:
|
|
storage: 2Gi
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: mongo-shard0
|
|
namespace: mongodb
|
|
labels:
|
|
app: mongo-shard0
|
|
spec:
|
|
clusterIP: None
|
|
selector:
|
|
app: mongo-shard0
|
|
ports:
|
|
- port: 27018
|
|
targetPort: 27018
|
|
name: mongo
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: mongo-shard0
|
|
namespace: mongodb
|
|
spec:
|
|
serviceName: mongo-shard0
|
|
replicas: 2
|
|
selector:
|
|
matchLabels:
|
|
app: mongo-shard0
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: mongo-shard0
|
|
role: shardsvr
|
|
shard: "0"
|
|
spec:
|
|
terminationGracePeriodSeconds: 30
|
|
affinity:
|
|
nodeAffinity:
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: kubernetes.io/hostname
|
|
operator: In
|
|
values: [pisvrwsv07, pisvrwsv08]
|
|
initContainers:
|
|
- name: fix-permissions
|
|
image: busybox:1.36
|
|
command: ["sh", "-c", "chown -R 999:999 /data/db"]
|
|
volumeMounts:
|
|
- name: data
|
|
mountPath: /data/db
|
|
containers:
|
|
- name: mongod
|
|
image: mongo:8.0
|
|
command:
|
|
- mongod
|
|
- --shardsvr
|
|
- --replSet=shard0ReplSet
|
|
- --port=27018
|
|
- --dbpath=/data/db
|
|
- --keyFile=/etc/mongo/keyfile
|
|
- --bind_ip_all
|
|
ports:
|
|
- containerPort: 27018
|
|
resources:
|
|
requests:
|
|
memory: "512Mi"
|
|
cpu: "200m"
|
|
limits:
|
|
memory: "1Gi"
|
|
cpu: "1000m"
|
|
volumeMounts:
|
|
- name: data
|
|
mountPath: /data/db
|
|
- name: keyfile
|
|
mountPath: /etc/mongo
|
|
readOnly: true
|
|
volumes:
|
|
- name: keyfile
|
|
secret:
|
|
secretName: mongo-keyfile
|
|
defaultMode: 0400
|
|
volumeClaimTemplates:
|
|
- metadata:
|
|
name: data
|
|
spec:
|
|
accessModes: [ReadWriteOnce]
|
|
storageClassName: local-storage
|
|
resources:
|
|
requests:
|
|
storage: 5Gi
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: mongo-shard0-arbiter
|
|
namespace: mongodb
|
|
labels:
|
|
app: mongo-shard0-arbiter
|
|
spec:
|
|
clusterIP: None
|
|
selector:
|
|
app: mongo-shard0-arbiter
|
|
ports:
|
|
- port: 27018
|
|
targetPort: 27018
|
|
name: mongo
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: mongo-shard0-arbiter
|
|
namespace: mongodb
|
|
spec:
|
|
serviceName: mongo-shard0-arbiter
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: mongo-shard0-arbiter
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: mongo-shard0-arbiter
|
|
role: shard0-arbiter
|
|
spec:
|
|
terminationGracePeriodSeconds: 30
|
|
affinity:
|
|
nodeAffinity:
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: kubernetes.io/hostname
|
|
operator: In
|
|
values: [pisvrwsv07, pisvrwsv08]
|
|
containers:
|
|
- name: mongod
|
|
image: mongo:8.0
|
|
command:
|
|
- mongod
|
|
- --shardsvr
|
|
- --replSet=shard0ReplSet
|
|
- --port=27018
|
|
- --dbpath=/data/arb
|
|
- --keyFile=/etc/mongo/keyfile
|
|
- --bind_ip_all
|
|
ports:
|
|
- containerPort: 27018
|
|
resources:
|
|
requests:
|
|
memory: "128Mi"
|
|
cpu: "50m"
|
|
limits:
|
|
memory: "256Mi"
|
|
cpu: "200m"
|
|
volumeMounts:
|
|
- name: arbiter-data
|
|
mountPath: /data/arb
|
|
- name: keyfile
|
|
mountPath: /etc/mongo
|
|
readOnly: true
|
|
volumes:
|
|
- name: arbiter-data
|
|
emptyDir: {}
|
|
- name: keyfile
|
|
secret:
|
|
secretName: mongo-keyfile
|
|
defaultMode: 0400
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: mongo-shard1
|
|
namespace: mongodb
|
|
labels:
|
|
app: mongo-shard1
|
|
spec:
|
|
clusterIP: None
|
|
selector:
|
|
app: mongo-shard1
|
|
ports:
|
|
- port: 27018
|
|
targetPort: 27018
|
|
name: mongo
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: mongo-shard1
|
|
namespace: mongodb
|
|
spec:
|
|
serviceName: mongo-shard1
|
|
replicas: 2
|
|
selector:
|
|
matchLabels:
|
|
app: mongo-shard1
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: mongo-shard1
|
|
role: shardsvr
|
|
shard: "1"
|
|
spec:
|
|
terminationGracePeriodSeconds: 30
|
|
affinity:
|
|
nodeAffinity:
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: kubernetes.io/hostname
|
|
operator: In
|
|
values: [pisvrwsv07, pisvrwsv08]
|
|
initContainers:
|
|
- name: fix-permissions
|
|
image: busybox:1.36
|
|
command: ["sh", "-c", "chown -R 999:999 /data/db"]
|
|
volumeMounts:
|
|
- name: data
|
|
mountPath: /data/db
|
|
containers:
|
|
- name: mongod
|
|
image: mongo:8.0
|
|
command:
|
|
- mongod
|
|
- --shardsvr
|
|
- --replSet=shard1ReplSet
|
|
- --port=27018
|
|
- --dbpath=/data/db
|
|
- --keyFile=/etc/mongo/keyfile
|
|
- --bind_ip_all
|
|
ports:
|
|
- containerPort: 27018
|
|
resources:
|
|
requests:
|
|
memory: "512Mi"
|
|
cpu: "200m"
|
|
limits:
|
|
memory: "1Gi"
|
|
cpu: "1000m"
|
|
volumeMounts:
|
|
- name: data
|
|
mountPath: /data/db
|
|
- name: keyfile
|
|
mountPath: /etc/mongo
|
|
readOnly: true
|
|
volumes:
|
|
- name: keyfile
|
|
secret:
|
|
secretName: mongo-keyfile
|
|
defaultMode: 0400
|
|
volumeClaimTemplates:
|
|
- metadata:
|
|
name: data
|
|
spec:
|
|
accessModes: [ReadWriteOnce]
|
|
storageClassName: local-storage
|
|
resources:
|
|
requests:
|
|
storage: 5Gi
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: mongo-shard1-arbiter
|
|
namespace: mongodb
|
|
labels:
|
|
app: mongo-shard1-arbiter
|
|
spec:
|
|
clusterIP: None
|
|
selector:
|
|
app: mongo-shard1-arbiter
|
|
ports:
|
|
- port: 27018
|
|
targetPort: 27018
|
|
name: mongo
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: mongo-shard1-arbiter
|
|
namespace: mongodb
|
|
spec:
|
|
serviceName: mongo-shard1-arbiter
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: mongo-shard1-arbiter
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: mongo-shard1-arbiter
|
|
role: shard1-arbiter
|
|
spec:
|
|
terminationGracePeriodSeconds: 30
|
|
affinity:
|
|
nodeAffinity:
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: kubernetes.io/hostname
|
|
operator: In
|
|
values: [pisvrwsv07, pisvrwsv08]
|
|
containers:
|
|
- name: mongod
|
|
image: mongo:8.0
|
|
command:
|
|
- mongod
|
|
- --shardsvr
|
|
- --replSet=shard1ReplSet
|
|
- --port=27018
|
|
- --dbpath=/data/arb
|
|
- --keyFile=/etc/mongo/keyfile
|
|
- --bind_ip_all
|
|
ports:
|
|
- containerPort: 27018
|
|
resources:
|
|
requests:
|
|
memory: "128Mi"
|
|
cpu: "50m"
|
|
limits:
|
|
memory: "256Mi"
|
|
cpu: "200m"
|
|
volumeMounts:
|
|
- name: arbiter-data
|
|
mountPath: /data/arb
|
|
- name: keyfile
|
|
mountPath: /etc/mongo
|
|
readOnly: true
|
|
volumes:
|
|
- name: arbiter-data
|
|
emptyDir: {}
|
|
- name: keyfile
|
|
secret:
|
|
secretName: mongo-keyfile
|
|
defaultMode: 0400
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: mongo-mongos
|
|
namespace: mongodb
|
|
labels:
|
|
app: mongo-mongos
|
|
spec:
|
|
type: NodePort
|
|
selector:
|
|
app: mongo-mongos
|
|
ports:
|
|
- port: 27017
|
|
targetPort: 27017
|
|
name: mongo
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: mongo-mongos
|
|
namespace: mongodb
|
|
spec:
|
|
replicas: 2
|
|
selector:
|
|
matchLabels:
|
|
app: mongo-mongos
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: mongo-mongos
|
|
role: mongos
|
|
spec:
|
|
terminationGracePeriodSeconds: 30
|
|
affinity:
|
|
nodeAffinity:
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: kubernetes.io/hostname
|
|
operator: In
|
|
values: [pisvrwsv07, pisvrwsv08]
|
|
containers:
|
|
- name: mongos
|
|
image: mongo:8.0
|
|
command:
|
|
- mongos
|
|
- --configdb
|
|
- configReplSet/mongo-configsvr-0.mongo-configsvr.mongodb.svc.cluster.local:27019,mongo-configsvr-1.mongo-configsvr.mongodb.svc.cluster.local:27019,mongo-configsvr-2.mongo-configsvr.mongodb.svc.cluster.local:27019
|
|
- --port=27017
|
|
- --keyFile=/etc/mongo/keyfile
|
|
- --bind_ip_all
|
|
ports:
|
|
- containerPort: 27017
|
|
resources:
|
|
requests:
|
|
memory: "128Mi"
|
|
cpu: "100m"
|
|
limits:
|
|
memory: "256Mi"
|
|
cpu: "500m"
|
|
volumeMounts:
|
|
- name: keyfile
|
|
mountPath: /etc/mongo
|
|
readOnly: true
|
|
volumes:
|
|
- name: keyfile
|
|
secret:
|
|
secretName: mongo-keyfile
|
|
defaultMode: 0400
|