-
部署NFS服务器:在NFS服务端创建共享目录(如
/data/nfs),在/etc/exports中添加条目/data/nfs *(rw,sync,no_subtree_check),执行exportfs -a生效。 -
节点准备:在所有Kubernetes节点安装NFS客户端:
apt-get install nfs-common # Debian/Ubuntu yum install nfs-utils # CentOS/RHEL -
创建PersistentVolume(PV):
apiVersion: v1 kind: PersistentVolume metadata: name: nfs-pv spec: capacity: storage: 10Gi accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Retain nfs: server: <NFS_SERVER_IP> path: /data/nfs -
创建PersistentVolumeClaim(PVC):
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: nfs-pvc spec: accessModes: - ReadWriteMany resources: requests: storage: 10Gi -
Pod挂载示例:
apiVersion: v1 kind: Pod metadata: name: nfs-pod spec: containers: - name: app image: nginx volumeMounts: - name: nfs-volume mountPath: /usr/share/nginx/html volumes: - name: nfs-volume persistentVolumeClaim: claimName: nfs-pvc
验证:执行kubectl get pv,pvc检查绑定状态,在Pod中写入文件后重建Pod或跨节点部署新Pod,确认数据持久化。