首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NFS卷挂载导致Kubernetes中的退出代码32 on?

NFS卷挂载导致Kubernetes中的退出代码32 on?
EN

Stack Overflow用户
提问于 2015-11-06 02:38:36
回答 1查看 10.4K关注 0票数 1

我正在尝试在复制控制器中装载外部nfs共享。当我创建复制控制器时,pod处于挂起状态。通过获取pod的详细信息,我获得了以下事件:

代码语言:javascript
复制
Events:
  FirstSeen             LastSeen            Count   From            SubobjectPath   Reason      Message
  Thu, 05 Nov 2015 11:28:33 -0700   Thu, 05 Nov 2015 11:28:33 -0700 1   {scheduler }                scheduled   Successfully assigned web-worker-hthjq to jolt-server-5
  Thu, 05 Nov 2015 11:28:43 -0700   Thu, 05 Nov 2015 11:28:43 -0700 1   {kubelet jolt-server-5}         failedMount Unable to mount volumes for pod "web-worker-hthjq_default": exit status 32
  Thu, 05 Nov 2015 11:28:43 -0700   Thu, 05 Nov 2015 11:28:43 -0700 1   {kubelet jolt-server-5}         failedSync  Error syncing pod, skipping: exit status 32

我的设置是本地机器上的一个主服务器和一个节点。这些机器运行的是CoreOS。nfs共享存在于网络上的另一台计算机上。如果我通过shell命令进入主机,就可以成功挂载nfs共享,因此我相信导出配置正确。环顾网上,似乎使用nfs共享的唯一示例是在Kubernetes中定义的那些(一个pod与另一个pod共享)。有没有办法直接从Kubernetes挂载外部共享(我不想将其挂载到主机,然后再从主机挂载到容器)。

这是我的复制控制器:

代码语言:javascript
复制
apiVersion: v1
kind: ReplicationController
metadata:
  labels:
    name: web-worker
  name: web-worker
spec:
  replicas: 1
  selector:
    component: web-worker
  template:
    metadata:
      labels:
        app: task-queue
        component: web-worker
    spec:
      containers:
        - command:
            - /sbin/my_init
          image: quincy/php-apache2:latest
          name: web-worker
          ports:
            - containerPort: 80
              protocol: TCP
          volumeMounts:
            - name: code-base
              mountPath: /var/www/html
            - name: local-secrets
              mountPath: /secrets
      volumes:
        - name: code-base
          nfs:
            server: thuey.jolt.local
            path: "/Users/thuey/Sites/jolt/jolt-web"
        - name: local-secrets
          secret:
            secretName: local-secret

更新

经过更多的思考,我意识到问题可能是它找不到服务器(thuey.jolt.local)。它可能只是在查看内部DNS。这是准确的吗?如果是这样的话,有什么办法可以绕过它吗?

更新

在再次尝试之后,它现在可以直接从pod挂载到联网的nfs服务器。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-10 07:55:06

在@rwehner的帮助下,我终于能够弄清楚了。检查kubelet日志显示:

Output: mount.nfs: rpc.statd is not running but is required for remote locking.

当我运行rpcbind时,挂载就起作用了。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33552277

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档