Amazon Elastic File System (Amazon EFS) 是 Amazon Web Services (AWS) 提供的一種完全受管的網路檔案系統 (Network File System, NFS) 服務。
它設計用於為 Amazon EC2 實例以及其他 AWS 服務提供可擴展、彈性、高可用性和高度耐用的共用檔案儲存。
簡單來說,你可以把它想像成一個雲端上的共用硬碟,多個 EC2 實例(甚至是其他 AWS 服務和本地伺服器)可以同時掛載並存取它,就像存取本地磁碟一樣。以下是 Amazon EFS 的幾個核心特點:
- 彈性可擴展 (Elastic and Scalable): EFS 是完全彈性的。你不需要預先佈建儲存容量,它會根據你新增或刪除檔案自動擴展或縮減。 這意味著你只需為實際使用的儲存空間付費,且永遠不用擔心儲存空間不足。 它可以擴展到 PB 級別的儲存容量,並支援數千個並行用戶端連接。 共用檔案儲存 (Shared File Storage): 這是 EFS 的最大特點。與 EBS(只能掛載到一個 EC2 實例)不同,EFS 允許多個 EC2 實例或其他服務同時掛載和存取同一個檔案系統。 這使得它非常適合需要共用資料的工作負載。 高度可用性和耐用性 (High Availability and Durability): EFS 檔案系統的資料會自動在多個可用區域 (Availability Zones, AZs) 內進行冗餘儲存。 這提供了高可用性和高耐用性,即使單一 AZ 發生故障,資料也仍然可用。 它提供 99.999999999% (11個9) 的持久性。 標準 NFS 協議 (Standard NFS Protocol): EFS 支援業界標準的 NFSv4 和 NFSv4.1 協議。 這表示你可以使用現有的 Linux 工具和應用程式來與 EFS 檔案系統互動,無需修改程式碼。 效能模式與儲存類別 (Performance Modes and Storage Classes): 效能模式: 通用模式 (General Purpose): 適用於大多數工作負載,例如網頁服務、內容管理系統。 Max I/O 模式 (Max I/O): 適用於需要更高吞吐量和更多並行操作的工作負載,例如大數據分析、媒體處理。 儲存類別: 標準 (Standard): 適用於經常存取的資料,提供低延遲和高可用性。 不常存取 (Infrequent Access, IA): 適用於不經常存取但需要快速存取的資料,成本較低。EFS IA 會將資料自動分層到更具成本效益的儲存中。 單區不常存取 (One Zone-Infrequent Access, One Zone-IA): 進一步降低不常存取資料的成本,但僅將資料儲存在一個可用區域中(犧牲了跨 AZ 的冗餘)。 全受管服務 (Fully Managed Service): AWS 負責 EFS 的所有底層基礎設施管理,包括佈建、修補、備份、擴展和維護。 這消除了你管理檔案伺服器、儲存容量和複雜備份策略的負擔。
主要應用場景:
- 內容管理系統和網頁服務: 多個伺服器需要存取相同的網頁內容或使用者上傳資料。 開發和測試環境: 開發者團隊需要共用程式碼庫或測試資料。 大數據分析: 多個計算實例需要同時讀取和寫入大型資料集。 媒體工作流程: 影片編輯、圖片處理等需要高速共用大量檔案的應用。 容器化應用程式 (例如 Docker, Kubernetes on EKS): 為容器提供持久且共用的儲存。 機器學習工作負載: 為訓練模型提供共用資料集。
總之,Amazon EFS 是 AWS 提供的一個功能強大、易於使用的共用檔案儲存解決方案,非常適合需要多個應用程式或伺服器同時存取相同資料的場景,同時具備高度的擴展性、可用性和免管理特性。