在master1上操作
参考资料
https://blog.csdn.net/zhou920786312/article/details/124919461
# 查看是否安装了 nfs-utils和rpcbind 软件包
rpm -q rpcbind nfs-utils
# 没有则用yum安装
yum install -y rpcbind nfs-utils
# 创建目录
mkdir /nfs/share -p
# 给与权限
chmod 777 /nfs/share
# vim /etc/exports
/nfs/share 192.168.187.0/24(rw,no_root_squash)
# 启动
systemctl start rpcbind.service
systemctl start nfs
# 开机自启动
systemctl enable rpcbind.service
# 开机自启动
systemctl enable nfs
# 查看rpcbind是否开启,rpcbind服务默认使用111端口
netstat -anpt | grep rpcbind
# 宣告共享目录
exportfs -arv
# 查看本机发布的NFS共享目录
showmount -e

https://blog.csdn.net/zhou920786312/article/details/124919461
# 查看是否安装rpcbind,nfs-utils
rpm -q rpcbind nfs-utils
# 未安装可以使用yum进行安装
yum install -y rpcbind nfs-utils
# 开启 rpcbind服务
systemctl start rpcbind
# 设置开机自启
systemctl enable rpcbind
# 创建目录
mkdir /nfs-client-share
# 手动挂载
mount 192.168.187.154:/nfs/share /nfs-client-share
# 查看是否成功
df -Th | grep /nfs-client-share

kubectl delete -f /root/test2/pod-nginx-volume.yaml
# 其他字段不懂通过explain来查看
kubectl explain pods.spec.volumes.nfs
vi /root/test2/pod-nginx-volume.yaml
内容
apiVersion: v1
kind: Pod
metadata:
# pod的名称
name: pod-nginx-volume
spec:
containers:
- name: c-nginx
image: nginx:1.14
# 容器挂载存储卷
volumeMounts:
# 容器存储卷目录
- mountPath: /usr/share/nginx/html
# 引入名称为nginx-volume的存储定义
name: nginx-volume
# 设置存储卷定义
volumes:
# 存储卷类型
- nfs:
# nfs共享目录
path: /nfs/share
# nfs服务端地址
server: 192.168.187.154
# 存储卷名称
name: nginx-volume
kubectl apply -f /root/test2/pod-nginx-volume.yaml
kubectl get pods pod-nginx-volume -o wide

可以看到pod在node1上。
kubectl -it exec pod-nginx-volume -c c-nginx -- /bin/sh
cd /usr/share/nginx/html
echo 'hello' > index.html



上面说明挂载nfs存储卷成功了

# 重启
systemctl restart rpcbind.service
systemctl restart nfs
# 宣告共享目录
exportfs -arv

apiVersion: v1
kind: Pod
metadata:
# pod的名称
name: pod-nginx-volume
spec:
containers:
- name: c-nginx
image: nginx:1.14
ports:
- containerPort: 80
protocol: TCP
# 容器挂载存储卷
volumeMounts:
# 容器存储卷目录
- mountPath: /usr/share/nginx/html
# 引入名称为nginx-volume的存储定义
name: nginx-volume
- name: c-tomcat
image: tomcat:8.5-jre8-alpine
ports:
- containerPort: 8080
protocol: TCP
# 容器挂载存储卷
volumeMounts:
# 容器存储卷目录
- mountPath: /tomcat
# 引入名称为nginx-volume2的存储定义
name: nginx-volume2
# 设置存储卷定义
volumes:
# 存储卷类型
- nfs:
# nfs共享目录
path: /nfs/share
# nfs服务端地址
server: 192.168.187.154
# 存储卷名称
name: nginx-volume
# 存储卷类型
- nfs:
# nfs共享目录
path: /nfs/share2
# nfs服务端地址
server: 192.168.187.154
# 存储卷名称
name: nginx-volume2

kubectl -it exec pod-nginx-volume -c c-nginx -- /bin/sh
cd /usr/share/nginx/html
echo 'hello1' > index.html
kubectl -it exec pod-nginx-volume -c c-tomcat -- /bin/sh
cd /tomcat
echo 'hello2' > index.html
