技術趨勢更迭飛快,為保持數字化活力,業務開發者的思維也要隨之改變。過去,企業言必稱「雲計算」,話題主角是計算、雲、機器、資源;今天,人們頻頻提及「雲原生」,講的是在雲上原生出來的業務、應用和系統。因此,雲原生是服務於業務的,例如餓了麼。把技術選型權歸還給業務技術團隊,重新思考業務系統該怎麼架構,才是看待雲原生的正確姿勢。
十年雲原生之路,阿里巴巴經濟體擁有足夠複雜的業務場景和業務寬度,證明了雲原生的可行性,已經進入大規模落地的成熟期。因此,阿里雲將蓬勃繁榮的技術生態用PaaS形態封裝產品化,成為開放、標準的公共資源,將自身豐富和寶貴的實踐經驗、理念、技術、思想貢獻出來,幫助企業應用從“移民”升級為“原住民”,使企業業務實現持續創新智能化。
2020 年 7 月 30 日至 8 月 1 日,由 Cloud Native Computing Foundation (CNCF) 主辦的雲原生技術大會 Cloud Native + Open Source Virtual Summit China 2020 首次於線上召開,阿里巴巴在大會上為全球企業和開發者分享了 27 場實踐經驗、行業趨勢和技術演講,我們篩選了其中 13 場有代表性的演講重新編排成書,旨在將阿里巴巴雲原生之路上寶貴的經驗、理念和思想,提供給廣大正在或準備踏上雲原生之旅的開發者一些切實有用的參考。
也可以PC端點擊https://developer.aliyun.com/topic/download?id=835 下載
為什麼要讀這本書?
本書整合阿里巴巴在KubeCon 2020峰會上經典演講,分析真實的技術案例,發現問題,理清思路,解決問題,總結方法,把自我成長和專業精進的技術養料,回饋給廣大雲原生開發者。本書包含 3 個系列,阿里雲原生實踐,阿里新技術方案及阿里開源貢獻,共 13 篇文章。每篇文章都凝結著阿里巴巴雲原生落地實踐的寶貴經驗和麵對困惑的解決方法,相信能夠在最短的時間內,幫助你全面瞭解阿里巴巴雲原生實踐經驗,踏上最適合自己的雲原生之路。
書中精彩乾貨集錦
1、雲原生 - 數字經濟技術創新基石
作者
阿里雲容器服務負責人 易立
簡介
2020 年疫情席捲全球,雲原生計算在各個領域幫助企業與政府組織和疫情賽跑。阿里雲通過彈性算力和數據服務助力疫情防控和復工復產,也幫助企業通過數字經濟共克時艱。可以見到,實體經濟與數字經濟的融合發展已經成大勢所趨。本文將介紹阿里雲提供通過開源雲原生技術與開放雲原生產品,幫助企業提升應變能力,擁抱數字經濟發展的新機遇。
2、 Kubernetes + OAM :讓開發者更簡單
作者
阿里雲容器平臺資深技術專家 李響
簡介
如何提升 Kubernetes 的用戶體驗、降低 Kubernetes 的使用門檻和複雜度,已經成為了雲原生社區最亟待解決的一道難題。 本文將基於阿里巴巴大規模的 Kubernetes 集群中的真實案例,分享我們如何使用開放應用程序模型(OAM)構建出了具有互操作性和可重用性的標準化應用管理平臺,最終有效的打破了應用管理層中的“孤島”,在大大節約了人力成本的同時,為用戶帶來更好的使用體驗。
3、 Alluxio 助力 Kubernetes,加速雲端深度學習
作者
阿里雲高級技術專家 車漾
Alluxio 創始成員,開源社區副總裁 範斌
簡介
採用公有云+Kubernetes使得算力的擴展非常簡單和高效,但由於雲上計算和存儲分離給數據密集型應用帶來了新的挑戰。從雲上訪問對象存儲或本地HDFS都有很大的延時,這反而拖慢了雲上的大規模數據運算。其中一個重要原因是傳統大數據場景最常用數據本地性優勢,已經不復存在。
Alluxio用緩存的方式,將數據帶到計算端,通過更好的數據本地性提升計算效率。但是如何將Alluxio和Kubernetes相結合,加速雲上的大規模機器學習和在線數據分析,依然需要很多的探索。本文將分享我們在Kubernetes上通過Alluxio加速機器學習場景的實踐,以及我們未來的規劃。
4、 在大規模Kubernetes集群上實現高SLO的方法
作者
螞蟻金服技術專家 姚菁華
螞蟻金服高級開發工程師 範康
簡介
隨著 Kubernetes 集群的規模和複雜性的增加,集群越來越難以保證高效率,低延遲的交付pod。本文將介紹以下重點:
• 分享螞蟻金服在設計 SLO 架構和實現高服務水平目標的方法和經驗;
• 如何引入適當的指標來衡量Kubernetes集群是否健康;
• 如何設計實現分析平臺來採集計算有效的衡量指標
• 如何設計實現分析平臺以提供便捷的pod交付鏈路診斷信息
• 展示如何將人工經驗沉澱到自愈系統,以自動化修復已知問題
5、 Knative Serverless 架構分析
作者
阿里雲技術專家 牛秋霖(冬島)
簡介
各種調查報告顯示企業及開發者使用 Serverless 構建線上服務的比例不斷增加,在此趨勢下,深入探究Serverless 架構成為必修課。Serverless 應用需要的是面向應用的管理動作,比如應用託管、升級、回滾、灰度發佈、流量管理以及彈性等功能。而 Kubernetes 提供的是 IaaS 的使用抽象。所以 Kubernetes 和 Serverless 應用之間少了一層應用編排的抽象。 Knative 正是建立在 Kubernetes 之上的 Serverless 應用編排框架,本文將深入淺出為大家解析該架構。
6、 託管式服務網格:多種類型計算服務統一管理的基礎設施
作者
阿里雲高級技術專家,服務網格ASM技術負責人 王夕寧
簡介
服務網格是一種用於將應用服務之間通信管理從其業務邏輯中抽象出來的基礎設施層,可提供應用程序級網絡管理。作為統一的應用通信基礎設施,服務網格ASM具備統一的柔性架構,可以支持多種類型的計算基礎設施上的工作負載,無論這些服務是運行在阿里雲Kubernetes服務還是用戶自建IDC中的Kubernetes集群上之上。此外,許多客戶正在將其應用程序從舊系統遷移到雲中。網格擴展在此其中扮演著重要的角色,它將 Kubernetes 服務和其他在虛擬機或物理機上運行的服務集成到服務網格中。本文將討論服務網格技術如何提供此類功能。在這裡,您可以瞭解到如何輕鬆地將一個Kubernetes集群添加到網格中、以及如何進行統一的流量管理、統一的服務安全管理。並在最後提出了一種基於WebAssembly技術的統一擴展方式。
- 雲原生應用通信基礎架構
- 服務網格ASM的柔性架構
- 統一的流量管理
- 統一的服務安全管理
- 基於WebAssembly的統一擴展方式
7、 KubeNode:阿里巴巴雲原生容器基礎設施運維實踐
作者
阿里雲技術專家 周濤
簡介
阿里巴巴經濟體規模巨大,資源池機器規模幾十萬臺,基於kubernetes架構,我們構建了一套雲原生化的節點運維技術架構 KubeNode,實現了從節點創建導入、節點組件和內核升級部署、節點自愈、節點度量等全生命週期的運維能力,本文將分享如何通過建設面向終態架構,實現節點不可變基礎設施,大幅提升自動運維的效率,並保證基礎環境高度的一致性和穩定性。
8、 一種基於硬多租的大數據Serverless解決方案
作者
阿里雲開發工程師 莊清惠
阿里雲技術專家 鬍子千
簡介
隨著 kubernetes 的不斷成熟,大數據向 kubernetes 遷移已經成為了一種趨勢。由於大數據應用本身的複雜性,目前大數據 on kubenetes 通常採用 operator + crd 的方式,以獨佔集群的視角來管理計算任務。獨佔集群的任務管理模式使得在構建 Saas 服務時,大數據應用對 kubenetes 集群的隔離要求與 kubenetes 集群的利用率成為了難以調和的矛盾。
為了解決這些問題,我們設計了一種新的多租戶 kubernetes 架構。該基礎架構基於virtualcluster技術(已開源)來實現控制平面隔離,基於kata 安全容器、雲存儲技術以及一種新的多租戶網絡技術來實現數據平面隔離。本文將分享的要點如下:
• 阿里雲實時計算服務在 Serverless 領域的最新實踐成果,如何結合 virtualcluster 和 多租網絡技術提供更有競爭力的解決方案
• virtualcluster如何實現完整的kubernetes控制面多租和集群利用率提升
• 在基於雲環境的vpc網絡和安全容器基礎上如何構建多租kubernetes的服務發現能力
9、 Kubernetes 異常配置檢測的 DSL 框架
作者
阿里雲容器服務技術專家 鄧雋
阿里雲容器服務開發工程師 顧靜
簡介
隨著 Kubernetes 社區的不斷演進,新功能層出不窮,集群升級成為很多客戶都要面臨的問題。如何提供穩定的集群升級功能成為各雲廠商十分棘手的問題。針對該問題,本文將介紹一種用於檢測 Kubernetes 異常配置的 DSL 框架,該框架功能特點如下:
• 可以通過添加或修改 DSL 來定製集群檢查而無需編碼;
• 可以根據需求自行組合需要檢查的配置項,同時也可指定配置項的檢查方式;
• 該DSL框架具有很強的通用性,適用於不同 Kubernetes 版本和不同的 Kubernetes 產品,也可用於多種集群檢查,如集群異常配置檢測,異常節點檢測,集群安全檢查,集群升級檢查,集群組件檢查等;
• DSL 框架由報告生成器和報告執行器組成,報告生成器允許用戶自由組合要檢測的配置,報告執行器根據用戶 DSL 中定義的檢查方式執行檢查;
• 該框架兼容各種數據源和數據採集方式,可以基於 OpenKruise 發佈檢測任務,也可以與 NPD 一起使用。
10、 Serverless Kubernetes-理想、現實和未來
作者
阿里雲高級技術專家 張維
簡介
Kubernetes已經廣泛應用於雲上應用部署,然而管理Kubernetes集群仍然充滿挑戰,需要關注集群創建、容量規劃、安全更新、性能調優等運維工作。新的“Serverless Kubernetes”或者“Nodeless Kubernetes”範式開始出現,消除了節點和集群管理的負擔,使運行雲上容器變得更加簡單、敏捷和充滿彈性,以讓用戶更加關注在應用本身而非底層基礎設施的管理。
1、介紹“Serverless Kubernetes”背後的一些技術,比如Virtual Kubelet、AWS EKS on Fargate和Alibaba Cloud Serverless Kubernetes;
2、分享構建兼容可擴展的Serverless Kubernetes架構的經驗和細節,以及如何克服其中的一些技術挑戰;
3、對未來架構演進的思考。
11、 Serverless 場景下Pod創建效率優化
作者
阿里雲技術專家 張翼飛
簡介
Serverless 服務中「彈性」是個重要的特徵,「實例創建效率」會很大程度上影響彈性體驗,如何提升實例創建效率是個持續且重要的挑戰。
本文將基於在阿里雲 Serverless 產品中的實踐經驗,分享如何提升實例創建效率,要點如下:
- 基於 Kubernetes 的 Serverless 產品的技術實現概述
- 實例創建流程各個階段分析
- 介紹提升實例創建效率的解決方案
- 展望二級調度場景下實例創建效率的方案
12、 面向SLO的資源估計調度以優化利用率
作者
阿里雲技術專家 餘英豪
阿里雲技術專家 王雙
簡介
越來越多的企業級應用正通過上雲解放生產力。如何支持不同類型負載的差異化 SLO,同時保證高效的資源利用,是 Kubernetes 生態體系這一事實上的雲上操作系統面臨的一大挑戰。本文將分享在阿里巴巴的生產集群中混部電商和機器學習作業等業務的實戰經驗,並總結關鍵的能力增強:包括
• 上報集群實時和預估資源水位的數據鏈路;
• 基於SLO差異化的動態超賣調度來充分利用”已分配但尚未使用“的資源;
最後,分享整個SLO差異化調度體系帶來的降本增效收益。
13、 Dragonfly:在雲原生高效、安全的進行鏡像分發
作者
阿里雲開發工程師 劉裕惺
阿里雲高級開發工程師 傅偉
簡介
如何高效、安全地分發鏡像成為雲原生時代企業面臨的新挑戰。Dragonfly 是一個基於 P2P 的智能容器鏡像分發系統,它為雲原生場景提供了一個本地鏡像分發解決方案。在本講座中,您可以瞭解 Dragonfly 是如何在數據中心快速交付鏡像,討論當前OCI鏡像規範的問題,深入到全新的鏡像服務框架。