本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
教學課程:從不同的裝載檔案系統 VPC
在本教學課程中,您將設定EC2執行個體掛接位於不同虛擬私有雲 (VPC) 中的EFS檔案系統。您可以使用EFS安裝幫助程序執行此操作。掛載協助程式是 amazon-efs-utils
工具組的一部分。如需 amazon-efs-utils
的相關資訊,請參閱 安裝 Amazon EFS用戶端。
用戶端VPC和您的EFS檔案系統VPC必須使用VPC對等連線或VPC傳輸閘道來連線。當您使用VPC對等連線或傳輸閘道進行連線時VPCs,其中的EC2執行個體VPC可以存取另一個中的EFS檔案系統VPC,即使VPCs屬於不同帳戶也是如此。
注意
不支援將 Amazon EFS 與基於 Microsoft 視窗的用戶端搭配使用。
主題
必要條件
若要完成此自學課程,您必須具備下列項目:
-
在使用此程序之前,會先在EC2執行個體上安裝工具
amazon-efs-utils
集。如需安裝amazon-efs-utils
的指示,請參閱安裝 Amazon EFS用戶端。 -
下列其中一項:
-
EFS檔案系統所VPC在位置與EC2執行處理所在位VPC置之間的VPC對等連線。VPC對等連線是兩VPCs者之間的網路連線。這種類型的連線可讓您使用私人網際網路通訊協定第 4 版 (IPv4) 或網際網路通訊協定第 6 版 (IPv6) 位址,在它們之間路由流量。您可以使用VPC對等連接VPCs在相同 AWS 區域 或之間 AWS 區域進行連接。如需詳細資訊,請參閱 Amazon 對VPC等互連指南中的建立和接受VPC對等連線。
-
連接EFS檔案系統所VPC在位置和EC2執行個體所在位VPC置的傳輸閘道。傳輸閘道是一個網路傳輸中樞,可用來互連VPCs與內部部署網路。如需詳細資訊,請參閱 Amazon 交通閘道指南中的VPC傳輸閘道入門。
-
步驟 1:判斷掛載目標之可用區域的識別碼
為了確保檔案系統的高可用性,建議您一律使用與用NFS戶端位於相同可用區域中的EC2掛載目標 IP 位址。如果您正在掛載另一個帳戶中的EFS檔案系統,請確定用戶NFS端和EFS掛載目標位於相同的可用區域識別碼中。此要求適用的原因是,可用區域名稱在各個帳戶間可能會有不同。
判斷EC2執行個體的可用區域 ID
-
連線到您的 EC2 執行個體。如需詳細資訊,請參閱 Amazon EC2 使用者指南中的 Connect 到您的EC2執行個體。
使用下列
describe-availability-zones
CLI命令判斷EC2執行個體所在的可用區域 ID。[ec2-user@ip-10.0.0.1] $
aws ec2 describe-availability-zones --zone-name
{ "AvailabilityZones": [ { "State": "available", "ZoneName": "us-east-2b", "Messages": [], "ZoneId": "use2-az2", "RegionName": "us-east-2" } ] }
可用區域 ID 會在
ZoneId
屬性use2-az2
中傳回。
步驟 2:決定掛載目標 IP 位址
現在您已知道EC2執行個體的可用區域 ID,現在可以擷取位於相同可用區域 ID 中之掛載目標的 IP 位址。
判斷同一個可用區域ID 中的掛載目標 IP 地址
-
使用
describe-mount-targets
CLI指令擷取use2-az2
AZ ID 中檔案系統的掛載目標 IP 位址,如下所示。$
aws efs describe-mount-targets --file-system-id
file_system_id
{ "MountTargets": [ { "OwnerId": "111122223333", "MountTargetId": "fsmt-11223344", =====> "AvailabilityZoneId": "use2-az2", "NetworkInterfaceId": "eni-048c09a306023eeec", "AvailabilityZoneName": "us-east-2b", "FileSystemId": "fs-01234567", "LifeCycleState": "available", "SubnetId": "subnet-06eb0da37ee82a64f", "OwnerId": "958322738406", =====> "IpAddress": "10.0.2.153" }, ... { "OwnerId": "111122223333", "MountTargetId": "fsmt-667788aa", "AvailabilityZoneId": "use2-az3", "NetworkInterfaceId": "eni-0edb579d21ed39261", "AvailabilityZoneName": "us-east-2c", "FileSystemId": "fs-01234567", "LifeCycleState": "available", "SubnetId": "subnet-0ee85556822c441af", "OwnerId": "958322738406", "IpAddress": "10.0.3.107" } ] }
use2-az2
可用區域ID 中的掛載目標 IP 地址為 10.0.2.153。
步驟 3:新增掛載目標的主機項目
您現在可以在EC2執行個體上的/etc/hosts
檔案中建立項目,將掛載目標 IP 位址對應至EFS檔案系統的主機名稱。
新增掛載目標的主機項目
-
將掛載目標 IP 位址的行新增至EC2執行個體的
/etc/hosts
檔案。該項目使用的格式為m
。您可以利用下列命令來將該行新增至檔案。ount-target-IP-Address
file-system-ID
.efs.region
.amazonaws.com.rproxy.goskope.comecho "10.0.2.153 fs-01234567.efs.us-east-2.amazonaws.com" | sudo tee -a /etc/hosts
請確定EC2執行個體和掛載目標的VPC安全性群組具有允許存取EFS檔案系統 (視需要) 的規則。如需詳細資訊,請參閱 針對 Amazon EC2執行個體和掛載目標使用VPC安全群組。
步驟 4:使用掛載輔助程EFS式掛載檔案系統
若要掛載EFS檔案系統,請先在EC2執行個體上建立掛載目錄。然後,使用 EFS mount Helper,您可以使用 AWS Identity and Access Management (IAM) 授權或EFS存取點來掛載檔案系統。如需詳細資訊,請參閱 使用 IAM 控制檔案系統資料存取 及 使用 Amazon EFS 存取點。
建立掛載目錄
-
您可以使用下列命令來建立掛載檔案系統的目錄。
$
sudo mkdir /mnt/efs/
使用IAM授權掛載檔案系統
使用下面的命令來安裝使用IAM授權的文件系統。
$
sudo mount -t efs -o tls,iamfile-system-id
/mnt/efs/
使用EFS存取點掛載檔案系統
使用下列指令來使用EFS存取點掛載檔案系統。
$
sudo mount -t efs -o tls,accesspoint=access-point-id
file-system-id
/mnt/efs/
現在您已經掛載了EFS檔案系統,您可以使用下列程序對其進行測試。
測試EFS檔案系統連線
-
使用下列命令,將目錄變更為您建立的新目錄。
$ cd ~/mnt/efs
-
建立子目錄,並將該子目錄的擁有權變更為EC2執行個體使用者。接著,使用下列命令導覽至新目錄。
$ sudo mkdir getting-started $ sudo chown ec2-user getting-started $ cd getting-started
-
透過下列命令建立文字檔。
$ touch test-file.txt
-
透過以下命令列出目錄內容。
$ ls -al
因此,會建立以下檔案。
-rw-rw-r-- 1
username
username
0 Nov 15 15:32 test-file.txt
您也可以透過將項目新增至 /etc/fstab
檔案以自動掛載檔案系統。如需詳細資訊,請參閱 在現有 EC2 Linux 執行個體上啟用自動掛載。
警告
使用 _netdev
選項,此選項用於在自動掛載檔案系統時識別網路檔案系統。如果_netdev
遺失,您的EC2執行個體可能會停止回應。此結果是因為網路檔案系統在運算執行個體開始聯網後需要初始化。如需詳細資訊,請參閱 自動掛載失敗且執行個體沒有回應。
步驟 5:清理資源並保護您的 AWS 帳戶
完成此教學課程之後,請執行下列步驟來清理您的資源並保護您 AWS 帳戶的.
清理資源並保護您的 AWS 帳戶
-
使用下列指令卸載EFS檔案系統。
$ sudo umount ~/efs
在中開啟 Amazon Elastic File System 主控台https://console.aws.amazon.com/efs/
。 -
從EFS檔案系統清單中選擇要刪除的檔案系統。
-
針對 Actions (動作),選擇 Delete file system (刪除檔案系統)。
-
在 [永久刪除檔案系統] 對話方塊中,輸入您要刪除之EFS檔案系統的檔案系統 ID,然後選擇 [刪除檔案系統]。
在打開 Amazon EC2 控制台https://console.aws.amazon.com/ec2/
。 -
在導覽窗格中,選擇安全群組。
-
選取您在此教學課程中新增規則的安全性群組名稱。
警告
請勿刪除您的預設安全性群組VPC。
-
在 Actions (動作) 中,選擇 Edit inbound rules (編輯傳入規則)。
-
選擇在您新增之傳入規則結尾的 X 並選擇 Save (儲存)。