Azure NetApp Files 的 NFS 常見問題集

本文回答有關 Azure NetApp Files 之 NFS 通訊協定的常見問題(常見問題)。

我想要在 Azure VM 啟動時或重新啟動時自動掛接磁碟區。 如何? 為持續性 NFS 磁碟區設定我的主機嗎?

若要讓 NFS 磁碟區在 VM 啟動或重新啟動時自動掛接,請將專案新增至主機上的 /etc/fstab 檔案。

如需詳細資訊,請參閱 掛接 Windows 或 Linux 虛擬機的磁碟區

Azure NetApp Files 支援哪些 NFS 版本?

Azure NetApp Files 支援 NFSv3 和 NFSv4.1。 您可以使用 NFS 版本建立磁碟區

Azure NetApp Files 是否正式支援 NFSv4.2?

目前,Azure NetApp Files 並未正式支援 NFSv4.2 及其輔助功能(包括疏鬆檔案作業、擴充屬性和安全性捲標)。 不過,使用 NFSv4.1 時,NFS 伺服器的功能會開啟,這表示 NFS 用戶端能夠以下列兩種方式之一掛接 NFSv4.2 通訊協定:

  • 在掛接選項中明確指定 vers=4.2nfsvers=4.2nfsvers=4,minorversion=2
  • 未在掛接選項中指定 NFS 版本,並允許 NFS 用戶端交涉到允許的最高支援的 NFS 版本。

在大部分情況下,如果使用 NFSv4.2 掛接用戶端,則看不到任何問題。 不過,如果某些用戶端不支援 NFSv4.2 或 NFSv4.2 擴充屬性功能,可能會發生問題。 此外,由於 Azure NetApp Files 目前不支援 NFSv4.2,因此 NFSv4.2 的任何問題都已超過範圍。

若要避免用戶端掛接 NFSv4.2 並符合可支援性的問題,請確定掛接選項中指定了 NFSv4.1 版本,或用戶端的 NFS 用戶端組態設定為在 NFSv4.1 的 NFS 版本上限。

如何? 啟用根壁球?

您可以指定根帳戶是否可以使用磁碟區的匯出原則來存取磁碟區。 如需詳細資訊,請參閱 設定 NFS 磁碟區的導出原則。

我可以針對多個磁碟區使用相同的檔案路徑 (磁碟區建立令牌) 嗎?

是的,您可以。 不過,每個子網內的檔案路徑必須是唯一的。

當我嘗試透過 Windows 用戶端存取 NFS 磁碟區時,為什麼用戶端需要很長的時間才能搜尋資料夾和子資料夾?

請確定 CaseSensitiveLookup 已在 Windows 用戶端上啟用 ,以加速查閱資料夾和子資料夾:

  1. 使用下列 PowerShell 命令來啟用 CaseSensitiveLookup:
    Set-NfsClientConfiguration -CaseSensitiveLookup 1
  2. 在 Windows 伺服器上掛接磁碟區。
    範例:
    Mount -o rsize=1024 -o wsize=1024 -o mtype=hard \\10.x.x.x\testvol X:*

Azure NetApp Files 如何支援 NFSv4.1 檔案鎖定?

對於 NFSv4.1 用戶端,Azure NetApp Files 支援 NFSv4.1 檔案鎖定機制,以維護租用型模型下所有檔案鎖定的狀態。

根據 RFC 3530,Azure NetApp Files 會針對 NFS 用戶端所持有的所有狀態定義單一租用期間。 如果用戶端未在定義的期間內更新其租用,伺服器將會釋放與用戶端租用相關聯的所有狀態。

例如,如果掛接磁碟區的用戶端在逾時之後變得沒有回應或當機,則會釋放鎖定。 用戶端可以藉由執行讀取檔案等作業,明確或隱含地更新其租用。

寬限期定義特殊處理的期間,用戶端可以在伺服器復原期間嘗試回收鎖定狀態。 租用的預設逾時為 30 秒,寬限期為 45 秒。 在該時間之後,用戶端的租用將會釋出。

Azure NetApp Files 也支援 中斷檔案鎖定

