使用 EFS 掛載協助程式自動重新掛載 EFS 檔案系統 - Amazon Elastic File System

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

使用 EFS 掛載協助程式自動重新掛載 EFS 檔案系統

使用 EFS 掛載協助程式設定 EC2 Linux 執行個體上的 /etc/fstab,以便在執行個體重新啟動時自動重新掛載 EFS 檔案系統。

在建立 EC2 執行個體時附加 EFS 檔案系統,以便在重新開機時自動掛載

此方法使用 EFS 掛載協助程式來掛載檔案系統,並更新 EC2 執行個體上的 /etc/fstab 檔案。掛載協助程式是 amazon-efs-utils 工具組的一部分。

使用 EC2 啟動執行個體精靈建立新的 Amazon EC2 Linux 執行個體時,您可以將其設為自動掛載 Amazon EFS 檔案系統。如此一來,在執行個體初次啟動和重新啟動時,EC2 執行個體就會自動掛載檔案系統。

注意

Amazon EC2 Mac 執行個體在執行個體啓動時執行 macOS Big Sur 或 Monterey,那麽 Amazon EFS 檔案系統不支援掛載在此執行個體上。

在執行此程序之前,請確認您已經建立 Amazon EFS 檔案系統。如需詳細資訊,請參閱「開始使用 Amazon EFS」練習中的 步驟 1:建立您的 Amazon EFS 檔案系統

注意

您無法搭配使用 Amazon EFS 與以 Microsoft Windows 為基礎的 Amazon EC2 執行個體。

若您尚未擁有金鑰對,則必須建立一組金鑰對,才能啟動並連線至 Amazon EC2 執行個體。請按照《Amazon EC2 Linux 執行個體使用者指南》中的使用 Amazon EC2 設定。如果您已有金鑰對,您可以將其用於本練習。

設定 EC2 執行個體在啟動時自動掛載 EFS 檔案系統
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 選擇 Launch Instance (啟動執行個體)

  3. Step 1: Choose an Amazon Machine Image (AMI) (步驟 1:選擇 Amazon Machine Image (AMI)) 的清單最上方尋找 Amazon Linux AMI,然後選擇 Select (選取)

  4. 步驟 2:選擇執行個體類型中,選擇下一步:設定執行個體詳細資訊

  5. 步驟 3:設定執行個體詳細資訊 中,提供下列資訊:

    • 針對網路選擇與您掛載的 EFS 檔案系統相同的 VPC 項目。

    • 針對 Subnet (子網路) 選擇任何可用區域中的預設子網路。

    • 針對檔案系統選擇您要掛載的 EFS 檔案系統。檔案系統 ID 旁顯示的路徑是 EC2 執行個體將使用的掛載點,您可以加以變更。

    • 進階詳細資料中,使用者資料會自動產生,而其中會包含將您所指定 EFS 檔案系統掛載至檔案系統時的必要命令。

  6. 選擇 Next: Add Storage (下一步:新增儲存體)

  7. 選擇 Next: Add Tags (下一步:新增標籤)

  8. 為執行個體命名,並選擇下一步:設定安全群組

  9. 步驟 6:設定安全群組中,將指派安全群組)設定為選取現有安全群組。選擇預設安全群組,以確保它可以存取您的 EFS 檔案系統。

    您無法使用此安全群組透過 Secure Shell (SSH) 存取您的 EC2 執行個體。若要透過 SSH 存取,您可以編輯預設安全性並新增規則,以允許 SSH 或允許 SSH 的新安全群組。您可以使用以下設定:

    • Type (類型):SSH

    • Protocol (通訊協定):TCP

    • Port Range (連接埠範圍):22

    • Source (來源):Anywhere (任何位置) 0.0.0.0/0

  10. 選擇 Review and Launch (檢閱和啟動)。

  11. 選擇啟動

  12. 選取您建立的金鑰對核取方塊,然後選擇 Launch Instances (啟動執行個體)

您的 EC2 執行個體現在已設定為在啟動時和重新啟動時掛載 EFS 檔案系統。

使用搭配 EFS 掛載協助程式的 /etc/fstab 自動掛載 EFS 檔案系統

/etc/fstab 檔案包含檔案系統的資訊,而在執行個體啟動期間執行的 mount -a 命令則會掛載所有列在 /etc/fstab 檔案中的檔案系統。在此程序中,您將手動更新 EC2 Linux 執行個體上的 /etc/fstab,以便執行個體使用 EFS 掛載協助程式在執行個體重新啟動時自動重新掛載 EFS 檔案系統。

注意

Amazon EC2 Mac 執行個體在執行 macOS Big Sur 或 Monterey 時,Amazon EFS 檔案系統不支援使用搭配 EFS 掛載協助程式的 /etc/fstab 自動掛載在此執行個體上。反之,EC2 Mac 執行個體在執行 macOS Big Sur 或 Monterey 時,您可以使用帶有 /etc/fstab 的 NFS 來將檔案系統自動掛載在此執行個體上。

這種方法都會使用 EFS 掛載協助程式來掛載檔案系統。掛載協助程式是 amazon-efs-utils 工具組的一部分。

