我正在尝试使mongo-replicaset图表正常工作。
在mongo-replicaset图表部署时,Kubelet报告此错误:
MountVolume.SetUp failed for volume "mongo-two": lstat /mongo/data: no such file or directory
在每个节点上,/ mongo / data文件夹存在,这使我发疯。注意:在节点上,lstat命令不存在,但是我怀疑kubelet容器要带它。
我有3个永久卷:
apiVersion: v1
kind: PersistentVolume
metadata:
name: mongo-[one/two/three]
spec:
capacity:
storage: 40Gi
accessModes:
- ReadWriteOnce
storageClassName: local-storage
local:
path: /mongo/data
nodeAffinity:
required:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/hostname
operator: In
values:
- [one/two/three]
StatefulSet yaml:(mongo-replicaset掌 Helm chart 3.8.0)
...
volumeMounts:
- mountPath: /data/db
name: datadir
...
volumeClaimTemplates:
- metadata:
creationTimestamp: null
name: datadir
spec:
accessModes:
- ReadWriteOnce
storageClassName: local-storage
resources:
requests:
storage: 40Gi
...
在现有目录上仍然“没有这样的目录”。
什么不对如果需要,我可以提供其他数据。
谢谢
最佳答案
问题来自容器化的kubelet(由于安装了Rancher)
我将体积定义添加到kubelet容器中,没关系。
对于那些通过在Rancher-Kubernetes安装中创建持久本地卷感兴趣的人,只需将其添加到群集yaml中,以便kubelet可以挂载您的卷:
services:
kubelet:
extra_binds:
- /path_to_mount:/path_to_mount:rshared
不要忘记两个共享点。
关于kubernetes - 卷 “mongo-two”的MountVolume.SetUp失败:lstat/var/lib/mongo:没有这样的文件或目录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53648340/