本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定和使用掛載點
若要使用適用於 Amazon S3 的掛載點,您的主機需要有效的 AWS 登入資料,才能存取您要掛載的 Amazon S3 儲存貯體或儲存貯體。如需不同的身分驗證方式,請參閱 GitHub 上的 AWS 憑證
例如,您可以為此目的建立新的 AWS Identity and Access Management (IAM) 使用者和角色。請確定此角色可存取您要掛載的一或多個儲存貯體。您可以使用執行個體設定檔將 IAM 角色傳遞至您的 Amazon EC2 執行個體。
使用適用於 Amazon S3 的掛載點
使用適用於 Amazon S3 的掛載點執行下列操作:
-
掛載 Amazon S3 儲存貯體。
-
您可以使用
mount-s3
命令手動掛載 Amazon S3 儲存貯體。在下列範例中,將
取代為您的 S3 儲存貯體名稱,並將amzn-s3-demo-bucket
取代為您主機上要掛載 S3 儲存貯體的目錄。~/mnt
mkdir
~/mnt
mount-s3amzn-s3-demo-bucket
~/mnt
由於掛載點用戶端預設會在背景執行,因此
目錄現在可讓您存取 Amazon S3 儲存貯體中的物件。~/mnt
-
或者,您可以設定執行個體啟動或重新啟動時自動掛載 Amazon S3 儲存貯體。
對於現有或執行中的 Amazon EC2 執行個體,請在 Linux 系統的
/etc/fstab
目錄中尋找fstab
檔案。然後,將一行新增至您的fstab
檔案。例如,若要amzn-s3-demo-bucket
使用字首 掛載example-prefix/
到系統路徑/mnt/mountpoint
,請參閱以下內容。若要使用下列範例,請以您自己的資訊取代使用者輸入預留位置
。s3://
/amzn-s3-demo-bucket
example-prefix
//mnt/mountpoint
mount-s3 _netdev,nosuid,nodev,nofail,rw 0 0如需範例中使用的選項說明,請參閱下表。
選項 描述 _netdev
指定檔案系統需要聯網才能掛載。
nosuid
指定檔案系統不能包含集合使用者 ID 檔案。
nodev
指定檔案系統不能包含特殊裝置。
nofail
指定無法掛載檔案系統仍應允許系統開機。
rw
指定使用讀取和寫入許可建立掛載點。或者,使用
ro
進行唯讀。對於新的 Amazon EC2 執行個體,您可以修改 Amazon EC2 範本上的使用者資料,並設定
fstab
檔案,如下所示。若要使用下列範例,請以您自己的資訊取代使用者輸入預留位置
。#!/bin/bash -e MP_RPM=$(mktemp --suffix=.rpm) curl https://s3.amazonaws.com/mountpoint-s3-release/latest/x86_64/mount-s3.rpm > $MP_RPM yum install -y $MP_RPM rm $MP_RPM MNT_PATH=/mnt/mountpoint echo "s3://
/ ${MNT_PATH} mount-s3 _netdev,nosuid,nodev,rw,allow-other,nofail" >> /etc/fstab mkdir $MNT_PATH systemctl daemon-reload mount -aamzn-s3-demo-bucket
-
-
透過掛載點存取 Amazon S3 儲存貯體中的物件。
在本機上掛載儲存貯體後,您可以使用常見的 Linux 命令 (例如
cat
或ls
) 來使用您的 S3 物件。Amazon S3 掛載點會將 Amazon S3 儲存貯體中的金鑰解譯為檔案系統路徑,方法是在正斜線 (/
) 字元上分割它們。例如,如果您的儲存貯體中有物件金鑰Data/2023-01-01.csv
,那麼您的掛載點檔案系統中將會有名為Data
的目錄,且當中會有名為2023-01-01.csv
的檔案。適用於 Amazon S3 的掛載點會刻意不對檔案系統實作完整的 POSIX
標準規格。掛載點會針對需要透過檔案系統介面對儲存在 Amazon S3 中的資料進行高輸送量讀取和寫入存取權的工作負載最佳化,否則不會依賴檔案系統功能。如需詳細資訊,請參閱 GitHub 上的適用於 Amazon S3 的掛載點檔案系統行為 。需要更豐富的檔案系統語意的客戶應考慮其他 AWS 檔案服務,例如 Amazon Elastic File System (Amazon EFS) 或 Amazon FSx 。 -
使用
umount
命令卸載 Amazon S3 儲存貯體。此命令會卸載 S3 儲存貯體並結束掛載點。若要使用下列範例命令,請將
取代為您的 S3 儲存貯體掛載所在主機上的目錄。~/mnt
umount
~/mnt
注意
若要取得此命令的選項清單,請執行
umount --help
。
如需其他掛載點組態詳細資訊,請參閱 上的 Amazon S3 儲存貯體組態
在掛載點中設定快取
適用於 Amazon S3 的掛載點支援不同類型的資料快取。若要加速重複讀取請求,您可以選擇加入下列各項:
-
本機快取 – 您可以在 Amazon EC2 執行個體儲存體或 Amazon Elastic Block Store 磁碟區中使用本機快取。如果您從同一個運算執行個體重複讀取相同的資料,而且您的本機執行個體儲存體中有未使用的空間可容納重複讀取的資料集,則應該選擇加入本機快取。
-
共用快取 – 您可以在 S3 Express One Zone 上使用共用快取。如果您從多個運算執行個體重複讀取小型物件,或者如果您不知道重複讀取的資料集大小並想要利用快取大小的彈性,則應該選擇加入共用快取。選擇加入之後,掛載點會在使用 S3 Express One Zone 的目錄儲存貯體中保留大小最多為 1 MB 的物件。
-
結合本機快取與共用快取 – 如果您在本機快取中有未使用的空間,但也想要一個跨多個執行個體的共用快取,您可以選擇同時加入本機快取和共用快取。
在掛載點中快取非常適合在多次讀取過程中,重複讀取未變更的相同資料的使用案例。例如,您可以使用快取搭配需要多次讀取訓練資料集的機器學習訓練任務,以提高模型準確度。
如需如何在掛載點中設定快取的詳細資訊,請參閱下列範例。
本機快取
您可以使用 --cache
旗標選擇加入本機快取。在下列範例中,請將 CACHE_PATH
取代為要將資料快取至其中的目錄檔案路徑。CACHE_PATH
將 取代為 Amazon S3 儲存貯體的名稱,並將 取代amzn-s3-demo-bucket
為主機上您希望掛載 S3 儲存貯體的目錄。~/mnt
mkdir
~/mnt
mount-s3 --cacheCACHE_PATH
amzn-s3-demo-bucket
~/mnt
當您在掛載 Amazon S3 儲存貯體時選擇加入本機快取時,掛載點會在設定的快取位置建立空的子目錄,如果該子目錄尚不存在。當您第一次掛載儲存貯體時,以及當您卸載時,掛載點會刪除本機快取的內容。
重要
如果您啟用本機快取,掛載點會將掛載 Amazon S3 儲存貯體中未加密的物件內容保留在掛載時提供的本機快取位置。為了保護您的資料,您應該使用檔案系統存取控制機制來限制對資料快取位置的存取。
共用快取
如果您從多個運算執行個體重複讀取小型物件 (最多 1 MB),或者您重複讀取的資料集大小通常超過本機快取的大小,則應該在 S3 Express One Zone
選擇加入共用快取之後,您需要為 S3 Express One Zone 之目錄儲存貯體中快取的資料支付費用。您也需要為針對 S3 Express One Zone 之目錄儲存貯體中資料提出的請求支付費用。如需詳細資訊,請參閱 Simple Storage Service (Amazon S3) 定價
若要在將 Amazon S3 儲存貯體掛載至運算執行個體時選擇在 S3 Express One Zone 中快取,請使用 --cache-xz
旗標,並指定目錄儲存貯體做為快取位置。 Amazon S3 在下列範例中,取代 使用者輸入預留位置
。
mount-s3
amzn-s3-demo-bucket
~/mnt
--cache-xz
amzn-s3-demo-bucket--usw2-az1--x-s3
結合本機快取與共用快取
如果您在執行個體上有未使用的空間,但也想要使用跨多個執行個體的共用快取,您可以選擇同時加入本機快取和共用快取。使用此快取組態,當您在本機儲存體中快取所需的資料時,您可以避免從相同的執行個體對目錄儲存貯體中的共用快取提出多餘的讀取請求。這可以降低成本並提高效能。
若要在掛載 Amazon S3 儲存貯體時同時選擇加入本機快取和共用快取,您可以使用 --cache
和 --cache-xz
旗標指定這兩個快取位置。若要使用下列範例來選擇同時加入本機快取和共用快取,請取代 使用者輸入預留位置
。
mount -s3
amzn-s3-demo-bucket
~/mnt
--cache/path/to/mountpoint/cache
--cache -xz
amzn-s3-demo-bucket--usw2-az1--x-s3
如需詳細資訊,請參閱 GitHub 上的適用於 Amazon S3 的掛載點快取組態
重要
如果您啟用共用快取,掛載點會將物件內容從掛載的 Amazon S3 儲存貯體複製到您提供的 S3 目錄儲存貯體,做為共用快取位置,讓任何可存取 S3 目錄儲存貯體的發起人都能存取。為了保護您的快取資料,您應該遵循Amazon S3 的安全最佳實務,以確保您的儲存貯體使用正確的政策且無法公開存取。您應該使用專用於掛載點共用快取的目錄儲存貯體,並僅將存取權授予掛載點用戶端。