AWS 打造容器服務體系,aws服務架構設計圖AWS 打造容器服務體系近年來,隨著云計算、大數據、物聯網、人工智能等技術的驅動,企業數字化轉型正在全球范圍內普及。轉型的浪潮正在重塑企業的業務戰略,根據IDC 2019年數據顯示,未來數年內企業或組織將會有超過50%的信息技術支出用于數字化轉型,外加上2020年新冠疫情的......
近年來,隨著云計算、大數據、物聯網、人工智能等技術的驅動,企業數字化轉型正在全球范圍內普及。轉型的浪潮正在重塑企業的業務戰略,根據IDC 2019年數據顯示,未來數年內企業或組織將會有超過50%的信息技術支出用于數字化轉型,外加上2020年新冠疫情的影響,數字化轉型更將成為企業或組織的必經之路。
對于企業數字化轉型而言,應用就是生產力。原先如何落地實施數字化轉型始終考驗著企業或組織,而如今隨著數字業務靈活性的加速,新架構、集成技術和模式已經從前沿轉變為主流應用。對于開發者而言,由于企業或組織對于靈活、低成本、彈性伸縮的架構越發倚重,單體應用在面對新需求時已經顯得力不從心。
正因如此,微服務作為一種開發的基礎架構和組織方法,如今備受追捧。微服務架構具有敏捷、靈活擴展、輕松部署、技術自由、可重復使用的代碼、彈性的優勢。其實,微服務架構的概念本身并不是新事物,但為何始終沒能真正流行?歸根結底,是由于傳統的本地化部署使微服務落地變得較為復雜。隨著云計算的風靡,真正“解放了”微服務,更好的擴展性、伸縮性與可靠性讓微服務的普及成為了必然。
而提到云計算,Amazon當然是這個時代的開創者。眾所周知2006年 AWS正式上線了EC2、S3等核心產品,預示著云計算時代的開始。但鮮為人知的是,早在2001年AWS就已經開始了現代化應用架構的實踐。當時Amazon采用了一套成熟的架構“單體應用程序 +Oracle 數據庫”,但隨著電商平臺的繁榮,產品從上市到發布的時間成為了企業發展迫在眉睫的瓶頸。
AWS 的微服務實踐
Amazon提出了經典的Two pizza teams概念。Two pizza teams含義為兩塊披薩飯量的小組,代表著這個團隊足夠小,同時單個團隊僅負責相應的微服務,有充分的權限來進行相應產品的開發,并通過解耦來提升產品開發的敏捷性。而不同團隊間利用DevOps技術來構建一系列小型且靈活的應用團隊,進一步加快團隊對于產品的開發過程和節奏。
Two pizza teams將所有應用程序的API保持一致,并且擁有不同服務的所有權,這也就實現了面向服務的SOA架構,而它的本質同樣是微服務。隨著Amazon電商平臺逐漸轉向微服務,AWS將不同的代碼庫重構為小型的、集中的、單用途的服務,實現了單一的代碼庫重構為面向服務的體系架構。如今,在Amazon官網上已有上萬個微服務在支撐整個電商平臺的運行,并且每年的部署次數超過六千萬次。
可見AWS率先實踐微服務,讓其奠定了當今的電商與IT領域的行業地位。而微服務之所以能成為當下的主流架構,AWS認為,一方面,在云時代微服務滿足了開發者對于應用程序特定功能的開發需求,成為了現代化應用的最佳選擇;另一方面,容器為微服務提供了最理想的實現方式,幫助開發者實現了敏捷開發、持續集成與持續發布。
AWS建設容器服務體系
容器在應用交付的過程中有著先天的優勢。自2016年后隨著Docker熱潮的逐漸冷卻,容器技術逐漸進入下一階段:如何管理大規模的容器化部署、編排和管理。而如今,當初Swarm、Kubernetes以及Mesos三分天下的場景早已不在,Kubernetes遙遙領先坐穩了霸主地位。根據sysdig發布的2019年容器使用報告顯示,已有77%的用戶正在使用Kubernetes技術。
Kubernetes的大獲全勝,使得Kubernetes的實際應用不斷增多,其存在的IP分配、安全合規、使用場景等問題也層出不窮,自此各大云廠商將精力投入到Kubernetes平臺的研發當中,并不斷完善。與此同時,由于Kubernetes既可在本地運行,也可在云平臺運行,如何在兩種生產環境中來構建Kubernetes的應用,如何利用生產環境中的特性來幫助企業進行數字化轉型,也給各大云廠商提出了不小的挑戰。
Amazon作為領先的云廠商,積極擁抱容器化,圍繞容器服務打造產品體系。2015年,AWS率先推出了Amazon ECS全托管容器調度管理服務,其為AWS原生Docker容器解決方案。隨后,為了進一步支持開源的Kubernetes的發展,相繼推出了Amazon EKS與AWS Fargate。AWS的容器產品涵蓋從底層容器鏡像倉庫到上層應用網絡,支持容器化的全生命周期。
眾多的容器產品組合,可以為企業或組織量身定做在云端的容器服務和容器管理。首先最底層AWS提供Amazon ECR容器鏡像倉庫的服務;其次,容器可以運行在兩種位置上,其一在Amazon EC2虛擬機上構建容器服務,其二選擇AWS Fargate構建無服務器的容器服務;接著,在容器的管理層,AWS提供Amazon ECS和Amazon EKS兩種方式。最后,在最上層AWS支持不同的服務網格和服務發現,包括Amazon Cloud Map與AWS App Mesh。
EKS正在成為體系核
雖然AWS基于開源Kubernetes的容器服務起步較晚,但其發展速度卻是最快的,各國開發者對于AWS的容器服務認可度也是越來越高。根據Nucleus Research在2019年進行的調查顯示,82%的云端Kubernetes工作負載運行在AWS云服務之上。
AWS順勢而為,2020年3月13日,將Amazon EKS在寧夏西部云數據技術有限公司運營的AWS中國(寧夏)區域和北京光環新網科技股份有限公司運營的AWS中國(北京)區域正式商用,更好的為中國開發者提供Kubernetes平臺和應用程序的容器化的服務。
Amazon EKS從結構上來看,EKS平臺不僅僅是一項完全托管的Kubernetes服務,更像是AWS容器產品的集大成“者”。
第一,EKS集群可以選擇在Amazon EC2虛擬機上構建容器服務,或者使用AWS Fargate構建無服務器的容器服務。使用AWS Fargate時,開發者無需預置和管理服務器,可以保證每個應用程序按需付費,并通過設計隔離應用程序提高安全性。
第二,EKS與諸如Amazon CloudWatch、Auto Scaling組、AWS Identity and Access Management (IAM)和Amazon Virtual Private Cloud (VPC)之類的服務深度集成,為開發者帶來監控、擴展和負載平衡應用程序的無縫體驗。
第三,EKS與AWS App Mesh集成,并提供Kubernetes原生體驗,以使用服務網格功能并為應用程序帶來豐富的可觀察性、流量控制和安全功能。
Amazon EKS從設計理念上來看,Amazon EKS區別于其他Kubernetes服務,從設計之初便定位于企業級、完全托管的Kubernetes的解決方案,旨在幫助開發者在云端輕松運行Kubernetes。此外,EKS提供Kubernetes原生的體驗,始終保持和社區同步更新,并且積極將改進意見回饋給Kubernetes開源社區。
更多的,開發者使用Amazon EKS框架時,還將獲得:
·更全面的安全服務:Amazon EKS集成了AWS的安全服務,實施AWS安全責任共擔模式,并結合多項技術保證EKS服務的安全運行。例如:IAM進行身份和驗證的管理、CloudTrail進行Kubernetes日志的管理、ACM進行證書的管理、KMS進行密鑰的管理等。
·更簡便的管理方式:Amazon EKS可以幫助Kubernetes集群進行節點預配置和全生命周期管理。EKS負責來進行Amazon EC2節點的創建和管理,同時構建起自動伸縮的節點組Auto Scaling Group,并且同時執行健康檢查,減輕開發者在后端的管理壓力。
·更高可用性:Amazon EKS提供托管的控制平面,控制平面包含至少兩個API服務器的節點和跨三個可用區運行的三個etcd的節點,保證EKS Master Node的高可用構建。同時Amazon EKS會自動檢測并且替換掉狀況不佳的控制平面的實例,以消除單點故障。
Amazon EKS可以較好的滿足開發者對于現代化應用構建的需求。然而,不同于傳統的生產資源的集群管理工具,Kubernetes項目其最大的價值,乃在于它的API兼容能力和以此為基礎“控制器”模式。在這個體系的指導下,使得 Amazon EKS可以滿足豐富的支持工具。
·機器學習工具:Kubeflow是一套Kubernetes的機器學習工具,Amazon EKS可與Kubeflow進行整合,來構建深度學習平臺。需要強調的是, 在Amazon SageMaker中同樣也提供一系列Kubernetes的Operator相關工具,可方便開發者將EKS和Kubeflow、SageMaker進行無縫連通。更是有助于容器開發人員和機器學習開發人員,構建相關的機器學習容器化實踐。
·企業遷移:Amazon EKS提供一系列遷移的最佳實踐和方法,幫助開發者將基于Kubernetes的容器平臺向EKS進行遷移。對于企業或組織而言,集群遷移可以將工作委托給AWS處理,無需自行管理Kubernetes控制平面,有效的減輕企業的數字化轉型難度。
·數據分析平臺:在大數據領域,Amazon EKS可基于Spark構建數據分析平臺,利用Kubernetes原生模式來構建Spark數據分析平臺。另外,EKS還可利用R語言平臺,基于Shiny和EKS構建R應用平臺,幫助開發者進行數據分析應用的構建。
在落地實踐上,對于Amazon EKS來說同樣不成問題。一方面EKS保持了Kubernetes平臺的速度、穩定性、可擴展性以及與平臺的良好集成度,另一方面搭配AWS云服務的加持,使其在全球廣泛應用,包括金融、社交媒體、電子商務等。而如此龐大的用戶基數,也正是EKS得以不斷優化的關鍵。
AWS腳踏實地,遵循“優良的平臺架構是企業轉型升級的保證”的理念,深耕于企業的數字化轉型與應用現代化領域。隨著Amazon SageMaker、Amazon EKS等產品在中國區正式商用,AWS也希望通過技術的力量幫助更多的中國企業渡過難關,成功實現企業的現數字化轉型,加速新經濟的落地。
特別聲明:以上文章內容僅代表作者本人觀點,不代表ESG跨境電商觀點或立場。如有關于作品內容、版權或其它問題請于作品發表后的30日內與ESG跨境電商聯系。
二維碼加載中...
使用微信掃一掃登錄
使用賬號密碼登錄
平臺顧問
微信掃一掃
馬上聯系在線顧問
小程序
ESG跨境小程序
手機入駐更便捷
返回頂部