Articles of nfs

debugging慢lan(ssh,nfs)文件传输

我有两个linux机箱连接到一个千兆交换机。 他们都有千兆网卡,电缆是猫7。 使用iperftestingnetworking显示快速连接,但使用rsync,scp或nfs共享传输文件的速度很慢。 我正在testing一个1GB的文件。 iperf结果: Client connecting to odroid, TCP port 5001 TCP window size: 85.0 KByte (default) ———————————————————— [ 3] local 192.168.1.26 port 58788 connected with 192.168.1.32 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 979 MBytes 821 Mbits/sec rsync,scp或nfs的传输速度都是大约13Mb / s SCP: scp bigfile odroid:/mnt/usb1/ [10:19:12] bigfile 57% 590MB 12.2MB/s […]

尝试从freebsd挂载到centos NFS服务器

我无法将我的FreeBSD客户端映射到我的CentOS NFS服务器。 试图挂载我得到: RPCPROG_NFS: RPC: Port mapper failure – RPC: Unable to send 客户端的版本是: FreeBSD 8.0-RELEASE 服务器的版本是: CentOS版本6.5(最终版) 设置都很好看: /etc/exports /etc/hosts.allow /etc/hosts.deny 从freebsd列表的id根: uid=0(root) gid=0(wheel) groups=0(wheel),5(operator) id从根目录中列出: uid=0(root) gid=0(root) groups=0(root) NFS服务器上的rpcinfo列出了portmapper , mountd , nfs , nfs_acl , nlockmgr 。 同一networking上的其他CentOS盒子可以连接到NFS服务器。 我试图挂载的FreeBSD客户端在同一networking上有多个挂载到另一个FreeBSD NFS服务器。 我阿嬷卡住了,请帮忙…

systemd在停止networking之前不会卸载NFS共享

背景: RHEL 7.2截至2016年10月 物理系统 NetworkManager已禁用 通过将2x10G网卡(eth0和eth1)组合为lacp0来configurationnetworking (不相关的)IP地址在VLAN子接口lacp0.XXX和lacp0.YYY上configuration (也无关紧要)这些系统注定要成为Oracle 12c节点 networking连接是100%OK,基准testing证实LACPfunction完全正常,接近20 GBps理论最大值。 问题: systemd在关机期间没有检测到networking堆栈已经停止,并且等到为时已经太晚才能卸载NFS共享,从而无法卸载它们,从而导致NFS服务器无限期地挂起以供NFS服务器响应。 症状: 运行“systemctl stop network.service”之后,network.target和network-online.target仍被视为活动的 。 我到目前为止: 通过/etc/fstab文件添加的NFS挂载被转换为*.mount systemd单元。 这些单元自动依赖于依赖于network-online.target的remote-fs.target 。 从文档看来,networking* .target依赖于networkingpipe理工具来检测networking是否启动等。 这可以是NetworkManager , systemd-nerworkd ,或其他任何东西(但什么?)。 我想我的问题可能在这里,因为看起来我们的jumpstart模板依赖于旧的init脚本来pipe理接口。 我怀疑systemd可以与它交互,以获知networking正在启动或closures(尽pipe用于停止与systemctl stop network的networking堆栈) 我的第二个假设是,即使通过ifcfg- *文件使用libteam / teamd的networking组合也超出了systemd的network.target范围。 团队系统单元(包括[email protected])和networking单元似乎没有依赖关系。 这就解释了为什么唯一显示这个问题的系统是那些LACP支持的系统,而我们在使用典型的绑定之前没有这个问题。 所以我的问题:我有什么解决scheme,以确保我的NFS共享被卸载之前,我的networking堆栈被closures,通常是在重新启动系统? PS:如果上述解决scheme不是来自创buildNFS挂载的方式,那么会更好,因此必须向此服务器添加共享的人员不必知道要采取的特殊步骤。 考虑到我们的生产stream程,这似乎几乎不可能

什么是snmp mib获取NFS IO计数器?

我可以使用下面的snmp MIB获取本地磁盘I / O请求和读/写字节: SNMP table: UCD-DISKIO-MIB::diskIOTable diskIOIndex diskIODevice diskIONRead diskIONWritten diskIOReads diskIOWrites diskIOLA1 diskIOLA5 diskIOLA15 diskIONReadX diskIONWrittenX 25 sda 845276160 2882477056 576632 42597061 ? ? ? 5140243456 883350772736 但是我也想获得在NFS上执行的读写操作的数量和读写字节的数量。 我可以从iostat和sar获得这些细节。 但是如何在snmp中获得相同的结果。 有没有标准的MIB? 还是我需要使用自定义的扩展脚本? 或者NFS的其他任何统计数据来判断大多数IO是在NFS上发生的,而不是本地磁盘,所以可能会有延迟。 我发现相关统计数据的原始数据可以从/ proc / self / mountstats获得: device mynfsserver:/nfs_share mounted on /mymount with fstype nfs statvers=1.0 opts: rw,vers=3,rsize=32768,wsize=32768,namlen=255,acregmin=3,acregmax=60,acdirmin=30,acdirmax=60,hard,nolock,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=10.135.8.219,mountvers=3,mountport=635,mountproto=udp,local_lock=all age: 7184080 caps: […]

使用VPN时NFS挂载失败

