開放下載 | 《Knative 雲原生應用開發指南》開啓雲原生時代 Serverless 之門

file

點擊下載《Knative 雲原生應用開發指南》

自 2018 年 Knative 項目開源後,就獲得了廣大開發者的密切關注。Knative 在 Kubernetes 之上提供了一套完整的應用 Serverless 編排服務,讓應用開發者能夠不用爲底層的基礎設施分心,把更多的精力投入到業務邏輯上。segmentfault

Knative 的一個很重要的目標就是制定雲原生、跨平臺的 Serverless 編排標準。它的優點在於:服務器

  • 基於 Kubernetes 實現 Serverless 編排;
  • 基於 Istio 實現服務的接入、服務路由的管理以及灰度發佈等功能。

今年 5 月份,咱們推出了 Knative 系列文章,由阿里雲容器平臺技術專家牛秋霖(冬島)及阿里雲容器平臺高級開發工程師李鵬(元毅)結合自身的實踐經驗,由淺入深的介紹了 Knative 的使用、剖析其內部實現。架構

爲了進一步方便你們理解 Knative,咱們整理了系列文章中的 25 篇重點內容編排成書《Knative 雲原生應用開發指南》,並開放分享給你們,但願可以幫助更多技術愛好者快速掌握 Knative 的應用 Serverless 編排技能,揭開 Knative 的神祕面紗。框架

爲何你要讀這本書?

對於開發者而言,本書可讓你快速掌握 Knative 的應用 Serverless 編排技能;對於管理者或決策者而言,能夠經過本書的介紹和案例深刻了解企業爲何須要應用的 Serverless 編排;如何對普通應用進行 Serverless 編排;應用編排和 IaaS 無服務器計算的關係以及爲何會是 Knative 等問題。less

本書主要分爲入門、進階和實戰三個部分。分佈式

  • 入門篇能夠幫助你快速掌握 Knative 的核心理念和關鍵設計,讓你對應用的雲原生編排應該具有什麼能力有一個清晰的認識;
  • 進階篇會對 Knative 各大核心模塊的高級功能進行更深刻的介紹,剖析 Knative 是如何構建在 Kubernetes 之上的;
  • 實戰篇給出了不少基於 Knative 的雲原生實戰,讓你對 Knative 的使用有一個更直觀的體感。

file
《Knative 雲原生應用開發指南》目錄微服務

在 All in Cloud 的時代,對雲的駕馭能力已經成爲企業的核心競爭力,雲正在重塑企業 IT 架構。每一個企業都在思考如何最大化利用「雲」的能力,最大化發揮「雲」的價值。而企業上雲的過程當中是要直接面對衆多的雲廠商和各類繁雜的雲產品,好比最基本的 IaaS 資源,一樣是 VM 在不一樣的雲廠商就有不一樣的特性、不一樣的 OpenAPI 和不一樣的建立與銷燬方式。ui

這給企業上雲帶來了巨大的複雜度,大大打擊了企業上雲的積極性。因此對於上雲的企業和提供雲服務的廠商而言都在摸索尋找一個折中的平衡點,既能幫助企業上雲,又能幫助雲廠商釋放雲的能力。阿里雲

雲原生理念的造成與完善

雲原生理念是在以上過程當中逐漸造成和完善的。這套理念是協調全部參與方對服務上雲逐漸造成的統一標準,它能夠很好地幫助企業上雲、幫助雲廠商釋放雲的能力。雲原生旨在以更標準化的方式銜接雲廠商和上雲企業:spa

  • 這種方式對於企業而言下降了上雲和跨雲的成本,讓企業始終保有和雲廠商議價的能力;
  • 對於雲廠商而言,由於企業跨雲遷移的成本低,因此只要能提供性價比更高的雲服務,就能很容易的彙集大量用戶。

雲原生是在不斷促進整個系統的良性循環:既能讓企業始終保有選擇的能力,又能讓優秀的雲廠商快速服務更多的客戶。若是客戶的業務服務能像水同樣低成本在不一樣雲廠商之間流動,那麼雲廠商提供的服務就能像貨幣同樣在客戶之間流通。這是一個多贏的局面。

Kubernetes 已經成爲分佈式資源調度和資源編排的事實標準,它屏蔽了底層基礎架構的差別,幫助應用輕鬆運行在不一樣的基礎設施之中。

目前雲原生生態已經在 Kubernetes 之上構建了大量的上層服務支撐框架。好比:服務網格 Istio、 Kubeflow 、各類上層服務的 Operator 等等。咱們能夠看到構建在 Kubernetes 之上的雲原生操做系統的雛形開始出現,這是開發者最好的時代,極大地提高了業務創新的速度。

無服務器(Serverless)的出現

隨着 Kubernetes 的普及,開發者已經不須要關心基礎設施,有了更多的精力放在業務的核心邏輯上,隨之而來的就是無服務器計算的出現。

無服務器首先是在 IaaS 層的變革,用戶無需提早準備冗餘的 IaaS 資源,只須要在使用的時候自動擴容不用的時候自動縮容。由於應用真正須要的是 IaaS 資源的按需分配按量計費,而不是長期保有 IaaS 資源。

無服務器這個詞是從 Serverless 翻譯過來的,其實 Serverless 除了基礎 IaaS 資源的按量分配之外還有一層就是對應用的 Serverless 編排。

Knative 出現的必然性

IaaS 資源能夠按需分配只是一個開始,當 IaaS 完成了 Serverless 進化之後,應用層應該如何作呢?好比:一個普通應用須要具有什麼能力才能按量使用 IaaS 資源呢?對應用進行 Serverless 編排是否能保證應用能夠很容易的在不一樣的雲廠商之間跨雲遷移?

Knative 就是應用 Serverless 編排的雲原生解決方案。

Knative 創建在 Kubernetes 和 Istio 之上,經過 Kubernetes 的跨雲能力可以讓企業應用原生具有跨雲遷移的能力。在多雲、混合雲以及雲邊端互通的時代,基於 Knative 的應用 Serverless 雲原生編排能力能夠極大下降企業上雲的成本。

雲原生時代,如何在雲上玩轉 Knative?

《Knative 雲原生應用開發指南》一書中共收錄了 8 篇具體的 Knative 開發實踐案例,給出了不少基於 Knative 的雲原生實戰,藉此講述瞭如何正確使用 Knative 中的 Build、Serving 以及 Eventing 三大組件來發揮其做用,逐漸精簡咱們的代碼;直觀地展現瞭如何使用 Knative 來一步步簡單高效地開發雲原生應用,讓你對經過  Knative 來實踐 Serverless 有一個更全面的體感。

期待《Knative 雲原生應用開發指南》可以幫助更多的開發者真正開啓雲原生時代的 Serverless 之門,輕鬆解決迎面難題,避免踩坑!

點擊下載《Knative 雲原生應用開發指南》

file

阿里巴巴雲原生關注微服務、Serverless、容器、Service Mesh 等技術領域、聚焦雲原生流行技術趨勢、雲原生大規模的落地實踐,作最懂雲原生開發者的技術圈。」
相關文章
相關標籤/搜索