install nfs-utils showmount -e 172.21.16.160 mkdir -p /opt/nfsdata chown -R www: /opt/nfsdata mount -t nfs4 172.21.16.160:/opt/nfsdata /opt/nfsdata cat >> /etc/fstab <<EOF 172.21.16.160:/opt/nfsdata /opt/nfsdata nfs4 install nfs-utils showmount -e 172.21.16.156 mkdir -p /opt/nfsdata chown -R www: /opt/nfsdata mount -t nfs4 172.21.16.156:/opt/nfsdata /opt/nfsdata cat >> /etc/fstab <<EOF 172.21.16.156:/opt/nfsdata /opt/nfsdata nfs4 install nfs-utils showmount -e 172.21.16.162 mkdir -p /opt/nfsdata chown -R www: /opt/nfsdata mount -t nfs4
使用mkdir命令创建导出文件系统: sudo mkdir -p /srv/nfs4/backups sudo mkdir -p /srv/nfs4/www 挂载实际的目录: sudo mount -- bind /opt/backups /srv/nfs4/backups sudo mount --bind /var/www /srv/nfs4/www 想要这个挂载持久化,打开文件/etc/fstab 它导出了/srv/nfs4/backups目录,并且允许来自192.168.33.0/24的客户端只读访问,而来自192.168.33.3的客户端同时读写可访问。 这台机器拥有对/srv/nfs4/www的读写操作权限,和对/srv/nfs4/backups文件的只读访问权限。 创建两个新目录作为挂载点。 当挂载 NFSv4 文件系统,你需要忽略 NFS 根目录,因此,不使用/srv/nfs4/backups,而使用/backups。
/data nfs4 defaults 0 0 或者 11.11.165.115:/tmp/test0920 /data nfs defaults,v4 t nfs 11.11.165.115:/tmp/test0920 /data mount.nfs: Protocol not supported [root@testsj ~]# mount -t nfs4 11.11.165.115:/tmp/test0920 /data mount.nfs4: Protocol not supported 因为关闭了nfs4, 则nfs4和4以下的协议都不支持了 当你加上 现在新的是nfsv4.2 所以尽可能用nfs4 补充: nfs4挂载的fsid问题 问题现象: 挂载nfs4时,报错:reason given by server :No such file or 客户端挂载过程需要通过mount –t nfs4指定NFS版本为4,默认采用nfsv3。
/nfs4/backups sudo mount --bind /var/www /srv/nfs4/www 要使挂着永久生效,请将以下条目添加到/etc/fstab文件中: sudo nano /etc /fstab /etc/fstab /opt/backups /srv/nfs4/backups none bind 0 0 /var/www /srv/nfs4/www 它导出/srv/nfs4/backups目录,并且只允许对整个192.168.33.0/24范围进行读访问,而对192.168.33.3则具有读和写访问权限。 /www文件系统的读写访问权和对/srv/nfs4/backups文件系统的只读访问权。 挂载NFSv4文件系统时,你需要省略NFS根目录,因此需要使用/backups来代替/srv/nfs4/backups。
在这个例子中,我们将会使用/srv/nfs4作为 NFS root 目录。 /srv/nfs4/backups sudo mount --bind /var/www /srv/nfs4/www 想要这个挂载持久化,添加下面的条目到/etc/fstab文件: sudo nano /etc/fstab /opt/backups /srv/nfs4/backups none bind 0 0 /var/www /srv/nfs4/www none 这台机器拥有对/srv/nfs4/www的读写操作权限,和对/srv/nfs4/backups文件的只读访问权限。 创建两个新目录作为挂载点。 当挂载 NFSv4 文件系统,你需要忽略 NFS 根目录,因此,不使用/srv/nfs4/backups,而使用/backups。
rw,relatime) nfsd on /proc/fs/nfsd type nfsd (rw,relatime) 172.31.11.232:/nfs_test on /nfs_test type nfs4 of non-device (nodev) filesystem types which will be monitored. monitored_nodev_filesystem_types=nfs,nfs4 #monitored_nodev_filesystem_types=nfs,nfs4,tmpfs monitored_nodev_filesystem_types=tmpfs ?
root@node01 ~]# mount -l | grep /data/xxx/upload 192.168.x.10:/data/upload on /data/xxx/upload type nfs4 或者通过 [root@node01 ~]# cat /etc/mtab | grep /data/xxx/upload 192.168.x.10:/data/upload /data/xxx/upload nfs4
hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check) # # Example for NFSv4: # /srv/nfs4 nfs-kernel-server.service systemctl restart nfs-idmapd.service 查看挂载: showmount -e 192.168.0.125 mount -t nfs4 -o proto=tcp,port=2049 192.168.0.125:/home/yaowen/nfsv4 /mnt/nfs mount -t nfs4 -o proto=tcp,port=2049 ,nfsvers=4.2 192.168.0.125:/home/yaowen/nfsv4 /mnt/nfs 192.168.0.125:/home/yaowen/nfsv4 nfs4 352G 我最理想的nfsv4挂载方式: mount -t nfs4 -o nfsvers=4.2,hard,retrans=5,rsize=1048576,wsize=1048576,ac,sharecache
service rpcbind restart service nfs restart 3.4 挂载 #192.168.78.1:/nfs中的/nfs代表了服务端的/home/nfs mount -t nfs4 192.168.78.1:/nfs /tmp/nfs mount -t nfs4 192.168.78.1:/data /tmp/data 3.5验证 df -h --------------
hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check) # # Example for NFSv4: # /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check) # /srv/nfs4/homes gss/krb5i(rw,sync,no_subtree_check hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check) # # Example for NFSv4: # /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check) # /srv/nfs4/homes gss/krb5i(rw,sync,no_subtree_check
前言 最近经常在修复漏洞,昨天有几台物理机突然说需要升级内核,升级原因为 Redhat 7.4 kernel介于3.10.0-693.el7和3.10.0-693.5.2.el7,可能会因为nfs4 client 环境 Red Hat Enterprise Linux 7.4 (NFS client) 内核 介于 3.10.0-693.el7 和 3.10.0-693.5.2.el7; NFS4 开启了 delegations 问题 在更新到REL7.4的内核后,NFS4.1客户端hung住了,在nfs_reap_expired_delegations里面的NFS4状态管理进程和一个tcpdump显示不断有相同状态id的TEST_STATEID 88 28 01 00 00 20 <5d> c3 0f 1f 44 00 00 66 66 66 66 90 55 48 89 e5 41 55 4c 8d af 综上原因为: RHEL7.4: NFS4 状态管理线程卡在nfs_reap_expired_delegations无限循环中,导致NFS4客户端hung。
umount /backup 2.取消共享存储的'根限制' 注:红圈里面的'根限制'要取消勾选,然后点击更新 3.重新挂载nfs文件系统 #这里注意,使用默认的挂载方式挂载后,nfs默认的文件系统版本为 nfs4 /sys/fs/cgroup /dev/sda1 ext4 976M 113M 797M 13% /boot 10.1.1.133:/nas/nfs-ts nfs4
nodev devpts ext3 ext2 ext4 squashfs vfat nodev nfs nodev nfs4
客户端急救 ls -l 问题文件 2>&1 | grep "Stale" # 确认错误类型 sudo umount -fl /mnt/nfs # 温柔卸载 sudo mount -t nfs4 查看出口清单 nfsstat -o net # 检查网络健康度 疫苗配方(/etc/fstab 优化):server:/data /mnt/nfs nfs4
mount fstype=devpts, mount fstype=cgroup -> /sys/fs/cgroup/**, mount fstype=nfs, mount fstype=nfs4
mount -l看了下,果然找到了nfs的踪迹: “... 10.0.251.111:/home/app on /hxspace/production/files/unsafty/hxtg_dd type nfs4 成功了: [root@168assi ~]# umount -f -v 10.0.251.111:/home/app /hxspace/production/files/unsafty/hxtg_dd: nfs4 10.0.251.111:/home//app on /hxspace/production/files/unsafty/hxtg_dd type nfs4 (rw,relatime,vers=4.1,
/boot tmpfs tmpfs 984M 0 984M 0% /run/user/0 172.17.120.50:/tmp nfs4 /boot tmpfs tmpfs 984M 0 984M 0% /run/user/0 172.17.120.50:/tmp nfs4
response time for OPEN / CLOSE requests increases due to some secondary load or complication, this NFS4
rpcbind -y NFS服务端k8s-node03机器操作 1 [root@k8s-node03 ~]# mkdir -p /data/nfs1 /data/nfs2 /data/nfs3 /data/nfs4 ,sync,root_squash,all_squash) 15 /data/nfs3 172.16.1.0/24(rw,sync,root_squash,all_squash) 16 /data/nfs4 58 persistentVolumeReclaimPolicy: Recycle 59 storageClassName: nfs 60 nfs: 61 path: /data/nfs4 (172.16.1.113)对应NFS共享目录创建文件 1 echo "pv-nfs2===" > /data/nfs2/index.html 2 echo "pv-nfs4+++" > /data/nfs4 1 [root@k8s-node03 ~]# tree /data/ 2 /data/ 3 ├── nfs1 4 ├── nfs2 5 ├── nfs3 6 ├── nfs4 7 ├── nfs5
iso9660 4.1G 4.1G 0 100% /run/media/root/CentOS 7 x86_64 vdevops.org:/home nfs4 rw,relatime,fd=18,pgrp=48875,timeout=300,minproto=5,maxproto=5,direct 0 0 vdevops.org:/home /mntdir nfs4