從 S3 儲存貯體自動匯入更新 - FSx for Lustre

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

從 S3 儲存貯體自動匯入更新

您可以將 FSx for Lustre 設定為在 S3 儲存貯體新增、變更或刪除物件時,自動更新檔案系統中的中繼資料。FSx for Lustre 會建立、更新或刪除與 S3 中的變更相對應的檔案和目錄清單。如果 S3 儲存貯體中已變更的物件不再包含其中繼資料,FSx for Lustre 會維護檔案目前的中繼資料值,包括目前的許可。

注意

FSx for Lustre 檔案系統和連結的 S3 儲存貯體必須位於相同 AWS 區域 的位置,才能自動匯入更新。

您可以在建立資料儲存庫關聯時設定自動匯入,也可以隨時使用 FSx 管理主控台 AWS CLI、或 AWS API 更新自動匯入設定。

注意

您可以在相同的資料儲存庫關聯上設定自動匯入和自動匯出。本主題僅描述自動匯入功能。

重要
  • 如果在 S3 中修改物件且啟用了所有自動匯入政策並停用自動匯出,則該物件的內容一律會匯入至檔案系統中的對應檔案。如果目標位置中已存在檔案,則會覆寫該檔案。

  • 如果在檔案系統和 S3 中修改檔案,且啟用了所有自動匯入和自動匯出政策,則檔案系統中的檔案或 S3 中的物件都可能被另一個檔案覆寫。不保證稍後在某個位置進行的編輯會覆寫另一個位置的先前編輯內容。如果您在檔案系統和 S3 儲存貯體中修改相同的檔案,則應確保應用程式層級協調以防止此類衝突。FSx for Lustre 不會防止在多個位置發生衝突的寫入。

匯入政策會指定當連結 S3 儲存貯體中的內容變更時,Lustre 的 FSx 如何更新檔案系統。資料儲存庫關聯可以具有下列其中一個匯入原則:

  • 增 — FSx for Lustre 只有在新物件新增至連結的 S3 資料儲存庫時,才會自動更新檔案和目錄中繼資料。

  • 已變更 — 僅當資料儲存庫中的現有物件發生變更時,FSx for Lustre 才會自動更新檔案和目錄中繼資料。

  • 已刪除 — 僅當資料儲存庫中的物件被刪除時,FSx for Lustre 才會自動更新檔案和目錄中繼資料。

  • 新增、已變更和已刪除的任何組合 — 當 S3 資料儲存庫中發生任何指定的動作時,FSx for Lustre 會自動更新檔案和目錄中繼資料。例如,您可以指定當物件新增至 (新增) 或從 S3 儲存庫移除 (已刪除) 物件時更新檔案系統,但在物件變更時不會更新。

  • 未設定原則 — 當物件新增至 S3 資料儲存庫、變更或從 S3 資料儲存庫刪除時,FSx for Lustre 不會更新檔案系統上的檔案和目錄中繼資料。如果您未設定匯入原則,則會停用資料存放庫關聯的自動匯入。您仍然可以使用匯入資料儲存庫工作手動匯入中繼資料變更,如中所述使用資料儲存庫工作匯入變更

重要

自動匯入不會將下列 S3 動作與連結的 FSx for Lustre 檔案系統同步:

  • 使用 S3 物件生命週期到期刪除物件

  • 永久刪除已啟用版本控制的值區中的目前物件版本

  • 取消刪除已啟用版本控制的值區中的物件

對於大多數使用案例,建議您設定 [新增]、[已變更] 和 [已刪除] 的匯入原則。此政策可確保在連結的 S3 資料儲存庫中進行的所有更新都會自動匯入您的檔案系統。

當您設定匯入政策以根據連結的 S3 資料儲存庫中的變更更新檔案系統檔案和目錄中繼資料時,FSx for Lustre 會在連結的 S3 儲存貯體上建立事件通知組態。事件通知配置被命名為FSx。請勿修改或刪除 S3 儲存貯體上的FSx事件通知組態,這樣做會防止自動將更新的檔案和目錄中繼資料匯入您的檔案系統。

當 FSx for Lustre 更新已在連結 S3 資料儲存庫上變更的檔案清單時,即使檔案為寫入鎖定,它也會以更新版本覆寫本機檔案。

FSx for Lustre 會盡最大努力更新您的檔案系統。在下列情況下,FSx for Lustre 無法更新檔案系統:

  • 如果 FSx for Lustre 沒有權限開啟已變更或新的 S3 物件。在這種情況下,FSx for Lustre 會略過該物件並繼續。DRA 生命週期狀態不受影響。

  • 如果 FSx for Lustre 沒有儲存貯體層級的權限,例如. GetBucketAcl 這會導致資料儲存庫生命週期狀態變成「設定錯誤」。如需詳細資訊,請參閱 資料庫關聯生命週期狀態

  • 如果已刪除或變更連結 S3 儲存貯體上的FSx事件通知組態。這會導致資料儲存庫生命週期狀態變成「設定錯誤」。如需詳細資訊,請參閱 資料庫關聯生命週期狀態

