Github网站
https://github.com/kubernetes-csi/csi-driver-nfs
- 版本查看
系统版本
# lsb_release -a
No LSB modules are available.
Distributor ID:Ubuntu
Description:Ubuntu 22.04.4 LTS
Release:22.04
Codename:jammy
root@Ubuntu22K8SMaster003171:~/csi-driver-nfs# uname -a
Linux Ubuntu22K8SMaster003171 6.8.0-58-generic #60~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Mar 28 16:09:21 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
软件版本
# kubectl version
Client Version: v1.34.1
Kustomize Version: v5.7.1
Server Version: v1.33.5+k3s1
- 安装配置
安装驱动
git clone https://github.com/kubernetes-csi/csi-driver-nfs.git
cd csi-driver-nfs
./deploy/install-driver.sh v4.12.1 local
检查pod状态
# kubectl -n kube-system get pod -o wide -l app=csi-nfs-controller
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-controller-6f78747487-v4p45 5/5 Running 3 (2d15h ago) 2d15h 192.168.3.162 rocky9k8snode003162 <none> <none>
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
csi-nfs-node-9sxv4 3/3 Running 1 (2d15h ago) 2d15h 192.168.3.161 rocky9k8snode003161 <none> <none>
csi-nfs-node-hxg6f 3/3 Running 1 (2d15h ago) 2d15h 192.168.3.162 rocky9k8snode003162 <none> <none>
csi-nfs-node-lm2qv 3/3 Running 1 (2d15h ago) 2d15h 192.168.3.163 rocky9k8snode003163 <none> <none>
创建storageclass
# cd deploy
# 编辑配置文件
# 修改nfs服务器对应信息
---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:# 设置storageclass名name: managed-nfs-storage
provisioner: nfs.csi.k8s.io
parameters:# NFS服务器对应IP地址和文件夹信息# NFS服务器需要先配置好server: 192.168.3.63share: /ifs/kubernetes/# csi.storage.k8s.io/provisioner-secret is only needed for providing mountOptions in DeleteVolume# csi.storage.k8s.io/provisioner-secret-name: "mount-options"# csi.storage.k8s.io/provisioner-secret-namespace: "default"
reclaimPolicy: Delete
volumeBindingMode: Immediate
allowVolumeExpansion: true
mountOptions:- nfsvers=4.1
创建storageclass
# kubectl apply -f storageclass.yaml
storageclass.storage.k8s.io/managed-nfs-storage unchanged
查看storageclass
# kubectl get storageclass managed-nfs-storage
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
managed-nfs-storage nfs.csi.k8s.io Delete Immediate true 2d15h
storageclass使用方法和1.1版本一致