1. 程式人生 > >Amazon S3跨區域複製功能火熱出爐

Amazon S3跨區域複製功能火熱出爐

    九年前的3月14日,亞馬遜AWS正式推出AmazonSimple Storage Service,也就是大家通常稱作S3的第一個AWS雲服務。九年後S3如虎添翼,正式推出了全新的S3跨區域複製( S3 Cross-Region Replication)功能。

    九年以來,AWS已經將S3部屬推廣至全球所有區域,為S3添加了數十項新的功能,同時多次下調了S3儲存及頻寬的價格。這期間我們看到全球的各行各業的客戶將關鍵的聯網和業務資料交由S3打理,並通過成千上萬種獨特且極具創意的方式使用了S3,極大豐富了網際網路資料和應用的世界。

    儘管S3儲存桶實現了全球統一命名,但S3(正如其它一些AWS服務一樣)仍然部屬執行在各個AWS區域當中。這一模式允許使用者對各自的資料所處位置進行全面精確的控制,即如果沒有客戶的操作S3資料只會保留在特定的區域內。使用者可以根據多種因素為資料選擇具體儲存區域,包括遵從當地法規合規要求、出於延遲考量而將資料安置在與主要客戶相近的地區、或者基於其它的理由。

    但是,很多客戶向AWS反映需要在多個區域同時部屬資料,或者為關鍵性資料在遠端異地備份,也就是在多個AWS區域對S3資料進行復制部屬。

跨區域複製

    為了幫助客戶更輕鬆地將S3物件副本複製儲存到其它AWS區域當中,AWS於3月24日正式推出了S3跨區域複製( S3 Cross-RegionReplication)功能。使用者可以利用這項功能滿足前面提到的各項需求,包括跨區域多副本儲存以及把資料部屬在與客戶較接近的位置。

    當客戶啟用這項功能之後,每一個被上傳至特定S3儲存桶的物件都會以自動方式複製到位於不同AWS區域內的指定儲存桶當中。只需要幾分鐘,使用者就能啟用該功能並著手使用!它構建於S3現有版本Visioning設施的基礎之上,客戶可以通過控制檯在必要時開啟這項功能:

    當版本控制功能啟用後,使用者直接點選啟用跨區域複製功能。然後使用者只需選擇指定區域及儲存桶(此外還提供其它可選專案,包括利用字首將複製操作限定在特定儲存桶中的特定物件鍵),設定一個IAM角色,到這裡準備工作就全部完成了。


    使用者可以選擇一個現有儲存桶,或者在這一步中建立一個新的儲存桶:


    使用者還需要設定一個IAM角色,這樣S3就能夠列出並檢索該源儲存桶內的全部物件,並向目標儲存桶進行副本複製操作。由於大家能夠對Policy策略檔案進行控制,因此各位能夠輕鬆實現各類高階場景應用,例如在歸屬於不同AWS賬戶的多個儲存桶之間進行資料複製。控制檯將提供一套預設策略,從而幫助大家設定出合適的IAM角色:


    一旦複製流程全部設定完畢,接下來要做的就是檢查目標儲存桶。不出所料,目標儲存桶中此刻空無一物(複製將針對新建立的物件進行):


    可以試著上傳一幅圖片,並選定Reduced RedundancyStorage(即減少冗餘儲存,簡稱RRS)以及使用AWSS3主金鑰的Server Side Encryption(即伺服器端加密,簡稱SSE):


    接下來重新整理目標儲存桶檢視,而所存物件如預期般出現在了其中。接下來,使用者可以注意到該副本確實使用了RRS與SSE機制:


    整個複製流程同樣也會複製全部與物件相關的元資料與ACL(即訪問控制列表,AccessControl List)。

    除了使用控制檯,使用者當然也可以通過S3 API啟用並管理S3跨區域複製功能。


 根據我們的測試結果,S3跨區域複製功能將使美國金融業監管局以更具自動化特性、即時性以及成本效益的方式傳輸大量資料。這項新功能的出臺無疑幫助我們滿足了彈性、合規性以及災難恢復等資料保護要求。

-美國金融業監管局高階主管PeterBoyle

相關細節

當大家計劃在自己的作業系統當中使用跨區域複製功能時,還有幾點事項需要多加留意。

版本控制 – 正如在前文中所提到,使用者必須首先為源儲存桶與目標儲存桶啟用S3版本控制機制。

生命週期規則 – 使用者可以選擇在目標儲存桶上使用生命週期規則對舊有資料版本進行管理,包括將其刪除或者將其遷移至AmazonGlacier。

檢測複製狀態 – 使用者可以自行(或者利用程式碼)通過HEAD操作在源物件上檢測其複製狀態,也可以(如上所示)在控制檯中檢視這一狀態。

區域到區域 – 複製流程必須發生在兩個AWS區域之間。無法利用這項功能在兩個處於同一區域內的儲存桶之間進行內容複製。

新物件 – 由於這項功能會監測源儲存桶的內容變更情況,因此其只會複製新物件以及複製現有物件當中的內容變更。如果大家需要對現有物件進行復制,則可以利用S3COPY操作建立解決方案,從而保證目標儲存桶內的內容得以更新。

使用者欲瞭解更多細節資訊,請點選此處閱讀S3開發者指南中關於跨區域複製功能的說明。

現已上線

S3跨區域複製這項功能目前已經正式上線,今天就可以開始使用了。使用該功能時,除了目標儲存桶內資料所佔容量產生新的費用之外,使用者還需要為不同區域之間產生的資料傳輸量按AWS常規價格支付資料傳輸費。欲瞭解更多細節資訊,請點選此處參考S3定價頁面。