K8s--helm部署nfs-client-provisioner
文章目录一、搭建nfs服务器1.创建nfs共享目录并赋予目录777权限2.编写共享策略3.启动nfs-server服务4.测试二、helm整体部署1.heml添加第三方库,并拉取包2.下载需要的镜像并上传到harbor仓库3.解压下载的包,编辑values.yaml文件4.创建namespace5.在指定namespace下安装三、测试1.编辑pvc.yaml文件并应用2.查看是否创建pv和pvc
·
文章目录
一、搭建nfs服务器
1.创建nfs共享目录并赋予目录777权限
mkdir /nfsdata %这里选择将物理机作为nfs服务器
chmod 777 /nfsdata/
2.编写共享策略
vim /etc/exports:
/nfsdata *(rw,no_root_squash) %所有人可读写,没有root用户限制]
showmount -e %显示指定NFS服务器输出目录列表(也称为共享目录列表)
3.启动nfs-server服务
systemctl start nfs-server.service
4.测试
yum install -y nfs-utils %服务端和客户端必须软件nfs-utils,否则无法挂载nfs服务器共享目录,这里我们在所有节点均安装这个软件
在客户端挂载nfs服务器的/nfsdata目录看是否能够挂载成功:
二、helm整体部署
1.heml添加第三方库,并拉取包
helm pull nfs-subdir-external-provisioner/nfs-subdir-external-provisioner %拉取包
2.下载需要的镜像并上传到harbor仓库
docker load -i nfs-client-provisioner-v4.0.0.tar %这里镜像已经提前下载好,直接load -i就可以
docker push reg.westos.org/library/nfs-subdir-external-provisioner %上传到harbor仓库
3.解压下载的包,编辑values.yaml文件
tar zxf nfs-subdir-external-provisioner-4.0.5.tgz
cd nfs-subdir-external-provisioner/
vim values.yaml
image:
repository: reg.westos.org/library/nfs-subdir-external-provisioner %由于文件中没有设置全局,因此需要写镜像在harbor仓库中完整的路径
tag: v4.0.0
pullPolicy: IfNotPresent
nfs:
server: 172.25.1.250 %指定nfs服务器ip
path: /nfsdata %指定nfs目录
mountOptions:
4.创建namespace
kubectl create namespace nfs-provisioner %为了更好的做环境隔离,创建专属的namespace:nfs-provisioner
5.在指定namespace下安装
helm install nfs-subdir-external-provisioner . -n nfs-provisioner
三、测试
1.编辑pvc.yaml文件并应用
cat pvc.yaml:
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: test-claim
spec:
#storageClassName: managed-nfs-storage
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Mi
kubectl apply -f pvc.yaml
2.查看是否创建pv和pvc
kubectl get pv
kubectl get pvc
3.查看在nfs服务器上的/nfsdata目录下是否有文件产生
创建完pv和pvc后在nfs服务器的共享目录下将会产生相应的目录,当删除pv和pvc后,/nfsdata目录下的文件也将会被删除,如果在配置文件中指定参数,文件将会被打包保存,是否需要保存依具体情况而言:
更多推荐
已为社区贡献8条内容
所有评论(0)