Filestore 支援下列檔案系統通訊協定:
NFSv3
- 適用於所有服務層級。
- 支援用戶端和伺服器之間的雙向通訊。
- 使用多個通訊埠。
- 為網路流量和作業建立信任管道。
- 提供標準 POSIX 存取權的快速設定。
NFSv4.1
- 適用於可用區、區域和企業服務等級。
- 與最新的防火牆設定相容,並支援網路安全法規遵循要求。
- 通訊一律由用戶端啟動,且一律透過單一伺服器通訊埠
2049
提供。 - 支援用戶端和伺服器驗證。
- 需要使用 LDAP 和 Kerberos 實作的 RPCSEC_GSS 驗證,這兩者皆可在 Managed Service for Microsoft Active Directory 中使用。
- 支援 LDAP 和 Kerberos 驗證 (
krb5
)、訊息完整性檢查 (krb5i
) 以及傳輸中資料加密 (krb5p
)。 - 為用戶端和伺服器提供 NFSv4.1 檔案 ACL 支援。
- 通訊一律由用戶端啟動,且一律透過單一伺服器通訊埠
每個通訊協定都最適合特定用途。下表比較各個通訊協定的規格:
規格 | NFSv3 | NFSv4.1 |
---|---|---|
支援的服務階層 | 所有服務階層 | 可用區、區域和企業 |
雙向通訊 | 是 | 否。通訊一律是由用戶端使用伺服器通訊埠 2049 發起。 |
驗證 | 否 | 可以,需要使用 LDAP 和 Kerberos 實作的 RPCSEC_GSS 驗證,這兩者皆可在 Managed Service for Microsoft Active Directory 中使用。 |
支援檔案或目錄存取控制清單 (ACL) | 否 | 可以,每個清單最多支援 50 個存取控制項目 (ACE)。 |
網路論壇支援 | 最多 16 個群組 | 連線至代管的 Microsoft AD 後,可支援不限的群組。 |
安全性設定 | sys :建立信任管道。 |
sys :建立信任管道。krb5 。驗證用戶端和伺服器。krb5i 。提供驗證和訊息完整性檢查。krb5p 。提供驗證、訊息完整性檢查和傳輸中資料加密功能。 |
作業延遲時間 | 無 | 作業延遲時間會隨著所選安全層級而增加。 |
復原類型 | 無狀態 | 有狀態 |
檔案鎖定類型 | 網路鎖定管理器 (NLM)。鎖定功能由用戶端控制。 | 以租賃為基礎的鎖定建議。鎖定功能由伺服器控制。 |
支援用戶端失敗 | 否 | 是 |
支援私人服務存取權 | 是 | 是 |
支援 Private Service Connect(已加入許可清單的 GA) | 否 | 是 |
NFSv3 的優點
NFSv3 通訊協定可快速設定標準 POSIX 存取權。
NFSv3 限制
以下是 NFSv3 的限制清單:
- 缺少用戶端和伺服器驗證及加密機制。
- 缺少用戶端錯誤處理機制。
NFSv4.1 的優點
NFSv4.1 通訊協定使用 RPCSEC_GSS 驗證方法,該方法是使用 LDAP 和 Kerberos 實作,可提供用戶端和伺服器驗證、訊息完整性檢查和傳輸中資料加密。
這些安全防護功能可讓 NFSv4.1 通訊協定符合現代網路安全性法規要求:
使用單一伺服器通訊埠
2049
進行所有通訊,有助於簡化防火牆設定。支援 NFSv4.1 檔案存取控制清單 (ACL)。
- 每個 ACL 最多可支援每個檔案或目錄 50 個存取控制項目 (ACE)。包括繼承記錄。
使用 Managed Microsoft AD 整合時,支援無限群組。
透過以租約為基礎的建議式鎖定功能,支援更佳的用戶端失敗處理機制。
- 用戶端必須驗證與伺服器的連線是否持續。如果用戶端未續約,伺服器會釋放鎖定,並讓任何其他透過鎖定權杖要求存取權的用戶端存取檔案。在 NFSv3 中,如果在鎖定期間刪除用戶端,其他用戶端 (例如新的 GKE 節點) 就無法存取該檔案。
支援有狀態復原功能。
- 與 NFSv3 不同,NFSv4.1 是 TCP 和連線為基礎的狀態通訊協定。在復原後,可繼續執行先前工作階段中的用戶端和伺服器狀態。
Managed Service for Microsoft Active Directory
雖然 Microsoft Active Directory 適用的 Managed Service (Managed Microsoft AD) 並非強制規定,但它是唯一由 Google Cloud管理的解決方案,可同時支援 LDAP 和 Kerberos,而這兩者都是 Filestore NFSv4.1 通訊協定的必要條件。
我們強烈建議管理員使用 Managed Service for Microsoft Active Directory (Managed Microsoft AD) 來實作及管理 LDAP 和 Kerberos。
作為 Google Cloud管理的解決方案,Managed Microsoft AD 提供下列優點:
提供多區域部署功能,最多可支援同一個網域中的五個區域。
- 確保使用者與其登入伺服器的距離較近,藉此縮短延遲時間。
支援 POSIX RFC 2307 和 RFC 2307bis,這是 NFSv4.1 實作的要求。
自動產生專屬 ID (UID) 和全域唯一 ID (GUID) 使用者對應項目。
您可以在受管理的 Microsoft AD 中建立使用者和群組,或將其遷移至受管理的 Microsoft AD。
管理員可以使用目前的內部部署、自行管理的 Active Directory (AD) 和 LDAP 網域建立網域信任關係。使用這個選項時,不需要遷移。
提供服務水準協議。
存取權控管和其他行為
在 Linux 上,Filestore NFSv4.1 ACE 會透過下列指令進行管理:
nfs4_setfacl
:在檔案或目錄中建立或編輯 ACE。nfs4_getfacl
:列出檔案或目錄上的 ACE。
每個 ACL 最多可支援 50 個 ACE。六個項目會保留給由用戶端
chmod
作業產生的自動產生 ACE。這些 ACE 在建立後即可修改。代表模式位元的自動產生 ACE 記錄會依下列優先順序列出:
OWNER@
的DENY and ALLOW ACEs
GROUP@
的DENY and ALLOW ACEs
EVERYONE@
專用DENY and ALLOW ACEs
如果已存在這類 ACE,系統會根據新套用模式位元重新使用及修改這些 ACE。
Filestore NFSv4.1 僅支援在 POSIX 模式
RWX
(讀取、寫入和執行) 中檢查必要的存取權。系統不會區分修改內容或SETATTR
規範的write append
和write
作業。nfs4_setfacl
公用程式也接受RWX
做為捷徑,並自動開啟所有適當的標記。nfs4_getfacl
不會自行翻譯主體。nfs4_getfacl
公用程式會顯示實體的數字UID
和GUID
。因此,系統會顯示OWNER@
、GROUP@
和EVERYONE@
的特殊主體。無論是否使用受管理的 Microsoft AD,在使用
AUTH-SYS
和nfs4_setfacl
公用程式時,管理員都必須指定數字UID
和GUID
,而非使用者名稱。此公用程式無法將名稱轉譯為這些值。如果未正確提供,Filestore 執行個體預設會使用nobody
ID。為檔案或受繼承 ACE 影響的檔案指定寫入權限時,ACE 必須同時包含
w
(寫入) 和a
(附加) 標記。檢查
SETATTR
的權限時,傳回的回應會類似於POSIX
,如下所示:- 超級使用者或
ROOT
使用者可以執行任何操作。 - 只有檔案擁有者可以將模式位元、ACL 和時間戳記設為特定時間和群組,例如所屬的其中一個
GUID
。 - 檔案擁有者以外的使用者可以查看屬性,包括 ACL。
- 超級使用者或
單一 ACE 包含有效權限和僅繼承權限。與其他 NFSv4.1 實作方式不同,Filestore 不會自動複製繼承的 ACE,以便區分有效的 ACE 和僅繼承的 ACE。
NFSv4.1 限制
以下是 NFSv4.1 的限制清單:
NFSv4.1 通訊協定無法與下列功能搭配使用:
NFSv4.1 通訊協定不支援
AUDIT and ALARM ACEs
。Filestore 不支援資料存取稽核。設定完成後,請勿刪除受管理的 Microsoft AD 和網路對等互連。這樣一來,在用戶端掛載時,使用者將無法存取 Filestore 共用資料夾,也無法存取資料。 Google Cloud 不對因管理員或使用者操作而造成的服務中斷負責。
使用任何已驗證的 Kerberos 安全性設定時,使用者可能會遇到一些作業延遲情形。延遲率會因指定的服務層級和安全性設定而異。安全等級越高,延遲時間就會越長。
不支援資料存取稽核。
Filestore NFSv4.1 解決方案採用 RPCSEC_GSS 驗證,這項驗證機制是使用 LDAP 和 Kerberos 實作,這兩者皆可在 受管理的 Microsoft AD 中使用。您也可以不使用任何驗證機制,直接使用 Filestore NFSv4.1,這點與 NFSv3 相同。系統不支援其他驗證機制。
如果您希望 Filestore 執行個體透過 Shared VPC 加入 Managed Microsoft AD,則必須使用
gcloud
或 Filestore API。您無法使用Google Cloud 控制台將執行個體加入 Managed Microsoft AD。受管理的 Microsoft AD 網域名稱長度不得超過 56 個半形字元。
如要建立企業執行個體,您必須直接透過 Filestore API 執行作業。詳情請參閱服務等級。
還原備份時,新執行個體必須使用與來源執行個體相同的通訊協定。