我已经在我的开发服务器上安装了一个NFS安装,我已经安装在本地机器上,没有问题。 我现在一直试图通过办公室外部的一个VPN把同样的NFS共享挂载到同一台机器上(openSUSE笔记本电脑),但是却出现了以下错误: mount.nfs: Openration no permitted 在开发服务器上导出文件: /var/www *(rw,all_squash,async,anonuid=500,anongid=500) 在开发服务器上指定的NFS选项 # Server Mountd Protocol mountproto=udp # Server Port Port=2049 使用在本地工作但不通过VPN的安装命令: sudo mount 192.168.7.2:/var/www /var/www VPNconfiguration: client resolv-retry 20 keepalive 10 60 nobind mute-replay-warnings ns-cert-type server comp-lzo verb 1 persist-key persist-tun explicit-exit-notify 1 dev tun proto udp port 1194 cipher AES-128-CBC cert keys/{{ key name }}.crt […]

以编程方式(使用系统调用)使NFS查找caching失效

我有一个进程依赖于在NFS服务器上检测文件的创build。 通常它工作正常,但由于caching和NFS重命名操作 ,最近出现了一些小问题。 现在我们已经调查了NFS服务器上的lookupcache : lookupcache = mode指定内核如何pipe理给定安装点的目录条目caching。 模式可以是全部,无,位置或正面之一。 内核2.6.28和更高版本支持此选项。 Linux NFS客户端caching所有NFS LOOKUP请求的结果。 如果所请求的目录条目存在于服务器上,则结果被称为肯定的。 如果所请求的目录条目在服务器上不存在,则结果被称为否定的。 如果未指定此选项,或者全部指定了此选项,则客户端会假定这两种types的目录高速caching条目都有效,直到其父目录的高速caching属性到期为止。 现在,我的问题是 – 我真的不想全局禁用lookupcache – 我想我必须这样做,因为这个过程的本质(它在我们的NFS的许多地方都会碰到文件) 有没有办法我可以编程方式使lookupcache无效并强制LOOKUP? 理想的ioctl或其他系统调用。 我理想的目标是被logging为可靠的方法 – 我已经看到了“opendir; closedir'会触发caching无效,但是我无法追踪这个信息的来源。

我能否清楚地总结一下pNFS的新function?

所以我对NFS和类似的东西有些熟悉,而且我意识到,当我偶然发现pNFS时,NFS 4增加了许多新的function。 它似乎是“并行的”NFS存储,但是我所得到的图表和解释大致与通过一个油腻的Pyrex盘子一样清晰。 它似乎也将在2010年的某个时候“上线”。 所以,我想知道以下问题: “平行”是什么意思? 并行I / O? 访问? 并行? 有几个不同的内涵。 它在概念上类似于OpenAFS文件服务还是Windows DFS ? 它是否提供冗余存储? (即分散服务器之间的数据副本)? 有提到一个对象存储。 有没有新的API可以使这个可用? 或者这只是使用现有的文件系统语义来读/写对象? 有提到块存储。 这将允许我与其他客户端(即共享文件系统)集群驱动器? 这是否意味着我可以在服务器A上通过pNFS为多个客户端B和C提供服务? 虽然您可以与iSCSI共享一个物理磁盘,但这肯定会提供“缺失层”(文件系统)… 它似乎使用了一个类似于CXFS的元数据服务器,即有一个单独维护的元数据服务器,用于确定哪个客户端可以访问哪些数据。 这是限制在一个单一的元数据服务器,还是我可以有一些冗余和负载平衡在这里以及多个服务器?

跟踪NFS活动

我有一个55个工作站的系统,在中央服务器上共享两个NFS挂载点。 最近在过去的几天里,我注意到从工作站过滤出来的“GETATTR”请求越来越多,没有明显的原因。 我可以清楚地看到这些要求,但我不知道如何追查。 任何人都可以分享如何debugging这个问题,并跟踪这些调用的发电机的意见? 更新:通过试验和错误,事实certificateGETATTRS是由预加载引起的。 对未来而言,知道如何确定哪个进程正在导致什么NFSstream量,这仍然是件好事。

陈旧的NFS细丝处理与log4j错误

我们有一个独立运行的Java程序的实例,但写入相同的日志文件。 当日志文件被多个进程实例旋转和写入时,我们很less得到Stale NFS文件句柄错误。 我们现在正在考虑每个实例都有单独的日志文件。 有没有人已经得到这个问题,并有更好的解决。 谢谢Nayn

了解NFS4导出和伪文件系统

我想我理解NFS4导出前的工作方式,特别是导出点的命名空间。 (即在服务器上导出/ mnt / blah,在客户端上使用mount服务器:/ mnt / blah / my / mnt / point) 不过,我很难把NFS4出口包装起来。 到目前为止,我能够收集到的是,您通过将fsid = 0标记为“root”,然后通过将其引用为“/”在客户端导入。 (即服务器上的exportfs -o fsid = 0 / mnt / blah,安装服务器:/在客户端上) 然而,之后,它变得有点奇怪。 从我的游戏中,似乎我不能导出任何不在/ mnt / blah之下的东西。 例如,除非服务器上存在/ mnt / blah / home / user1,否则在尝试从客户端进行挂载时,exportfs / home / user1会失败。 如果是这种情况,服务器上的exportfs / mnt / blah / subdir1和客户机上的mount服务器:/ subdir1之间有什么区别,只是跳过exportfs并挂载你想要的任何子目录/ mnt / blah? […]