0%

AWS CSA Associate 學習筆記 - S3(Simple Storage Service) Part 3

Transfer Acceleration

S3 transfer acceleration 是利用 AWS 佈署在全世界的 edge server 來達到上傳加速的功能,有以下幾點特性:

  • 使用者上傳檔案的 endpoint 會從 region 變成 edge server,因此必須透過另一個不同的 endpoint 上傳檔案

  • 檔案傳到 edge server 後,就是透過 AWS 的骨幹網路回到 s3 bucket 所在的 region 內

  • 啟用後,最多需要 20 mins 的生效時間

  • 啟動此功能後,AWS 會產生一個 bucketname.s3-accelerate.amazonaws.com 的網域名稱,透過此網域名稱,使用者就可以將檔案上傳到離自己最近的 edge server

    為什麼一組域名就可以? AWS 會自行根據使用者查詢 DNS 的來源,回應一個最靠近使用者的 edge server,這是每個 CDN provider 有的功能

S3 Transfer Acceleration

此外,AWS 也提供了一個測速的網頁,使用者可以自行評估須不需要開啟 S3 Transfer Acceleration 功能。

Snowball 系列服務 (Snow Family)

Snow Family

Snowball 是設計用來協助使用者移動大量資料用,不論是從本地端到 AWS,或是從 AWS 回到本地端,都可以利用此服務;此外,AWS 還提供了 OpsHub 工具可以裝在本地端的電腦上,用來管理 Snow Family 相關裝置。

使用原則大概是:

  • 若是透過網路傳遞資料需要超過 1 週,那就可以考慮使用 snowball 設備來處理

  • 若是傳遞資料量超過 10TB,使用 Snowmobile 比較合適

Snowball Edge

  • Snowball 是個安全且兼顧的硬體裝置,被設計用來移動大量資料,不論是從本地端到 AWS,或是 AWS 到本地端都可;簡單來說,就是被設計用來做資料遷移和邊緣運算裝置,可簡單稱為 Snowball Edge

  • 為了加強資料移動的安全性,除了有堅固的外殼外,Snowball 還帶有加密功能 & 內建 TPM;並且還設計了資料抹除的功能,確保資料移動完畢後可以完全清除

  • 與透過現有網際網路來傳輸資料相比,透過 Snowball 有便宜、安全 … 等優點

  • Snowball Edge 可以分為 Snowball Edge Storage Optimized & Snowball Edge Compute Optimized 兩類,可以讓使用者在移動大量資料時,也可以根據需求進行一定程度的運算工作(例如:EC2 & Lambda function)

  • 多台 Snowball 裝置還可以組成 cluster,變成一個臨時的大型設備

Snowmobile

  • Snowmobile 本身是個 數百 PB ~ EB 等級的資料移動服務,這樣量級的資料量,需要拖車來運送了….

  • Snowmobile 採用了多層安全保護,包含專門安全人員、GPS 追蹤、警示監控、24 小時全年無休的視訊監視,以及運輸期間選擇性的安全護衛車隊(帶保鏢的意思….)

Snowcon

  • 設備更小,更適合攜帶,可在嚴峻的環境中運行

  • 可提供 edge computing、storage、data transfer … 等功能

  • 有 8TB 的儲存空間

  • 可透過 AWS DataSync 服務將資料回傳至 AWS

Storage Gateway

什麼是 Storage Gateway ?

AWS Storage Gateway 是一種混合雲端儲存服務,有以下兩個特性:

  • 是一個連結地端(on-premise) & 雲端(AWS)的工具,可以是一個 software appliance(以 VM 的形式存在,目前支援 VMware ESXi & Microsoft Hyper-V),也可以是一台硬體

  • 提供非常簡易且安全的方式,協助使用者將資料移到 AWS 儲存服務(S3, EBS … etc)中

  • 適合用在 Hybrid 的環境,希望可以繼續存取地端儲存空間並同步到 AWS 為前提(如果資料上傳後要改成直接存取雲端,直接用 AWS DataSync 把資料快速送上 AWS 即可)

其實最終的目的就是為了讓使用者可以大幅簡化資料移到 AWS 進行儲存的工作。

Storage Gateway 如何處理不同類型的資料 ?

使用者購買 storage 進行資料的儲存,雖然同樣是存放資料,但跟資料的使用方式、用途、情境,其實還可以細分為以下三類:

  • 一般檔案:此類型檔案通常會以 NFS or SMB 的形式提供存取

  • Volume:此類檔案則是由 block storage 來提供,通常會以 iSCSI 的方式提供存取,使用上就像一個硬碟一樣

  • Tape:這類的檔案通常都是因為法令關係需要將資料封存一段時間而存在於磁帶中

