我们正在创建一个 kubernetes statefulset,它正在挂载预先存在的 NFS 共享。
下面是一个精简的示例:
apiVersion: apps/v1beta2
kind: StatefulSet
metadata:
name: hostname
spec:
replicas: 1
selector:
matchLabels:
app: test
template:
metadata:
labels:
app: test
spec:
containers:
- name: container
image: 4730230466298.dkr.ecr.us-east-1.amazonaws.com/container:latest
volumeMounts:
- name: efs
mountPath: /efs
readOnly: true
volumes:
- name: efs
nfs:
path: /
server: 10.33.1.90
readOnly: true
这工作正常,并且 nfs 卷已正确装入容器中。但是,如何在装载上指定装载选项呢?我尝试设置挂载选项参数,如下所示:https://kubernetes.io/docs/concepts/storage/persistent-volumes/#mount-options
在卷和卷装载上,但验证失败。我不需要(或想要(创建 PV 或 PVC,因为 nfs 卷已经存在于 k8s 之外,我只需要使用它。
有没有办法指定挂载选项?
您正在将PersistentVolumes
的规格添加到template.spec.volumes
(Pos
的体积(中。
这两者不是一回事。此template.spec.volumes
的正确参考是 https://kubernetes.io/docs/concepts/storage/volumes/
您可以使用适当的mountOptions
创建一个PersistentVolume
和persistenVolumeClaim
,然后您可以在上述yaml的音量字段中使用该pvc
。
以下是 kubernetes 本身给出的一些nfs volume
示例。