背景简介
Kubernetes NFS CSI 是一种容器存储接口,允许在 Kubernetes 集群中使用 NFS 卷。通过部署 NFS CSI 驱动,管理员可以创建、挂载和管理持久化存储卷,实现跨节点数据共享,满足有状态应用的数据持久化需求。
环境信息
- Kubernetes 已安装 【Kubernetes - 安装】
详细步骤
【官方参考】
本笔记采用本地部署的方式
第一步: 添加 csi-driver-nfs
仓库
# git clone https://github.com/kubernetes-csi/csi-driver-nfs.git
Cloning into 'csi-driver-nfs'...
remote: Enumerating objects: 35803, done.
remote: Counting objects: 100% (504/504), done.
remote: Compressing objects: 100% (226/226), done.
remote: Total 35803 (delta 325), reused 329 (delta 263), pack-reused 35299 (from 3)
Receiving objects: 100% (35803/35803), 37.69 MiB | 704.00 KiB/s, done.
Resolving deltas: 100% (19886/19886), done.
Updating files: 100% (6872/6872), done.
第二步: 进入 项目路径
# cd csi-driver-nfs
第三步: 部署
# ./deploy/install-driver.sh v4.10.0 local
use local deploy
Installing NFS CSI driver, version: v4.10.0 ...
serviceaccount/csi-nfs-controller-sa created
serviceaccount/csi-nfs-node-sa created
clusterrole.rbac.authorization.k8s.io/nfs-external-provisioner-role created
clusterrolebinding.rbac.authorization.k8s.io/nfs-csi-provisioner-binding created
clusterrole.rbac.authorization.k8s.io/nfs-external-resizer-role created
clusterrolebinding.rbac.authorization.k8s.io/nfs-csi-resizer-role created
csidriver.storage.k8s.io/nfs.csi.k8s.io created
deployment.apps/csi-nfs-controller created
daemonset.apps/csi-nfs-node created
NFS CSI driver installed successfully.
第四步: 查看 pod 状态
# kubectl -n kube-system get pod -o wide -l app=csi-nfs-controller
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
csi-nfs-controller-797c75856c-l2wwv 5/5 Running 0 59m 192.168.122.112 k8s-main-worker-1 <none> <none>
# kubectl -n kube-system get pod -o wide -l app=csi-nfs-node
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
csi-nfs-node-dmg48 3/3 Running 0 77m 192.168.122.111 k8s-main-master <none> <none>
csi-nfs-node-slhw2 3/3 Running 0 77m 192.168.122.112 k8s-main-worker-1 <none> <none>
以上便是本文的全部内容,感谢您的阅读,如遇到任何问题,欢迎在评论区留言,我会通过邮件回复。