Nfs

NFS 掛載期間客戶端超時

  • July 20, 2017

一些上下文:

兩台 RHEL 7 主機。

第一個是 NFS 伺服器,以相同的方式導出兩個目錄:

> cat /etc/exports
/first/dir otherhost(rw,sync,no_subtree_check,no_root_squash)
/second/dir otherhost(rw,sync,no_subtree_check,no_root_squash)

第一個目錄 /first/dir 將是一個小目錄。雖然第二個會隨著時間的推移而變得相當大,但它的 LVM 卷大小為 300Go,但目前 FS 是空的。

第二個主機otherhost是 NFS 客戶端。兩個 FS 以這種方式掛載在 fstab 中:

> grep nfs /etc/fstab
nfsserver:/first/dir /here nfs nfsvers=4,minorversion=1,_netdev 0 0
nfsserver:/second/dir /somewhere nfs nfsvers=4,minorversion=1,_netdev 0 0

2049 TCP 埠在伺服器端使用和暴露。經過分析,防火牆中沒有記錄其他網路連接(甚至沒有 2049 UDP)。在網路方面,一切似乎都很好。

我們看到的:

  • 如果我們按照“first”然後“second”的順序在 /etc/fstab 中掛載兩個目錄(例如使用mount -a ),第二次掛載失敗並超時
  • 如果我們以相反的順序掛載這兩個目錄(“第二”,然後是“第一”,通過在 /etc/fstab 中反轉它們或手動),那麼這兩個掛載都可以……

顯然這不是正常的行為。

我在這裡問是否有人遇到過如此瘋狂的 NFS 行為。如果沒有,您對如何分析這個問題有什麼建議嗎?非常感謝你的幫助。

找到了解決方案。看起來很奇怪,使用完全限定的伺服器名稱設置 /etc/exports 使問題消失了!就如此容易。但仍然令人費解。

我會進一步調查網路。執行針對 NFS 伺服器的 tcpdump(使用埠和 IP/名稱進行過濾)。

否則,您可以嘗試使用bg&timeo選項,看看是否可以幫助您。

引用自:https://serverfault.com/questions/861325