若要深入瞭解 Azure NetApp Files 中的檔案鎖定,請參閱 檔案鎖定

.snapshot為什麼 NFSv4.1 磁碟區中看不到目錄,但它會顯示在 NFSv3 磁碟區中?

根據設計,NFSv4.1 用戶端永遠不會看到 .snapshot 目錄。 根據預設, .snapshot NFSv3 用戶端可以看到目錄。 若要從 NFSv3 用戶端隱藏 .snapshot 目錄,請編輯磁碟區的屬性以 隱藏快照集路徑

Oracle dNFS

dNFS 是否需要任何 Oracle 修補程式?

重要

使用 Oracle 19c 和更新版本的客戶必須確保其 已針對 Oracle Bug 32931941進行修補。 Oracle 客戶目前使用的大部分修補程式套件組合都 不包含 此修補程式。 修補程式只包含在最近修補套件組合的子集中。

如果資料庫暴露在這個 Bug 中,網路中斷極有可能導致區塊損毀。 網路中斷包括記憶體端點重新配置、磁碟區重新配置和記憶體服務維護事件等事件。 不一定會立即偵測到損毀。

此損毀既不是 ONTAP 上的 Bug,也不是 Azure NetApp Files 服務本身,而是 Oracle dNFS 錯誤的結果。 在特定網路中斷或重新設定事件期間,對 NFS IO 的回應會錯誤處理。 資料庫會在寫入時錯誤地寫入正在更新的區塊。 在某些情況下,稍後覆寫該相同區塊將會以無訊息方式損毀損毀的區塊。 如果沒有,Oracle 資料庫進程最終會偵測到它。 錯誤應該記錄在警示記錄中,而且 Oracle 實例可能會終止。 此外,dbv 和 RMAN 作業可以偵測損毀。

Oracle 會發行 檔 1495104.1,此檔會以建議的 dNFS 修補程式持續更新。 如果您的資料庫使用 dNFS,請確定 DBA 小組正在檢查此檔中的更新。

重要

在 Azure NetApp Files 磁碟區上使用 Oracle dNFS 搭配 NFSv4.1 的客戶,必須確定要採取下列動作: 是否有任何修補程式才能搭配 NFSv4.1 使用 Oracle dNFS?

使用 Oracle dNFS 與 NFSv4.1 是否需要任何修補程式?

重要

如果您的資料庫使用 Oracle dNFS 搭配 NFSv4.1, 則必須針對 Oracle 錯誤進行修補33132050和33676296。 您可能必須要求其他 Oracle 版本的反向移植。 例如,在撰寫時,這些修補程式適用於 19.11,但尚未提供 19.3。 如果您在支援案例中引用這些錯誤號碼,Oracle 的支持工程師就會知道該怎麼做。

這項需求適用於一般以 ONTAP 為基礎的系統和服務,其中包括內部部署 ONTAP 和 Azure NetApp Files。

如果未套用這些修補程式,則為潛在問題的範例:

  1. 後端記憶體端點上的資料庫停止響應移動。
  2. 資料庫在 Azure NetApp Files 服務維護事件上停止回應。
  3. 短暫的 Oracle 在正常作業期間停止回應,可能或可能不明顯。
  4. 慢速 Oracle 關機:如果您監視關機程式,您會看到暫停可能會增加最多幾分鐘的延遲,因為 dNFS I/O 逾時。
  5. 讀取將會停止響應資料庫的 dNFS 回復快取行為不正確。

修補程式包括 dNFS 會話管理和 NFS 回復快取中的變更,可解決這些問題。

如果您無法修補這兩個 Bug,則 不得 搭配 NFSv4.1 使用 dNFS。 您可以停用 dNFS 或切換至 NFSv3。

我可以搭配 Oracle dNFS 和 NFSv4.1 使用多重路徑嗎?

使用 NFSv4.1 時,dNFS 將無法使用多個路徑。 如果您需要多個路徑,則必須使用NFSv3。 dNFS 需要全 clientID 叢集和 sessionID 主幹 NFSv4.1 才能使用 Azure NetApp Files 不支援的多個路徑。 因此,您將會在 dNFS 啟動期間遇到停止回應

下一步