我正在创建下面的mongodb statefulset,它创建3个副本,但是当我运行代码时,出现以下错误,并且所有Pod都处于CrashLoopBackOff状态。
这是我尝试kubectl create -f时遇到的错误
Error parsing command line: unrecognised option '--smallfiles'
apiVersion: apps/v1beta1
kind: StatefulSet
metadata:
name: mongo
namespace: microservice1
spec:
serviceName: "mongo"
replicas: 3
template:
metadata:
labels:
role: mongo
environment: test
spec:
terminationGracePeriodSeconds: 10
containers:
- name: mongo
image: mongo
command:
- mongod
- "--replSet"
- rs0
- "--smallfiles"
- "--noprealloc"
ports:
- containerPort: 27017
volumeMounts:
- name: mongo-persistent-storage
mountPath: /data/db
- name: mongo-sidecar
image: cvallance/mongo-k8s-sidecar
env:
- name: MONGO_SIDECAR_POD_LABELS
value: "role=mongo,environment=test"
volumes:
- name: mongo-persistent-storage
flexVolume:
driver: rook.io/rook
fsType: ceph
options:
fsName: myfs # name of the filesystem specified in the filesystem CRD.
clusterNamespace: rook # namespace where the Rook cluster is deployed
clusterName: rook
答案 0 :(得分:3)
--smallfiles
,您可以在doc中对其进行检查,您未指定图像标签,因此在这种情况下,最新的latest
被mongo 4.2拉出。
如果您设置image: mongo:4.0
,则您的配置应该正确。
答案 1 :(得分:1)
尝试删除小文件,否则请尝试以下我提供的块。
apiVersion: apps/v1
kind: StatefulSet
metadata:
labels:
app: mongodb-replicaset
name: logs-mongodb-replicaset
spec:
podManagementPolicy: OrderedReady
replicas: 3
revisionHistoryLimit: 10
selector:
matchLabels:
app: mongodb-replicaset
serviceName: logs-mongodb-replicaset
template:
metadata:
creationTimestamp: null
labels:
app: mongodb-replicaset
spec:
containers:
- args:
- --config=/data/configdb/mongod.conf
- --dbpath=/data/db
- --replSet=rs0
- --port=27017
- --bind_ip=0.0.0.0
command:
- mongod
image: mongo:3.6
imagePullPolicy: IfNotPresent
livenessProbe:
exec:
command:
- mongo
- --eval
- db.adminCommand('ping')
failureThreshold: 3
initialDelaySeconds: 30
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 5
name: mongodb-replicaset
ports:
- containerPort: 27017
name: peer
protocol: TCP
readinessProbe:
exec:
command:
- mongo
- --eval
- db.adminCommand('ping')
failureThreshold: 3
initialDelaySeconds: 5
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 1
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /data/db
name: datadir
- mountPath: /data/configdb
name: configdir
- mountPath: /work-dir
name: workdir