首屆雲上廣交會儲存服務架構與實踐
疫情壓力下,廣交會63年來首次整體搬上"雲端",首次整體搬上"雲端"的廣交會執行平穩,服務了217個國家和地區的採購商觀展。作為本屆廣交會的技術服務商,騰訊為廣交會網上舉辦提供整體技術支援、平臺研發服務與雲資源支撐。
其中,騰訊雲物件儲存COS,為本屆為期十天的廣交會,提供10*24小時不間斷的、高可靠的雲上儲存服務,服務了近2.6萬家參展企業透過圖文、影片、3D等形式的海量展品展示,支撐了180萬件商品和數千個直播間同時線上,滿足了以VR呈現產品展廳/企業全景等新型推介形式。
1、 騰訊雲物件儲存COS為首屆雲上廣交會設計的架構
1)COS無目錄層次結構、無資料格式限制、無容量上限
騰訊雲端儲存COS,是無目錄層次結構、無資料格式限制、無容量上限的雲上分散式儲存服務;很好滿足本次廣交會的圖文、影片、3D、VR等多種形式的海量展品/展廳/企業全景展示。
COS是物件儲存,基於物件Key來訪問物件,物件就是檔案,且不限定檔案格式,且檔案大小基本無限制,所以,COS能很好支援本次廣交會的圖文、影片、3D、VR等多種形式檔案。
COS基於扁平式架構來組織物件,沒有目錄層次結構的束縛,所以,檔案數量無上限,輕鬆擴充套件到10億+檔案,且效能基本沒有降低。對於檔案儲存是不可想象的,檔案儲存基於目錄樹來組織檔案,目錄深度(目錄深度,是指目錄樹的包含巢狀子目錄的層次的資料)和廣度(目錄廣度,目錄裡所包含檔案或子目錄的數量)都是有限制,而且隨著目錄深度和目錄廣度的攀升,效能將逐步降低,因為,每次IO請求,均要去目錄樹查詢到所要訪問的檔案,查詢所需時間跟目錄深度和目錄廣度呈線性關係,再疊加目錄樹的修改、多節點併發修改,將會更加糟糕。COS扁平式架構,完美解決目錄樹耗時查詢和併發修改等問題,實現容量無上限。
COS容量無上限,解決儲存最普遍的痛點,擴容。正因為擴容的苦楚,每次使用儲存之前,精確做容量規劃,來避免後續擴容煩惱。但像廣交會這樣的活動,提前是很難估計容量需求,特別是第一次線上廣交會,更是沒有歷史資料供參考。COS容量無上限正好解決此痛點。
2)COS多AZ架構
為保障"雲端"廣交會的10*24小時不間斷執行,騰訊雲物件儲存 COS 預設提供99.95%的可用性和99.999999999%(11個9)的資料持久度。
為進一步提升資料可用性和安全度,COS提供多AZ儲存架構;一個可用區AZ(Availability zone) 指的是一個騰訊雲中的資料中心的地理區域,騰訊雲不同可用區之間完全隔離,保證不同可用區間最大程度的穩定性和容錯性。可用區具有冗餘電源、聯網和連線。騰訊雲在一個地域提供多個可用區,可用區之間透過高頻寬、低延遲網路與完全冗餘的專用城域光纖互連。
COS多AZ高可靠架構,將資料打散到同一個地域的不同可用區,為使用者資料提供了資料中心級別的容災能力,將使用者資料分散儲存在同城中的不同機房,當某個機房因為自然災害、斷電等極端情況整體故障時,依然提供穩定可靠的儲存服務,將可用性提升到99.995%,資料持久度提升到12個9。
多AZ架構,採用糾刪碼冗餘儲存技術。以3AZ為例,採用9+9糾刪碼冗餘儲存技術,客戶原始資料寫入時會被切成9個數據塊,同時生成9個校驗資訊塊,打散成3份儲存在不同的可用區機房內,每個機房儲存6個數據塊,各個機房間資料保持一致。當某個機房發生極端情況時,客戶可以從其餘的12份資料塊中正常讀取資料,不會出現業務中斷或者資料丟失的情況;滿足客戶對資料高可靠、業務高可用的需求。
多AZ架構,實現了雲上同城雙活、同城多活的服務品質,滿足資料中心級高可用訴求,容忍同城(同地域)任意一個或多個數據中心故障,保持業務高可用,資料不丟失、業務不中斷。整個故障切換過程使用者無感知、業務不中斷、資料不丟失。可滿足關鍵業務系統對於RPO=0、RTO=0的極致要求。
在多AZ架構上,提供了高達6萬QPS高效能(高出業界3~6倍),在保障高可靠儲存服務的同時,提供大併發高效能服務能力;很好滿足廣交會這樣大型活動的穩定執行需求。
3)COS跨地域複製
本次"雲端"廣交會,為了進一步保障萬無一失,啟用騰訊雲端儲存COS跨地域高可用方案,做為應急預案,一旦某地域不可用,或鏈路不可達,立即切換到另一個地域,業務平滑切換另一個地域的COS,整個切換自動完成,業務無感知,保障業務連續性。地域,是公有云概念,是指物理資料中心的地理區域,騰訊雲不同地域之間完全隔離,保證不同地域間最大程度的穩定性和容錯性。騰訊雲COS已在全球30+地域開服,跨地域高可用,能容忍地震、海嘯、洪水等極端自然災害。
COS跨地域高可用方案架構如下圖所示,本次"雲端"廣交會的圖片/影片等資料,寫入地域A的主儲存桶A,透過COS跨地域複製功能,基於騰訊雲內網,快速、自動同步給地域B的備儲存桶B;每次同步增量資料,即保障主儲存桶與備儲存桶的資料一致,又節省傳輸頻寬,節省主儲存同步資料的負擔。
本次"雲端"廣交會的訪客,瀏覽展品圖文影片展示,透過網際網路HTTPS/HTTP協議讀取COS,預設訪問主地域的主儲存桶。一旦主地域不可訪問,主動訪問備地域的備儲存桶,由於,被儲存桶資料與主儲存桶一樣,所以,能訪問到與主儲存桶一樣的資料。本次"雲端"廣交會啟用騰訊雲COS + CDN 一體化方案,將主地域的主儲存桶設定為CDN的主源站,備地域的備儲存桶設定為CDN的備源站,CDN依次去主源站、備源站拉取資料,若CDN快取未命中,去主源站A儲存桶讀資料,假設A儲存桶鏈路不通,CDN去備源站B儲存桶讀資料,平滑實現主切備,自動完成主切備的全過程,對使用者完全透明。
COS跨地域複製,可在不同儲存區域的儲存桶中自動、非同步地複製增量物件。可實現跨地域級別的容災、就近訪問提高可用性。COS 跨地域複製功能豐富,支援雙向複製,以及一對多複製。
客戶對檔案產生的所有增量操作,包括刪除檔案操作(開啟多版本的情況下刪除檔案操作實際上是建立一個 0 位元組的特殊 delete marker 檔案)都會經由源桶通知 costrsf 模組,任務入 CMQ 佇列成功之後則返回成功,後續由 costrsf 模組非同步的同步檔案到目的儲存桶,所有的元資訊以及訪問控制資訊 ACL 都會原封不動的同步到目的端,目的端檔案的版本號會和原始檔的版本號也保持一致。原始檔會維持一個 x-cos-replication-status 欄位來儲存跨地域複製任務的狀態,客戶可以透過 HEAD Object 介面來查詢檔案的複製狀態。
COS多AZ架構和跨地域複製,在本地地域實現多資料中心多活,在其他地域再儲存複製資料,已容忍整體地域不可用情況下的資料安全和業務連續性。多AZ架構,保障本地域任意資料中心不可用的業務高可用,資料立即同步,業務及時切換,RPO=0、RTO=0。跨地域複製,保障任意地域不可用的業務連續性,非同步複製資料,RPO大於0。相比使用者自建兩地三中心,COS實現了多地多中心,COS多AZ架構實現本地域多個數據中心高可用,COS跨地域複製實現跨地域容災,可靠性更高、靈活性更大;並能在一鍵式開通、按需使用、按用量計費,節省使用者寶貴時間、砍掉建設費用、節省使用費用、省去維護費用。
4)COS全球加速
本次"雲端"廣交會,服務全球客戶,正好是COS全球加速典型場景。
COS全球加速,讓全球使用者加速訪問COS,利用全球分佈的雲機房,幫助全球各地使用者快速訪問最近的騰訊雲接入層,提升業務訪問成功率和穩定性。使用全球加速功能就近接入之後,客戶端到接入層的"加速"實際上是,由穩定快速的內網專線網路傳輸鏈路,來代替外網不穩定的跨國或跨地域的訪問鏈路。
開啟了全球加速後,使用者上傳圖片的請求鏈路則發生了變化,請求將由騰訊雲智慧排程,如下圖所示,就近接入到廣州接入層,走騰訊雲內網專線傳輸至北京儲存層落盤。穩定快速的內網專線網路傳輸鏈路代替了不穩定的跨地域的訪問鏈路,因此請求的可用性和速率都能得到提升。
四、結語
騰訊雲COS為首屆"雲端"廣交會保駕護航,支撐10*24小時不間斷平穩執行,為雲上會展提供新方案、新範例。