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