amazon-efs-utils 工具可以安裝在 Amazon Linux 和 Amazon Linux 2 Amazon Machine Image (AMI) 上。如需 amazon-efs-utils 的相關資訊,請參閱 使用工 amazon-efs-utils 具。如果您使用的是 Red Hat Enterprise Linux (RHEL) 等其他 Linux 發行版本,則需手動建置並安裝 amazon-efs-utils。如需詳細資訊,請參閱 在其他 Linux 發行版上安裝 Amazon EFS 用戶端

必要條件

您必須先設定下列需求,才能順利實作此程序:

更新 EC2 執行個體上的 /etc/fstab 檔案
  1. 連線到您的 EC2 執行個體:

    • 若要從執行 macOS 或 Linux 的電腦連接至您的執行個體,請指定 SSH 命令的 .pem 檔案。為此,您必須使用 -i 選項和私密金鑰路徑。

    • 若要從執行 Windows 的電腦連線至執行個體,您可以使用 MindTerm 或 PuTTY。您需要安裝 PuTTY 並將 .pem 檔案轉換為 .ppk 檔案,才可以使用該程式。

    如需詳細資訊,請參閱《Amazon EC2 Linux 執行個體使用者指南》中的下列主題:

  2. 在編輯器中開啟 /etc/fstab 檔案。

  3. 使用 IAM 授權或 EFS 存取點自動掛載:

    • 要使用 IAM 授權自動掛載到具有執行個體設定檔的 Amazon EC2 執行個體,請將以下的列新增到 /etc/fstab 檔案中。

      file-system-id:/ efs-mount-point efs _netdev,noresvport,tls,iam 0 0
    • 若要使用憑證檔案以 IAM 授權自動掛載到 Linux 執行個體,請將下行新增至 /etc/fstab 檔案。

      file-system-id:/ efs-mount-point efs _netdev,noresvport,tls,iam,awsprofile=namedprofile 0 0
    • 若要使用 EFS 存取點自動掛載檔案系統,請將下行新增至 /etc/fstab 檔案。

      file-system-id:/ efs-mount-point efs _netdev,noresvport,tls,iam,accesspoint=access-point-id 0 0
    警告

    使用 _netdev 選項,此選項用於在自動掛載檔案系統時識別網路檔案系統。若 _netdev 已遺失,EC2 執行個體可能會停止回應。此結果是因為網路檔案系統在運算執行個體開始聯網後需要初始化。如需詳細資訊,請參閱 自動掛載失敗且執行個體沒有回應

    如需詳細資訊,請參閱 使用 IAM 授權掛載使用 EFS 存取點進行掛載

  4. 儲存對檔案所做的變更。

  5. 'fake' 選項以及 'all''verbose' 選項與 mount 命令搭配使用,以測試 fstab 項目。

    $ sudo mount -fav home/ec2-user/efs : successfully mounted

您的 EC2 執行個體已完成設定,可在重新啟動時掛載 EFS 檔案系統。

注意

在某些情況下,不論掛載的 Amazon EFS 檔案系統處於何種狀態,Amazon EC2 執行個體都需要啟動。遇到這種情況時,請將 nofail 選項新增至 /etc/fstab 檔案中的檔案系統項目。

您新增至 /etc/fstab 檔案的程式碼行會執行下列動作。

欄位 描述

file-system-id:/

您 Amazon EFS 檔案系統的 ID。您可以從控制台或以編程方式從 CLI 或 AWS SDK 獲取此 ID。

efs-mount-point

EFS 檔案系統在 EC2 執行個體上的掛載點。

efs

檔案系統類型。您使用掛載協助程式時,此類型一律為 efs

mount options

檔案系統的掛載選項。這是以逗號分隔的下列選項清單:

  • _netdev:此選項告知作業系統檔案系統位於需要網路存取的裝置上。此選項可防止執行個體掛載到檔案系統,直到用戶端啟用網路。

  • noresvport:告知 NFS 用戶端在網路連線重新建立時,使用新的傳輸控制通訊協定 (TCP) 來源連接埠。這可讓您確保在網路復原事件後,EFS 檔案系統具有不中斷的可用性。

  • tls:啟用傳輸中的資料加密。

  • iam:使用此選項以掛載 IAM 授權至具有執行個體設定檔的 Amazon EC2 上。使用 iam 掛載選項也需要使用 tls 選項。如需詳細資訊,請參閱 使用 IAM 控制檔案系統資料存取

  • awsprofile=namedprofile:將此選項與 iamtls 選項搭配使用,以使用憑證檔案對 Linux 執行個體進行 IAM 授權的掛載。如需 EFS 存取點的詳細資訊,請參閱使用 IAM 控制檔案系統資料存取

  • accesspoint=access-point-id:將 tls 選項與 EFS 選項搭配使用,以使用 EFS 存取點進行掛載。如需 EFS 存取點的詳細資訊,請參閱使用 Amazon EFS 存取點

0

非零值表示檔案系統應該由 dump 進行備份。對於 EFS,這個值應為 0

0

fsck 在開機時檢查檔案系統的順序。對於 EFS 檔案系統,這個值應為 0,以表示 fsck 不應在啟動時執行。