我正在尝试使mongo-replicaset图表正常工作。

在mongo-replicaset图表部署时,Kubelet报告此错误:

MountVolume.SetUp failed for volume "mongo-two": lstat /mongo/data: no such file or directory

在每个节点上,/ mongo / data文件夹存在,这使我发疯。注意:在节点上,lstat命令不存在,但是我怀疑kubelet容器要带它。
kubernetes - 卷 “mongo-two”的MountVolume.SetUp失败:lstat/var/lib/mongo:没有这样的文件或目录-LMLPHP

我有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/

10-15 22:01