我对 k8s 相当陌生,所以如果我误用了 k8s 术语,请原谅我。我希望有人能给我指出正确的方向并建议最好的方法。
我有一个 k8s 集群运行在一组树莓派上。我想添加一个所有工作人员都可以访问的数据库卷。我计划使用 USB 外部驱动器来存储数据库内容。
我想将外部驱动器安装到主节点吗?
外部驱动器如何声明为 k8s 资源?
配置完成后,其他 k8s 节点中的 pod 如何访问此外部驱动器?
读完 k8s Volumes 页面后,听起来我可能正在寻找“本地”类型的 Volume。如果我将本地卷安装到主节点,我是否能够在工作节点中运行 postgres 容器并访问安装在主节点上的卷?
最简单的事情就是设置 NFS 服务器 https://www.htpcguides.com/configure-nfs-server-and-nfs-client-raspberry-pi/在主节点上,通过 NFS 导出 USB 驱动器,然后将其挂载为 pod 中的持久卷。为此,您需要首先创建 PersistentVolume:
apiVersion: v1
kind: PersistentVolume
metadata:
name: nfs
spec:
capacity:
storage: 5Gi
accessModes:
- ReadWriteMany
nfs:
server: master-node-ip
path: /mnt/nfsserver
然后创建相同大小的 PersistentVolumeClaim:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: nfs
spec:
accessModes:
- ReadWriteMany
storageClassName: ""
resources:
requests:
storage: 5Gi
之后,您可以将此 PVC 安装到所有需要的 pod 上:
volumeMounts:
- name: nfs
mountPath: "/usr/share/nginx/html"
volumes:
- name: nfs
persistentVolumeClaim:
claimName: nfs
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)