建議您開啟記錄至記錄,以記 CloudWatch 錄無法自動匯入之任何檔案或目錄的相關資訊。記錄檔中的警告和錯誤包含失敗原因的相關資訊。如需詳細資訊,請參閱 資料儲存庫事件記錄

必要條件

Lustre 的 FSx 必須符合下列條件,才能從連結的 S3 儲存貯體自動匯入新的、已變更或刪除的檔案:

  • 檔案系統及其連結的 S3 儲存貯體位於相同的位置 AWS 區域。

  • S3 儲存貯體沒有設定錯誤的生命週期狀態。如需詳細資訊,請參閱 資料庫關聯生命週期狀態

  • 您的帳戶具有在連結的 S3 儲存貯體上設定和接收事件通知所需的許可。

支援的檔案變更類型

FSx for Lustre 支援將下列變更匯入至連結 S3 儲存貯體中發生的檔案和目錄:

  • 檔案內容的變更。

  • 檔案或目錄中繼資料的變更。

  • 符號連結目標或中繼資料的變更。

  • 刪除文件和目錄。如果您刪除連結的 S3 儲存貯體中對應至檔案系統中某個目錄的物件 (亦即,金鑰名稱以斜線結尾的物件),FSx for Lustre 只會在檔案系統上刪除對應的目錄。

更新匯入設定

您可以在建立資料存放庫關聯時,為連結的 S3 儲存貯體設定檔案系統的匯入設定。如需詳細資訊,請參閱 建立 S3 儲存貯體的連結

您也可以隨時更新匯入設定,包括匯入原則。如需詳細資訊,請參閱 更新資料儲存庫關聯設定

監控自動匯入

如果 S3 儲存貯體的變更率超過自動匯入可處理這些變更的速率,則匯入 FSx for Lustre 檔案系統的對應中繼資料變更會延遲。如果發生這種情況,您可以使用AgeOfOldestQueuedMessage測量結果來監督等待自動匯入處理之最早變更的存留時間。如需此量度的詳細資訊,請參閱AutoImport 和 AutoExport 指標

如果匯入中繼資料的延遲變更超過 14 天 (使用指標來衡AgeOfOldestQueuedMessage量),則 S3 儲存貯體中尚未由自動匯入處理的變更不會匯入檔案系統。此外,您的資料存放庫關聯生命週期會標記為 MIS CONFIGED,並停止自動匯入。如果您已啟用自動匯出,則自動匯出會繼續監視 FSx for Lustre 檔案系統是否有變更。不過,其他變更不會從您的 FSx for Lustre 檔案系統同步到 S3。

若要將資料存放庫關聯從「錯誤配置」的生命週期狀態返回到「可用」生命週期狀態,您必須更新您的資料存放庫關聯。您可以使用 update-data-repository-associationCLI 命令 (或對應的 UpdateDataRepositoryAssociationAPI 作業) 來更新資料存放庫關聯。您唯一需要AssociationID的請求參數是您要更新的資料儲存庫關聯。

資料存放庫關聯生命週期狀態變更為「用」後,自動匯入 (如果啟用則自動匯出) 會重新啟動。重新啟動後,自動匯出會繼續將檔案系統變更同步至 S3。若要將 S3 中新物件和已變更物件的中繼資料與未匯入的 FSx for Lustre 檔案系統同步處於錯誤設定狀態時,請執行匯入資料儲存庫工作。匯入資料儲存庫任務不會將 S3 儲存貯體中的刪除與 FSx for Lustre 檔案系統同步。如果您想要將 S3 與檔案系統完全同步 (包括刪除),您必須重新建立檔案系統。

為確保匯入中繼資料變更的延遲不超過 14 天,建議您在指標上設定警示,並在AgeOfOldestQueuedMessage指標超出警示臨界值時減少 S3 儲存貯體中的活動。AgeOfOldestQueuedMessage對於連接到 S3 儲存貯體的 FSx for Lustre 檔案系統而言,使用單一碎片持續從 S3 傳送可能的最大變更數量,而且只有在 FSx for Lustre 檔案系統上執行自動匯入,自動匯入可在 14 天內處理 7 小時的 S3 變更積壓。

此外,透過單一 S3 動作,您可以產生比 14 天內自動匯入處理的更多變更。這些類型的動作範例包括但不限於 AWS Snowball 上傳到 S3 和大規模刪除。如果您要與 FSx for Lustre 檔案系統同步的 S3 儲存貯體進行大規模變更,為了避免超過 14 天的自動匯入變更,您應該刪除檔案系統,並在 S3 變更完成後重新建立檔案系統。

如果您的指AgeOfOldestQueuedMessage標正在增加,請查看 S3 儲存貯體GetRequestsPutRequestsPostRequests、、和DeleteRequests指標,以瞭解會導致傳送至自動匯入的變更率和/或數量增加的活動變更。如需可用 S3 指標的相關資訊,請參閱 Amazon S3 使用者指南中的監控 Amazon S3

如需 Lustre 測量結果的所有可用 FSx 清單,請參閱。使用 Amazon 監控 CloudWatch