https://github.com/kubernetes/kubernetes/pull/35652在 pod 中挂载了 nfs 卷:
apiVersion: v1
kind: Pod
metadata:
name: demo
spec:
containers:
- image: fedora:24
name: fedora
imagePullPolicy: Always
command:
- /usr/bin/sleep
- "3600"
volumeMounts:
- name: myvol
mountPath: /mnt
volumes:
- name: myvol
nfs:
path: /srv/share
server: localhost
terminationGracePeriodSeconds: 5
kubectl create -f nfspod.yaml
卡在ContainerCreating
kubectl describe pod demo
Events:
FirstSeen LastSeen Count From SubObjectPath Type Reason Message
--------- -------- ----- ---- ------------- -------- ------ -------
14s 14s 1 {default-scheduler } Normal Scheduled Successfully assigned demo to 127.0.0.1
14s 6s 5 {kubelet 127.0.0.1} Warning FailedMount MountVolume.SetUp failed for volume "kubernetes.io/nfs/3cc8bac7-9c77-11e6-ae11-fa163e815edd-myvol" (spec.Name: "myvol") pod "3cc8bac7-9c77-11e6-ae11-fa163e815edd" (UID: "3cc8bac7-9c77-11e6-ae11-fa163e815edd") with: mount failed: exit status 32
Mounting command: mount
Mounting arguments: /localhost:/srv/share /var/lib/kubelet/pods/3cc8bac7-9c77-11e6-ae11-fa163e815edd/volumes/kubernetes.io~nfs/myvol nfs []
Output: mount.nfs: Failed to resolve server /localhost: Name or service not known
请注意 nfs 服务器名称上的前导/
。
@vishh @derekwaynecarr
@vishh啊是的,我有一个 PR 准备好了修复程序,但你打败了我。 减去整个else
情况,因为if
在它以return
结尾之前。 谢谢! 合并后我会关闭
嘿,
NFS Mount 仍然无法解析 GCE 上的服务主机名(service.namespace)。
这个问题是修复并合并了还是需要一些时间才能在 GCE 上修复?
MountVolume.SetUp failed for volume "kubernetes.io/nfs/***" (spec.Name: "***") pod "***" (UID: "***") with: mount failed: exit status 32 Mounting command: mount Mounting arguments: nfs-server:/exports/jenkins-master /var/lib/kubelet/pods/***/volumes/kubernetes.io~nfs/jenkins-master nfs [] Output: mount.nfs: Failed to resolve server nfs-server.storage: Name or service not known
DNS 似乎工作正常,因为正在运行的容器能够解析名称。 同样使用 IP 也可以,但不是解决方案。
最有用的评论
嘿,
NFS Mount 仍然无法解析 GCE 上的服务主机名(service.namespace)。
这个问题是修复并合并了还是需要一些时间才能在 GCE 上修复?
DNS 似乎工作正常,因为正在运行的容器能够解析名称。 同样使用 IP 也可以,但不是解决方案。