我正在使用kubernetes:v1.10.3,我有一个外部NFS服务器,我可以在任何地方(任何物理机器)安装。我想将这个NFS直接挂载到pod / container。我试过,但每次我都会收到错误。不想使用特权,请帮助我修复。
错误:卷的安装卷.SetUp失败" nfs" :mount失败:退出 status 32挂载命令:systemd-run挂载参数: --description = Kubernetes transient mount for /var/lib/kubelet/pods/d65eb963-68be-11e8-8181-00163eeb9788/volumes/kubernetes.io~nfs/nfs --scope - mount -t nfs 10.225.241.137:/stagingfs/alt/ /var/lib/kubelet/pods/d65eb963-68be-11e8-8181-00163eeb9788/volumes/kubernetes.io~nfs/nfs 输出:运行范围为单位run-43393.scope。 mount:错误的fs类型, 糟糕的选择,10.225.241.137:/stagingfs/alt/上的坏超级块,丢失了 代码页或帮助程序,或其他错误(对于几个文件系统 (例如nfs,cifs)您可能需要/ sbin / mount。帮助程序) 在某些情况下,在syslog中找到有用的信息 - 尝试dmesg |尾巴左右。
NFS server : mount -t nfs 10.X.X.137:/stagingfs/alt /alt
我在这里添加了两个卷,但每次都会出错。
首先:
"volumeMounts": [
{
"name": "nfs",
"mountPath": "/alt"
}
],
第二:
"volumes": [
{
"name": "nfs",
"nfs": {
"server": "10.X.X.137",
"path": "/stagingfs/alt/"
}
}
],
---------------------完成yaml ------------------------ --------
{
"kind": "Deployment",
"apiVersion": "extensions/v1beta1",
"metadata": {
"name": "jboss",
"namespace": "staging",
"selfLink": "/apis/extensions/v1beta1/namespaces/staging/deployments/jboss",
"uid": "6a85e235-68b4-11e8-8181-00163eeb9788",
"resourceVersion": "609891",
"generation": 2,
"creationTimestamp": "2018-06-05T11:34:32Z",
"labels": {
"k8s-app": "jboss"
},
"annotations": {
"deployment.kubernetes.io/revision": "2"
}
},
"spec": {
"replicas": 1,
"selector": {
"matchLabels": {
"k8s-app": "jboss"
}
},
"template": {
"metadata": {
"name": "jboss",
"creationTimestamp": null,
"labels": {
"k8s-app": "jboss"
}
},
"spec": {
"volumes": [
{
"name": "nfs",
"nfs": {
"server": "10.X.X.137",
"path": "/stagingfs/alt/"
}
}
],
"containers": [
{
"name": "jboss",
"image": "my.abc.com/alt:7.1_1.1",
"resources": {},
"volumeMounts": [
{
"name": "nfs",
"mountPath": "/alt"
}
],
"terminationMessagePath": "/dev/termination-log",
"terminationMessagePolicy": "File",
"imagePullPolicy": "IfNotPresent",
"securityContext": {
"privileged": true
}
}
],
"restartPolicy": "Always",
"terminationGracePeriodSeconds": 30,
"dnsPolicy": "ClusterFirst",
"securityContext": {},
"schedulerName": "default-scheduler"
}
},
"strategy": {
"type": "RollingUpdate",
"rollingUpdate": {
"maxUnavailable": "25%",
"maxSurge": "25%"
}
},
"revisionHistoryLimit": 10,
"progressDeadlineSeconds": 600
},
"status": {
"observedGeneration": 2,
"replicas": 1,
"updatedReplicas": 1,
"readyReplicas": 1,
"availableReplicas": 1,
"conditions": [
{
"type": "Available",
"status": "True",
"lastUpdateTime": "2018-06-05T11:35:45Z",
"lastTransitionTime": "2018-06-05T11:35:45Z",
"reason": "MinimumReplicasAvailable",
"message": "Deployment has minimum availability."
},
{
"type": "Progressing",
"status": "True",
"lastUpdateTime": "2018-06-05T11:35:46Z",
"lastTransitionTime": "2018-06-05T11:34:32Z",
"reason": "NewReplicaSetAvailable",
"message": "ReplicaSet \"jboss-8674444985\" has successfully progressed."
}
]
}
}
此致 Anupam Narayan
答案 0 :(得分:2)
如错误日志中所述:
for several filesystems (e.g. nfs, cifs) you might need a /sbin/mount. helper program
根据此question,您可能缺少可以使用sudo apt install nfs-common
安装的nfs-commons包