因此,為了處理上述的不同的資料類型,因此 AWS 也提供了三種不同的 Storage Gateway 來處理這些資料,分別是 File GatewayVolume GatewayTape Gateway

File Gateway

Storage Gateway - File Gateway

  • 會將檔案以 object 的形式存放在 S3 bucket 中

  • 存取會以 local 為主,File Gateway 會協助慢慢將資料同步到 S3 中 (近期存取的資料會 cache 在 File Gateway 上)

  • 本地端可透過 NFS 的方式進行儲存 (POSIX compitable)

  • 與檔案相關的 ownership, permission, timestamp 等資訊,則會存放在 S3 object user-metadata 中

  • 一旦將資料移動到 S3 後,就可以使用 S3 提供的 versioning, lifecycle management, cross-region replication … 等功能

  • 可整合 AD(Active Directory) 作為使用者身份認證

Storage Gateway - File Gateway

Volume Gateway

Storage Gateway - File Gateway

Volume Gateway 提供了 iSCSI 的方式,讓資料可透過 單一磁碟(volume) 為單位的角度來進行資料的儲存與管理;寫入 volume 的資料會以非同步的方式透過 volume snapshot 的方式進行儲存,也因為是 block device 的關係,因此每次的變更備份都是只有處理變更的 block 部份而已。

而根據 volume 使用情境的不同,Volume Gateway 還可以分成以下兩種:

Stored Volume

Storage Gateway - Stored Volume

  • 資料主要儲存在本地端(對本地端的應用程式相對延遲低),非同步備份到 AWS

  • 實際寫進 volume 的資料會先存在於本地端的儲存設備中

  • 資料備份會以非同步的方式,並以 EBS(Elastic Block Volume) snapshot 的形式存放於 S3 中

  • 目前支援的 volume 大小範圍為 1GB ~ 16 TB

Cached Volume

Storage Gateway - Cached Volume

  • 資料其實是存放在 S3 中

  • 但為了讓本地端使用上可以更為快速,會將常存取的資料 cache 在本地端

    透過此方式,可以讓地端設備不需要購置大容量的儲存設備,因為資料其實大部份都是存放在 S3,本地端只存放常用的一小部份資料

  • 支援的 volume 大小範圍為 1GB ~ 32TB

Tape Gateway

Storage Gateway - Tape Gateway

  • 用來解決磁帶備份 & 保存的問題

  • iSCSI device 的形式提供給使用者進行資料存放

  • 需要與現有的磁帶備份軟體(例如:NetBackup, Backup Exec, Veeam … 等)搭配使用

  • 會將資料非同步的回傳至 S3,並搭配 Glacier 將成本降低

  • 支援將資料直接存入 S3 Glacier & S3 Glacier Deep Archive

其他注意事項 (for SysOps certification)

  • 若因為需要維護的關係需要重啟 storage gateway;File Gateway 可直接重啟;但 Volume/Tape Gateway 就需要先停止服務,重啟後再啟動服務

  • 啟動 storage gateway 有兩種方式:CLI & 送 HTTP request 到 Gateway VM(port 80)

  • 啟動 storage gateway 失敗的原因可能有:

    • Gateway VM port 80 未開啟
    • Gateway VM 沒有對時正確

Storage Gateway - Activation

  • 使用 Volume Gateway 時,會希望 CacheHitPercent 越高越好,而 CachePercentUsed 越低越好

Storage Gateway - Activation

  • 若希望 Volume Gateway cache disk 可以大一些,需要使用 cached volume 複製一個更大量的 cache disk,再指定新的 disk 作為 cached volume

Athena vs Macie

這兩個服務提供了使用者直接對儲存在 S3 的資料進行查詢 & 分析的能力。

Athena

  • Athena 是種互動式的查詢服務,以 serverless 的方式運行

  • 可透過標準的 SQL 對 S3 中的資料進行查詢,不需要設置複雜的 ETL(Extract/Transform/Load) 程序

  • 實際的查詢行為發生時才需要付費

  • 通常用來查詢 Log(例如:ELB log, S3 access log)、產生報表

Macie

  • 同樣也是針對儲存在 S3 的資料進行分析查詢(也可以分析 CloudTrail logs)

  • 透過機器學習 & 自然語言處理(NLP, Natural Language Processing),自動探索、分類和保護 AWS 中的敏感資料

  • 可辨識個人識別資訊(PII, Personal Identification Information) 或智慧財產等敏感資料

  • 很適合與 PCI-DSS 標準進行整合,並用來防止 ID 被盜取的問題

  • 也可用來分析 CloudTrail log 來發現可疑的 API 存取行為

References

S3

Snowball

Snowmobile

Storage Gateway

Athena & Macie