使用 Amazon S3 與 Amazon EC2 實例 - Amazon Elastic Compute Cloud

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

使用 Amazon S3 與 Amazon EC2 實例

Amazon Simple Storage Service (Amazon S3) 是一項物件儲存服務,提供領先業界的可擴展性、資料可用性、安全性和效能。您可以使用 Amazon S3 存放和擷取各種使用案例的任意數量資料,例如資料湖、網站、備份和大數據分析、從 Amazon EC2 執行個體或網際網路上的任何地方。如需詳細資訊,請參閱什麼是 Amazon S3?

物件是存放在 Amazon S3 中的基本實體。Amazon S3 中存放的每個物件都包含在儲存貯體中。儲存貯體在最高層級組織 Amazon S3 命名空間,並識別負責該儲存體的帳戶。Amazon S3 儲存貯體與網際網路網域名稱類似。儲存在值區中的物件具有唯一索引鍵值,可使用URL. 例如,如果具有索引鍵值/photos/mygarden.jpg的物件儲存在amzn-s3-demo-bucket1值區中,則可使用. URL https://amzn-s3-demo-bucket1.s3.amazonaws.com/photos/mygarden.jpg 如需詳細資訊,請參閱 Amazon S3 的運作方式。

使用範例

鑑於 Amazon S3 對儲存的好處,您可以決定使用此服務存放檔案和資料集,以便與EC2執行個體搭配使用。有幾種方法可在 Amazon S3 與執行個體之間移動資料。除了底下討論的範例之外,您也能從電腦或執行個體使用其他人所編寫的多種工具來存取 Amazon S3 中的資料。其中一些常見工具的討論請參閱 AWS 論壇。

如果您有許可,您可用下列其中一種方式在 Amazon S3 和執行個體之間複製檔案。

GET or wget (Linux)
注意

此方法僅適用於公有物件。如果物件非公有,您會收到 ERROR 403: Forbidden 訊息。如果收到此錯誤,則必須使用 Amazon S3 主控台 AWS CLI、、 AWS API AWS SDK、或 AWS Tools for Windows PowerShell,且必須擁有必要的許可。如需詳細資訊,請參閱 Amazon S3 使用者指南中的 Amazon S3 中的身分和存取管理下載物件

wget實用程序是一個HTTP和FTP客戶端,可讓您從 Amazon S3 下載公共對象。其預設安裝在 Amazon Linux 和多數其他的發行版本上,也可供 Windows 下載。若要下載 Amazon S3 物件,請使用下列命令,取代要下載URL的物件。

[ec2-user ~]$ wget https://my_bucket.s3.amazonaws.com/path-to-file
AWS Tools for Windows PowerShell (Windows)

Windows 執行個體的優點為使用圖形瀏覽器,可讓您用來直接存取 Amazon S3 主控台;不過,在編寫指令碼時,Windows 使用者也可使用 AWS Tools for Windows PowerShell 在 Amazon S3 之間移動物件。

請用下列命令將 Amazon S3 物件複製至 Windows 執行個體。

PS C:\> Copy-S3Object -BucketName my_bucket -Key path-to-file -LocalFile my_copied_file.ext
AWS CLI (Linux and Windows)

AWS Command Line Interface (AWS CLI) 是用來管理您的 AWS 服務的統一工具。 AWS CLI 可讓使用者進行自我身分驗證,以及從 Amazon S3 下載受限制的項目,還有上傳項目。如需詳細資訊,包括如何安裝與設定工具,請參閱 AWS Command Line Interface 詳細資訊頁面

aws s3 cp 命令結果類似以下命令:Unix cp。可讓您從 Amazon S3 複製檔案到執行個體,從執行個體複製檔案到 Amazon S3,以及從某一 Amazon S3 位置複製檔案到其他位置。

請用下列命令從 Amazon S3 將物件複製至執行個體。

aws s3 cp s3://my_bucket/my_folder/my_file.ext my_copied_file.ext

請用下列命令從執行個體將物件複製回 Amazon S3。

aws s3 cp my_copied_file.ext s3://my_bucket/my_folder/my_file.ext

aws s3 sync 命令可將整個 Amazon S3 儲存貯體同步至本機目錄位置。這對於下載資料集以及將本機副本與遠端設定一 up-to-date 起保留很有幫助。如果您擁有 Amazon S3 儲存貯體的適當許可,還能將命令中的來源與目的地位置對調,於完成後將本機目錄備份推送至雲端。

請用下列命令將整個 Amazon S3 儲存貯體下載至執行個體上的本機目錄。

aws s3 sync s3://remote_S3_bucket local_directory
Amazon S3 API

如果您是開發人員,可以使用存API取 Amazon S3 中的資料。您可以使用此功能API來協助開發應用程式,並將其與其他APIs和整合SDKs。如需詳細資訊,請參閱 Amazon S3 使用者指南 AWS SDKs中使用的 Amazon S3 程式碼範例