邁入全面“云原生”時代,云服務發(fā)明者提供應用構建到數(shù)據(jù)挖掘的全面服務
“云原生”一詞最初來自Matt Stine在2013年寫的一本書——《Migrating to Cloud-Native Application Architectures》,書名中的Cloud-Native即是“云原生”的由來。
但云原生并不是一種從零出發(fā)的創(chuàng)新技術,而是由云服務的發(fā)展而來。從2006年亞馬遜云科技推出Amazon S3和Amazon EC2服務以來,云服務隨著客戶業(yè)務的需求不斷發(fā)展。到2013年云原生的概念提出,到現(xiàn)在2022年,我們認為云原生的時代已經到來。
云服務從一開始的定義就是一種服務,既然是服務就是圍繞著客戶的業(yè)務需求為中心的。同樣的云原生也不是為了云原生而去云原生,要邁入云原生的背后原因還是客戶業(yè)務的發(fā)展需求使然。例如,亞馬遜云科技上構建的90%的服務都是基于客戶的需求,其他10%的創(chuàng)新則是為客戶進行發(fā)明創(chuàng)造的服務,這即是云服務商貫穿始終的服務創(chuàng)新理念。
云原生是2022年亞馬遜云科技中國峰會上最多被提到的詞之一,這也是云服務發(fā)明之后的又一次重要的發(fā)展進程。從數(shù)據(jù)中心原生、到云好奇、云友好,一直到現(xiàn)在的云原生,客戶的既存業(yè)務經過了遷移和改造階段。而現(xiàn)在要構建一個新的行業(yè)應用或者應用轉型,云原生是最佳的選擇,也是具有長遠的發(fā)展價值的必然選擇。
本文根據(jù)剛剛結束的2022年亞馬遜云科技中國峰會上的精彩分享,從云原生應用構建、云原生數(shù)據(jù)挖掘、云原生背后關鍵技術三個角度來展示亞馬遜云科技的云原生服務全貌。
云原生應用構建:不止是會用云服務工具,要實現(xiàn)DevOps流程改造
“云原生應用架構的關鍵在于需要充分運用更高級別的云服務,來實現(xiàn)開發(fā)人員工作效率、業(yè)務敏捷性、資源利用率等提升。”亞馬遜云科技大中華區(qū)戰(zhàn)略業(yè)務發(fā)展部總經理顧凡分享到。而這些高級別的云服務,正是亞馬遜云科技在過去的16年間,持續(xù)不斷地創(chuàng)新的結果,讓云服務全面邁向Serverless。
據(jù)亞馬遜云科技全球副總裁、大中華區(qū)執(zhí)行董事張文翊分享,Amazon DynamoDB、Amazon Lambda、Amazon Fargate等一些列的云服務都堪稱“改變游戲規(guī)則的創(chuàng)新”?,F(xiàn)在亞馬遜云科技的Serverless計算及容器服務多達9個;數(shù)據(jù)庫服務多達6個;數(shù)據(jù)分析多達7個。
從客戶的角度而言,要構建云原生的應用,僅僅有這些顛覆性的云服務工具用起來是不夠的,還需要改造其開發(fā)流程和運營模式。亞馬遜云科技總結了一套從應用邁向云原生之旅的經驗,包括構建、治理和迭代三個階段、九個步驟,在每個步驟亞馬遜云科技都有相應的云服務、最佳實踐去賦能亞馬遜云科技的用戶。
構建包括三個步驟:
第一步,構建彈性應用架構,用Amazon EKS將應用做容器化改造,對單體應用做微服務拆解,去用好Amazon EKS 用好Amazon Lambda,去搭建一個彈性應用的架構。第二步,一切皆代碼。通過CDK去實現(xiàn)基礎設施即代碼,把云中的資源管理自動化,去提升運維效率。第三步,持續(xù)交付。利用Amazon Code Pipeline去搭建一個自動化發(fā)布的流水線,用App Mesh去控制應用自動交付的網(wǎng)絡流量,保證新功能安全穩(wěn)妥的發(fā)布。
治理同樣包含三個步驟:第一步,可觀測性是治理微服務的關鍵。采用亞馬遜云科技托管的Amazon Prometheus服務,配合ADOT可以全面監(jiān)控系統(tǒng)的運行狀況。第二步,選擇云原生數(shù)據(jù)庫,當把一個單體應用拆分為多個微服務的時候,為微服務選擇最適合的云原生數(shù)據(jù)庫,讓整個應用的整體架構做到彈性和敏捷。第三步,Amazon DevSecOps,安全團隊和開發(fā)和運營團隊一定要集成,避免安全成為流水線中的一個瓶頸,可以用Amazon Inspector持續(xù)掃描軟件的漏洞。
在迭代階段也包含三個步驟:第一步,持續(xù)部署,在代碼自動進入到生產環(huán)境之前,去用亞馬遜云科技 FIS去運行一個故障注入實驗,能夠更好地改進應用程序的性能。第二步,一切皆服務,將平臺級的一些服務(像數(shù)據(jù)庫 消息傳遞總線、API網(wǎng)關等)公開為一個共享服務,供其他人使用,用Amazon EKS Blueprints去構建一個基于Amazon EKS的共享服務平臺。第三步,持續(xù)迭代、運維,利用亞馬遜云科技Well-Architected Tool不斷地去改進系統(tǒng)結構。
云原生數(shù)據(jù)戰(zhàn)略:解決“數(shù)” “智”結合挑戰(zhàn)
IDC預測僅在2022年,人類就將創(chuàng)建超過97ZB的數(shù)據(jù);歷史上到2012年為止人類生產的所有印刷材料的數(shù)據(jù)量僅為200PB;僅僅是2022這一年人類所創(chuàng)建的數(shù)據(jù)量的50萬分之一。
如果將數(shù)據(jù)保存在1TB的硬盤上面,100PB的硬盤連著擺放起來,約等于2000米,也就是一畝農田的一個周長。而存放97ZB數(shù)據(jù)量的硬盤連著擺放起來,是地球與月球距離的2.5倍。所以說從200PB到97ZB是從“一畝農田”到“星辰大?!钡木嚯x。
然而數(shù)據(jù)量的增加并不等于數(shù)據(jù)價值的增加,埃森哲最近的一個調研發(fā)現(xiàn) ,有68%的組織認為他們仍無法獲取數(shù)據(jù)帶來的價值。
成為數(shù)據(jù)驅動型企業(yè)并不容易,構建數(shù)據(jù)驅動型組織面臨著諸多挑戰(zhàn)。譬如:企業(yè)沒有一個明確的數(shù)據(jù)戰(zhàn)略;高速增長的數(shù)據(jù)帶來了高昂的數(shù)據(jù)存儲和分析成本;企業(yè)難以找到發(fā)揮數(shù)據(jù)價值的場景;在數(shù)據(jù)治理、監(jiān)管過程中保證數(shù)據(jù)安全等等。
在亞馬遜云科技中國峰會首日的主題演講中,張文翊分享的六大云技術趨勢中,其中一條即“打破傳統(tǒng)的數(shù)據(jù)管理局限,數(shù)據(jù)庫走入云原生時代”。而顧凡也分享了亞馬遜云科技的云原生數(shù)據(jù)戰(zhàn)略——“三個支柱和一個基石”,如何幫助客戶通過數(shù)據(jù)驅動智能創(chuàng)新。
云原生數(shù)據(jù)戰(zhàn)略第一個支柱就是要采用原生數(shù)據(jù)基礎設施來存儲和處理數(shù)據(jù)。
在2004年12月,由于關系數(shù)據(jù)庫Oracle無法支持亞馬遜云科技快速增長的業(yè)務規(guī)模,因此亞馬遜電商網(wǎng)站在高峰期出現(xiàn)了幾個小時的中斷,這讓亞馬遜的工程師重新去思考,應該如何去設計底層的數(shù)據(jù)存儲,從而研發(fā)出了非關系型的數(shù)據(jù)庫Dynamo。隨后在2012年,也就是10年前,Amazon DynamoDB服務進而正式發(fā)布。
現(xiàn)在Amazon DynamoDB已經廣為應用,亞馬遜云科技一直在不斷完善不同類型的數(shù)據(jù)庫和分析服務。為了讓客戶快速實現(xiàn)傳統(tǒng)數(shù)據(jù)庫向Amazon DynamoDB的遷移,亞馬遜云科技推出了Amazon Babelfish工具,讓傳統(tǒng)數(shù)據(jù)庫的應用代碼盡量不改就可以直接運行在Amazon Aurora上,將遷移的時間從數(shù)月、數(shù)年減少到幾周。
Amazon Aurora專為云平臺打造,是用戶數(shù)量增速最快的云服務之一,與MySQL及PostgreSQL全面兼容,吞吐量是標準MySQL的5倍、標準PostgreSQL的3倍,成本卻只有傳統(tǒng)數(shù)據(jù)庫的十分之一。從Amazon Aurora Severless V1、 V2再到去年re:Invent發(fā)布的Amazon Redshift/Amazon EMR/Amazon MSK的Serverless版本,客戶采用Serverless的數(shù)據(jù)庫和分析服務更容易自動擴容,成本更加地靈活。
云原生數(shù)據(jù)戰(zhàn)略的第二個支柱是智能湖倉2.0架構,在打破數(shù)據(jù)孤島,實現(xiàn)數(shù)據(jù)一體化融合分析的智能湖倉1.0的基礎上,進一步增強了數(shù)據(jù)分析和人工智能之間的聯(lián)動能力。
當前大數(shù)據(jù)和機器學習融合管理面臨著不小的挑戰(zhàn),因為企業(yè)的算法模型和數(shù)據(jù)通常是兩個團隊,所以當模型走向實際應用時,需要大量數(shù)據(jù)訓練時,算法團隊沒有很好的大規(guī)模數(shù)據(jù)處理的能力,有時候要花大量的精力才能搞明白如何去獲取和處理數(shù)據(jù)。
智能湖倉2.0就是解決客戶的數(shù)據(jù)和AI融合的挑戰(zhàn)。
首先,所有用來做數(shù)據(jù)預加工的數(shù)據(jù)分析服務現(xiàn)在都有了無服務器版本,可以讓工程師只專注于數(shù)據(jù)處理的代碼效率和質量。
其次,為大數(shù)據(jù)和算法團隊提供統(tǒng)一的數(shù)據(jù)治理底座,來解決兩邊在數(shù)據(jù)的發(fā)現(xiàn)和理解各自為戰(zhàn)的問題,比如通過Amazon Lake Formation再加上Amazon Glue Catalog,將各種分析引擎和Amazon SageMaker的數(shù)據(jù)目錄打通,同時提供唯一的數(shù)據(jù)檢索入口和統(tǒng)一的數(shù)據(jù)訪問授權。
第三,用好Amazon SageMaker Studio的新功能,讓算法團隊在一個統(tǒng)一的界面下可以訪問數(shù)據(jù)加工和模型開發(fā)調試的工具,讓算法團隊能夠充分利用大數(shù)據(jù)團隊,在數(shù)據(jù)處理方面已經取得的成果直接去用,避免重復造輪子。比如大數(shù)據(jù)團隊已經在Amazon EMR上開發(fā)好的Spark代碼,比如在某個數(shù)據(jù)集里面已經存在Amazon Redshift數(shù)倉里面,只需要在大數(shù)據(jù)團隊的代碼上加一句SQL做很小的轉換便可以供機器學習模型使用。
云原生數(shù)據(jù)戰(zhàn)略的第三大支柱是通過機器學習,重塑創(chuàng)新引擎。
第一步是幫助客戶找到合適的業(yè)務場景,例如通過個性化推薦提高轉化率、運用機器視覺進行身份驗證等。在第一步的基礎上,第二步就是要通過開箱即用的AI SaaS服務快速地去驗證機器學習是否能解決問題。亞馬遜云科技 AI SaaS模型覆蓋了文檔處理、機器視覺、聊天機器人、搜索、推薦、語音、呼叫中心等7個橫向領域,以及工業(yè)、醫(yī)療健康、代碼開發(fā)等3個垂直領域。
在第一步和第二步都完成之后,第三步就是要解決機器學習的產業(yè)化挑戰(zhàn)。亞馬遜云科技提供支持所有主流機器學習框架的基礎設施和豐富的加速器實例;通過Amazon SageMaker等工具降低機器學習開發(fā)難度,并且將機器學習開發(fā)的流程融入到Ops中, 實現(xiàn)端到端的機器學習自動化。
第四步就是在產業(yè)外,更高的層次上,賦能更多的人去構建機器學習的應用,通過高校合作、競賽、可視化工具等角度來實現(xiàn)機器學習的普及。
在以上云原生數(shù)據(jù)戰(zhàn)略的三個支柱下,離不開的是“安全”這個基石。要實現(xiàn)數(shù)據(jù)安全就要有有效的數(shù)據(jù)治理的手段。數(shù)據(jù)治理并不簡單是一個技術問題 ,更是一個人員流程和技術的組合。亞馬遜云科技提供全生命周期的數(shù)據(jù)治理結構,幫助客戶解決數(shù)據(jù)安全挑戰(zhàn)。例如通過Data Mesh數(shù)據(jù)網(wǎng)格,解決企業(yè)全球數(shù)據(jù)安全合規(guī)和支持本地創(chuàng)新兩者兼得的需求。
云原生背后的底層芯片技術:真正改變云服務游戲規(guī)則的能力
一系列云服務的背后,離不開關鍵的底層技術的支持。張文翊表示,亞馬遜云科技帶來的發(fā)生在底層的、實打實的創(chuàng)新是真正的顛覆性的創(chuàng)新,擁有改變游戲規(guī)則的能力。顧凡表示,亞馬遜云科技擁有計算的兩大創(chuàng)新引擎:Amazon Nitro系統(tǒng)和自研芯片,這是探索新一代云技術架構的關鍵技術。
Amazon Nitro作為亞馬遜云自研的底層核心系統(tǒng),已經在過去的近十年時間里發(fā)展到了第五代。Nitro系統(tǒng)將云計算資源底層的網(wǎng)絡、存儲、安全控制等功能,從服務器卸載到Amazon Nitro專用芯片上運行,服務器的計算資源能完全服務于客戶的工作負載。配合一個輕量級的Hypervisor,Nitro的虛擬化引擎所占用物理服務器的系統(tǒng)資源不到1%,幾乎可以忽略不計,而傳統(tǒng)虛擬化占用物理服務器的系統(tǒng)資源通常會高達30%。
從2017年開始,Amazon EC2新實例的研發(fā)速度大幅地提高,這都得益于Amazon Nitro系統(tǒng)的迭代升級。
自研芯片是亞馬遜云科技的另一個重要底層技術。得益于Annapurna實驗室的加持,亞馬遜云科技從2013年開始自研芯片,擁有完整的芯片產品布局:第一條線是剛剛提到的Amazon Nitro,第二條線是用于機器學習推理和訓練的芯片Amazon Inferentia和Amazon Trainium,第三條線是基于ARM架構的CPU Amazon Graviton。
2018年,亞馬遜云科技發(fā)布了第一款基于ARM的自研芯片Amazon Graviton,2019年發(fā)布Amazon Graviton2,去年發(fā)布最新一代的Amazon Graviton 3。Graviton2的性能比第一代Graviton提高了7倍;Graviton3比Graviton2的性能進一步提高多達25%,能耗卻降低了60%。Graviton持續(xù)的迭代,證明亞馬遜云科技已經步過了自研芯片的早期陡峭學習曲線。
對于云服務廠商而言,自研Arm芯片不是目的,目的是要有一系列能夠跑在之上的云服務。亞馬遜云科技已經有超過20多種基于Amazon Graviton 2的托管服務,用戶無需重編譯便可直接享受Amazon Graviton 2的高性價比和低功耗。
除了Graviton系列外,亞馬遜云科技自研了面向機器學習推理和訓練的加速芯片Amazon Inferentia和Amazon Trainium,將云端訓練和推理推向最極致的性價比:
Trn1實例:Amazon EC2實例支持多達16顆Amazon Trainium加速芯片,是在云端最快的深度學習實例,Trn1上運行的Hugging Face BERT大模型性能對比GPU的實例有42%提升,成本降低了54%;
Inf1實例:Alexa已經大規(guī)模的在使用Inf1,國內某社交媒體客戶將自己的計算機視覺(CV)和自然語言處理(NLP)等五個模型也部署到了Inf1上面,相比GPU的實例,吞吐量擴大3倍。而成本降低了60%。
基于Amazon Inferentia的Amazon EC2 Inf1 計算實例已在西云數(shù)據(jù)和光環(huán)新網(wǎng)運營的中國區(qū)域落地。
除了上述的自研芯片,賽靈思的FPGA、英偉達的GPU、英特爾Habana Gaudi和亞馬遜云科技自研的Amazon Trainium和Amazon Inferentia、四大廠商的各種加速卡,亞馬遜云科技加速計算的產品家族已經全面覆蓋。無論是CPU+GPU,CPU+FPGA,還是與量子計算機的異構,亞馬遜云科技都能夠提供相應的加速計算服務。
亞馬遜云科技構建了完整的量子計算生態(tài)環(huán)境,包括了亞馬遜云科技上的量子服務Amazon Braket,量子實驗室以及量子計算中心。Amazon Braket以API的形式讓客戶輕松訪問量子計算機和模擬器,方便用戶去構建模型的時候同時使用到經典計算和量子計算資源。
總結
云服務的真正目的是賦能行業(yè)客戶,實現(xiàn)應用創(chuàng)新。亞馬遜云科技是云服務的“探路者”,也是其它行業(yè)中“探路者”型企業(yè)的賦能者,為行業(yè)客戶提供行業(yè)特定的解決方案和跨行業(yè)通用的解決方案。不論是EV、自動駕駛、雙碳還是元宇宙,新的行業(yè)應用構建都從云原生開始,在云上發(fā)展。而傳統(tǒng)行業(yè)應用在轉型階段,邁入云原生也是必經之路。
亞馬遜云科技作為云服務的發(fā)明者,透過十多年的云服務技術積累,以及與客戶多年的密切合作,已經構建了完整的云原生的服務體系。在當下這個時間節(jié)點,借助亞馬遜云科技的完整云原生服務,云原生正在發(fā)生,并且將會以更高的成長速度發(fā)展。